listJobs method
Returns a list of Batch jobs.
You must specify only one of the following items:
- A job queue ID to return a list of jobs in that job queue
- A multi-node parallel job ID to return a list of nodes for that job
- An array job ID to return a list of the children for that job
May throw ClientException.
May throw ServerException.
Parameter arrayJobId :
The job ID for an array job. Specifying an array job ID with this
parameter lists all child jobs from within the specified array.
Parameter filters :
The filter to apply to the query. Only one filter can be used at a time.
When the filter is used, jobStatus is ignored with the
exception that SHARE_IDENTIFIER and jobStatus
can be used together. The filter doesn't apply to child jobs in an array
or multi-node parallel (MNP) jobs. The results are sorted by the
createdAt field, with the most recent jobs being first.
- JOB_NAME
-
The value of the filter is a case-insensitive match for the job name. If
the value ends with an asterisk (), the filter matches any job name that
begins with the string before the ''. This corresponds to the
jobNamevalue. For example,test1matches bothTest1andtest1, andtest1*matches bothtest1andTest10. When theJOB_NAMEfilter is used, the results are grouped by the job name and version. - JOB_DEFINITION
-
The value for the filter is the name or Amazon Resource Name (ARN) of the
job definition. This corresponds to the
jobDefinitionvalue. The value is case sensitive. When the value for the filter is the job definition name, the results include all the jobs that used any revision of that job definition name. If the value ends with an asterisk (*), the filter matches any job definition name that begins with the string before the '*'. For example,jd1matches onlyjd1, andjd1*matches bothjd1andjd1A. The version of the job definition that's used doesn't affect the sort order. When theJOB_DEFINITIONfilter is used and the ARN is used (which is in the formarn:${Partition}:batch:${Region}:${Account}:job-definition/${JobDefinitionName}:${Revision}), the results include jobs that used the specified revision of the job definition. Asterisk (*) isn't supported when the ARN is used. - BEFORE_CREATED_AT
-
The value for the filter is the time that's before the job was created.
This corresponds to the
createdAtvalue. The value is a string representation of the number of milliseconds since 00:00:00 UTC (midnight) on January 1, 1970. - AFTER_CREATED_AT
-
The value for the filter is the time that's after the job was created.
This corresponds to the
createdAtvalue. The value is a string representation of the number of milliseconds since 00:00:00 UTC (midnight) on January 1, 1970. - SHARE_IDENTIFIER
- The value for the filter is the fairshare scheduling share identifier.
Parameter jobQueue :
The name or full Amazon Resource Name (ARN) of the job queue used to list
jobs.
Parameter jobStatus :
The job status used to filter jobs in the specified queue. If the
filters parameter is specified, the jobStatus
parameter is ignored and jobs with any status are returned. The exception
is the SHARE_IDENTIFIER filter and jobStatus can
be used together. If you don't specify a status, only RUNNING
jobs are returned.
Parameter maxResults :
The maximum number of results returned by ListJobs in a
paginated output. When this parameter is used, ListJobs
returns up to maxResults results in a single page and a
nextToken response element, if applicable. The remaining
results of the initial request can be seen by sending another
ListJobs request with the returned nextToken
value.
The following outlines key parameters and limitations:
- The minimum value is 1.
-
When
--job-statusis used, Batch returns up to 1000 values. -
When
--filtersis used, Batch returns up to 100 values. -
If neither parameter is used, then
ListJobsreturns up to 1000 results (jobs that are in theRUNNINGstatus) and anextTokenvalue, if applicable.
Parameter multiNodeJobId :
The job ID for a multi-node parallel job. Specifying a multi-node parallel
job ID with this parameter lists all nodes that are associated with the
specified job.
Parameter nextToken :
The nextToken value returned from a previous paginated
ListJobs request where maxResults was used and
the results exceeded the value of that parameter. Pagination continues
from the end of the previous results that returned the
nextToken value. This value is null when there
are no more results to return.
Implementation
Future<ListJobsResponse> listJobs({
String? arrayJobId,
List<KeyValuesPair>? filters,
String? jobQueue,
JobStatus? jobStatus,
int? maxResults,
String? multiNodeJobId,
String? nextToken,
}) async {
final $payload = <String, dynamic>{
if (arrayJobId != null) 'arrayJobId': arrayJobId,
if (filters != null) 'filters': filters,
if (jobQueue != null) 'jobQueue': jobQueue,
if (jobStatus != null) 'jobStatus': jobStatus.value,
if (maxResults != null) 'maxResults': maxResults,
if (multiNodeJobId != null) 'multiNodeJobId': multiNodeJobId,
if (nextToken != null) 'nextToken': nextToken,
};
final response = await _protocol.send(
payload: $payload,
method: 'POST',
requestUri: '/v1/listjobs',
exceptionFnMap: _exceptionFns,
);
return ListJobsResponse.fromJson(response);
}