Call DynamoDB APIs with Step Functions - Amazon Step Functions
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Call DynamoDB APIs with Step Functions

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


There is a quota for the maximum input or result data size for a task in Step Functions. This restricts you to 262,144 bytes of data as a UTF-8 encoded string when you send to, or receive data from, another service. See Quotas related to state machine executions.

How the optimized DynamoDB integration is different than the DynamoDB Amazon SDK integration

Supported Amazon DynamoDB APIs and syntax:

The following is a Task state that retrieves a message from DynamoDB.

"Read Next Message from DynamoDB": { "Type": "Task", "Resource": "arn:aws:states:::dynamodb:getItem", "Parameters": { "TableName": "TransferDataRecords-DDBTable-3I41R5L5EAGT", "Key": { "MessageId": {"S.$": "$.List[0]"} } }, "ResultPath": "$.DynamoDB", "Next": "Send Message to SQS" },

To see this state in a working example, see the Transfer data records (Lambda, DynamoDB, Amazon SQS) sample project.

For information on how to configure IAM when using Step Functions with other Amazon services, see IAM Policies for integrated services.