listTasks method

Future<ListTasksResponse> listTasks({
  1. String? cluster,
  2. String? containerInstance,
  3. String? daemonName,
  4. DesiredStatus? desiredStatus,
  5. String? family,
  6. LaunchType? launchType,
  7. int? maxResults,
  8. String? nextToken,
  9. String? serviceName,
  10. String? startedBy,
})

Returns a list of tasks. You can filter the results by cluster, task definition family, container instance, launch type, what IAM principal started the task, or by the desired status of the task.

Recently stopped tasks might appear in the returned results.

May throw AccessDeniedException. May throw ClientException. May throw ClusterNotFoundException. May throw InvalidParameterException. May throw ServerException. May throw ServiceNotFoundException.

Parameter cluster : The short name or full Amazon Resource Name (ARN) of the cluster to use when filtering the ListTasks results. If you do not specify a cluster, the default cluster is assumed.

Parameter containerInstance : The container instance ID or full ARN of the container instance to use when filtering the ListTasks results. Specifying a containerInstance limits the results to tasks that belong to that container instance.

Parameter daemonName : The name of the daemon to use when filtering the ListTasks results. Specifying a daemonName limits the results to tasks that belong to that daemon.

Parameter desiredStatus : The task desired status to use when filtering the ListTasks results. Specifying a desiredStatus of STOPPED limits the results to tasks that Amazon ECS has set the desired status to STOPPED. This can be useful for debugging tasks that aren't starting properly or have died or finished. The default status filter is RUNNING, which shows tasks that Amazon ECS has set the desired status to RUNNING.

Parameter family : The name of the task definition family to use when filtering the ListTasks results. Specifying a family limits the results to tasks that belong to that family.

Parameter launchType : The launch type to use when filtering the ListTasks results.

Parameter maxResults : The maximum number of task results that ListTasks returned in paginated output. When this parameter is used, ListTasks only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListTasks request with the returned nextToken value. This value can be between 1 and 100. If this parameter isn't used, then ListTasks returns up to 100 results and a nextToken value if applicable.

Parameter nextToken : The nextToken value returned from a ListTasks request indicating that more results are available to fulfill the request and further calls will be needed. If maxResults was provided, it's possible the number of results to be fewer than maxResults.

Parameter serviceName : The name of the service to use when filtering the ListTasks results. Specifying a serviceName limits the results to tasks that belong to that service.

Parameter startedBy : The startedBy value to filter the task results with. Specifying a startedBy value limits the results to tasks that were started with that value.

When you specify startedBy as the filter, it must be the only filter that you use.

Implementation

Future<ListTasksResponse> listTasks({
  String? cluster,
  String? containerInstance,
  String? daemonName,
  DesiredStatus? desiredStatus,
  String? family,
  LaunchType? launchType,
  int? maxResults,
  String? nextToken,
  String? serviceName,
  String? startedBy,
}) async {
  final headers = <String, String>{
    'Content-Type': 'application/x-amz-json-1.1',
    'X-Amz-Target': 'AmazonEC2ContainerServiceV20141113.ListTasks'
  };
  final jsonResponse = await _protocol.send(
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    // TODO queryParams
    headers: headers,
    payload: {
      if (cluster != null) 'cluster': cluster,
      if (containerInstance != null) 'containerInstance': containerInstance,
      if (daemonName != null) 'daemonName': daemonName,
      if (desiredStatus != null) 'desiredStatus': desiredStatus.value,
      if (family != null) 'family': family,
      if (launchType != null) 'launchType': launchType.value,
      if (maxResults != null) 'maxResults': maxResults,
      if (nextToken != null) 'nextToken': nextToken,
      if (serviceName != null) 'serviceName': serviceName,
      if (startedBy != null) 'startedBy': startedBy,
    },
  );

  return ListTasksResponse.fromJson(jsonResponse.body);
}