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 51 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

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

BatchExecuteStatement BeginTransaction CommitTransaction CopyObject CreateActivity CreateBucket CreateStateMachine CreateStateMachineAlias DeleteActivity DeleteBucket DeleteObject DeleteStateMachine DeleteStateMachineAlias DeleteStateMachineVersion DescribeActivity DescribeExecution DescribeSecurityGroups DescribeStateMachine DescribeStateMachineAlias DescribeStateMachineForExecution ExecuteStatement GetActivityTask GetBucketVersioning GetExecutionHistory GetObjectTagging HeadBucket HeadObject ListActivities ListBuckets ListExecutions ListObjects ListObjectsV2 ListStateMachineAliases ListStateMachines ListStateMachineVersions ListTagsForResource PublishStateMachineVersion PutObjectTagging RollbackTransaction SendTaskFailure SendTaskHeartbeat SendTaskSuccess StartExecution StartSyncExecution StopExecution TagResource TestState UntagResource UpdateStateMachine UpdateStateMachineAlias 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

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