DocsAWS 101BlogServices

Step Functions

State machines with standard + express workflows. Supports Task, Choice, Parallel, Map, Wait, Pass, Succeed, Fail states.

JSON-RPC (X-Amz-Target) multi-tenant 25 operations

Quick start

import boto3, json
sfn = boto3.client("stepfunctions", endpoint_url="http://localhost:4566",
                   region_name="us-east-1",
                   aws_access_key_id="test", aws_secret_access_key="test")
sm = sfn.create_state_machine(Name="demo",
    RoleArn="arn:aws:iam::000000000000:role/r",
    Definition=json.dumps({"StartAt":"Done","States":{"Done":{"Type":"Pass","End":True}}}))
sfn.start_execution(stateMachineArn=sm["stateMachineArn"])

Supported operations

25 operations exposed by this service as of MiniStack 1.3.14. Extracted directly from the handler dispatch in the source module.

CreateActivity CreateStateMachine DeleteActivity DeleteStateMachine DescribeActivity DescribeExecution DescribeStateMachine DescribeStateMachineForExecution GetActivityTask GetExecutionHistory ListActivities ListExecutions ListStateMachines ListTagsForResource SendTaskFailure SendTaskHeartbeat SendTaskSuccess StartExecution StartSyncExecution StopExecution TagResource TestState UntagResource UpdateStateMachine ValidateStateMachineDefinition

CloudFormation

The CloudFormation engine provisions these resource types via this service:

AWS::StepFunctions::StateMachine

See CloudFormation engine for intrinsic support and lifecycle details.

Known limitations

  • loggingConfiguration is stored but not written to CloudWatch Logs.
  • Executions metrics (ExecutionsStarted/Failed/Duration) are not emitted.
  • Use SFN_MOCK_CONFIG to mock Task state responses for Lambda/service calls.

Source

  • ministack/services/stepfunctions.py:223-283

Read the source to verify the ops list above — dispatch tables and handler functions are the ground truth.