AWS Step Functions is a fully managed serverless orchestration service that lets you coordinate distributed applications and microservices using visual state machine workflows defined in the Amazon States Language (ASL). It eliminates the need to write custom coordination code for retry logic, error handling, and parallel execution. The critical mental model to grasp early: Step Functions bills Standard Workflows per state transition (not per execution), so workflow design choices β whether to use Express vs. Standard, polling vs. callbacks, or nested child executions β directly shape your monthly cost.
What This Cheat Sheet Covers
This topic spans 17 focused tables and 165 indexed concepts. Below is a complete table-by-table outline of this topic, spanning foundational concepts through advanced details.
Table 1: State Machine Core Concepts
The foundational vocabulary of Step Functions is built around state machines, states, and executions. Understanding how executions flow, how input and output travel between states, and what the Amazon States Language (ASL) requires gives you the frame to read and write any workflow definition.
| Concept | Example | Description |
|---|---|---|
{"StartAt": "Hello", "States": {...}} | A JSON (ASL) definition of a workflow β a collection of named states that chain together via Next or End: true. | |
"MyState": {"Type": "Task", ...} | A single step in a workflow; each state has a Type and optionally Next or End: true. State names must be unique within the machine. | |
aws stepfunctions start-execution --state-machine-arn ... | A single run of a state machine with a specific input. Standard executions retain history for 90 days. | |
{"Comment": "...", "StartAt": "S1", "States": {...}} | The JSON specification used to define state machines. Files must be saved with .asl.json extension outside the console. | |
"StartAt": "FirstState" | Required top-level field; names the first state to run. Case-sensitive and must match a state name exactly. | |
"Next": "ProcessData" | Directs execution to the named next state after this state completes; required unless End: true. |