Manage AWS Batch with Step Functions - AWS Step Functions

Manage AWS Batch with Step Functions

Step Functions can control certain AWS services directly from the Amazon States Language (ASL). For more information about working with AWS Step Functions and its integrations, see the following:

How the Optimized AWS Batch integration is different than the AWS BatchAWS SDK integration

Note that there are no optimizations for the Request Response or Wait for a Callback with the Task Token integration patterns.

Supported AWS Batch APIs:


Parameters in Step Functions are expressed in PascalCase, even if the native service API is in camelCase. For example, you could use the Step Functions API action startSyncExecution and specify its parameter as StateMachineArn.

The following includes a Task state that submits an AWS Batch job and waits for it to complete.

{ "StartAt": "BATCH_JOB", "States": { "BATCH_JOB": { "Type": "Task", "Resource": "arn:aws:states:::batch:submitJob.sync", "Parameters": { "JobDefinition": "preprocessing", "JobName": "PreprocessingBatchJob", "JobQueue": "SecondaryQueue", "Parameters.$": "$.batchjob.parameters", "ContainerOverrides": { "ResourceRequirements": [ { "Type": "VCPU", "Value": "4" } ] } }, "End": true } } }

For information about how to configure IAM permissions when using Step Functions with other AWS services, see IAM Policies for integrated services.