AWS Step Functions

2022/12/01 - AWS Step Functions - 3 new 5 updated api methods

Changes  This release adds support for the AWS Step Functions Map state in Distributed mode. The changes include a new MapRun resource and several new and modified APIs.

UpdateMapRun (new) Link ¶

Updates an in-progress Map Run's configuration to include changes to the settings that control maximum concurrency and Map Run failure.

See also: AWS API Documentation

Request Syntax

client.update_map_run(
    mapRunArn='string',
    maxConcurrency=123,
    toleratedFailurePercentage=...,
    toleratedFailureCount=123
)
type mapRunArn

string

param mapRunArn

[REQUIRED]

The Amazon Resource Name (ARN) of a Map Run.

type maxConcurrency

integer

param maxConcurrency

The maximum number of child workflow executions that can be specified to run in parallel for the Map Run at the same time.

type toleratedFailurePercentage

float

param toleratedFailurePercentage

The maximum percentage of failed items before the Map Run fails.

type toleratedFailureCount

integer

param toleratedFailureCount

The maximum number of failed items before the Map Run fails.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

ListMapRuns (new) Link ¶

Lists all Map Runs that were started by a given state machine execution. Use this API action to obtain Map Run ARNs, and then call DescribeMapRun to obtain more information, if needed.

See also: AWS API Documentation

Request Syntax

client.list_map_runs(
    executionArn='string',
    maxResults=123,
    nextToken='string'
)
type executionArn

string

param executionArn

[REQUIRED]

The Amazon Resource Name (ARN) of the execution for which the Map Runs must be listed.

type maxResults

integer

param maxResults

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results. The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

type nextToken

string

param nextToken

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

rtype

dict

returns

Response Syntax

{
    'mapRuns': [
        {
            'executionArn': 'string',
            'mapRunArn': 'string',
            'stateMachineArn': 'string',
            'startDate': datetime(2015, 1, 1),
            'stopDate': datetime(2015, 1, 1)
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • mapRuns (list) --

      An array that lists information related to a Map Run, such as the Amazon Resource Name (ARN) of the Map Run and the ARN of the state machine that started the Map Run.

      • (dict) --

        Contains details about a specific Map Run.

        • executionArn (string) --

          The executionArn of the execution from which the Map Run was started.

        • mapRunArn (string) --

          The Amazon Resource Name (ARN) of the Map Run.

        • stateMachineArn (string) --

          The Amazon Resource Name (ARN) of the executed state machine.

        • startDate (datetime) --

          The date on which the Map Run started.

        • stopDate (datetime) --

          The date on which the Map Run stopped.

    • nextToken (string) --

      If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

DescribeMapRun (new) Link ¶

Provides information about a Map Run's configuration, progress, and results. For more information, see Examining Map Run in the Step Functions Developer Guide .

See also: AWS API Documentation

Request Syntax

client.describe_map_run(
    mapRunArn='string'
)
type mapRunArn

string

param mapRunArn

[REQUIRED]

The Amazon Resource Name (ARN) that identifies a Map Run.

rtype

dict

returns

Response Syntax

{
    'mapRunArn': 'string',
    'executionArn': 'string',
    'status': 'RUNNING'|'SUCCEEDED'|'FAILED'|'ABORTED',
    'startDate': datetime(2015, 1, 1),
    'stopDate': datetime(2015, 1, 1),
    'maxConcurrency': 123,
    'toleratedFailurePercentage': ...,
    'toleratedFailureCount': 123,
    'itemCounts': {
        'pending': 123,
        'running': 123,
        'succeeded': 123,
        'failed': 123,
        'timedOut': 123,
        'aborted': 123,
        'total': 123,
        'resultsWritten': 123
    },
    'executionCounts': {
        'pending': 123,
        'running': 123,
        'succeeded': 123,
        'failed': 123,
        'timedOut': 123,
        'aborted': 123,
        'total': 123,
        'resultsWritten': 123
    }
}

Response Structure

  • (dict) --

    • mapRunArn (string) --

      The Amazon Resource Name (ARN) that identifies a Map Run.

    • executionArn (string) --

      The Amazon Resource Name (ARN) that identifies the execution in which the Map Run was started.

    • status (string) --

      The current status of the Map Run.

    • startDate (datetime) --

      The date when the Map Run was started.

    • stopDate (datetime) --

      The date when the Map Run was stopped.

    • maxConcurrency (integer) --

      The maximum number of child workflow executions configured to run in parallel for the Map Run at the same time.

    • toleratedFailurePercentage (float) --

      The maximum percentage of failed child workflow executions before the Map Run fails.

    • toleratedFailureCount (integer) --

      The maximum number of failed child workflow executions before the Map Run fails.

    • itemCounts (dict) --

      A JSON object that contains information about the total number of items, and the item count for each processing status, such as pending and failed .

      • pending (integer) --

        The total number of items to process in child workflow executions that haven't started running yet.

      • running (integer) --

        The total number of items being processed in child workflow executions that are currently in-progress.

      • succeeded (integer) --

        The total number of items processed in child workflow executions that have completed successfully.

      • failed (integer) --

        The total number of items processed in child workflow executions that have failed.

      • timedOut (integer) --

        The total number of items processed in child workflow executions that have timed out.

      • aborted (integer) --

        The total number of items processed in child workflow executions that were either stopped by the user or by Step Functions, because the Map Run failed.

      • total (integer) --

        The total number of items processed in all the child workflow executions started by a Map Run.

      • resultsWritten (integer) --

        Returns the count of items whose results were written by ResultWriter . For more information, see ResultWriter in the Step Functions Developer Guide .

    • executionCounts (dict) --

      A JSON object that contains information about the total number of child workflow executions for the Map Run, and the count of child workflow executions for each status, such as failed and succeeded .

      • pending (integer) --

        The total number of child workflow executions that were started by a Map Run, but haven't started executing yet.

      • running (integer) --

        The total number of child workflow executions that were started by a Map Run and are currently in-progress.

      • succeeded (integer) --

        The total number of child workflow executions that were started by a Map Run and have completed successfully.

      • failed (integer) --

        The total number of child workflow executions that were started by a Map Run, but have failed.

      • timedOut (integer) --

        The total number of child workflow executions that were started by a Map Run and have timed out.

      • aborted (integer) --

        The total number of child workflow executions that were started by a Map Run and were running, but were either stopped by the user or by Step Functions because the Map Run failed.

      • total (integer) --

        The total number of child workflow executions that were started by a Map Run.

      • resultsWritten (integer) --

        Returns the count of child workflow executions whose results were written by ResultWriter . For more information, see ResultWriter in the Step Functions Developer Guide .

DescribeExecution (updated) Link ¶
Changes (response)
{'cause': 'string', 'error': 'string', 'mapRunArn': 'string'}

Provides all information about a state machine execution, such as the state machine associated with the execution, the execution input and output, and relevant execution metadata. Use this API action to return the Map Run ARN if the execution was dispatched by a Map Run.

Note

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machine executions unless they were dispatched by a Map Run.

See also: AWS API Documentation

Request Syntax

client.describe_execution(
    executionArn='string'
)
type executionArn

string

param executionArn

[REQUIRED]

The Amazon Resource Name (ARN) of the execution to describe.

rtype

dict

returns

Response Syntax

{
    'executionArn': 'string',
    'stateMachineArn': 'string',
    'name': 'string',
    'status': 'RUNNING'|'SUCCEEDED'|'FAILED'|'TIMED_OUT'|'ABORTED',
    'startDate': datetime(2015, 1, 1),
    'stopDate': datetime(2015, 1, 1),
    'input': 'string',
    'inputDetails': {
        'included': True|False
    },
    'output': 'string',
    'outputDetails': {
        'included': True|False
    },
    'traceHeader': 'string',
    'mapRunArn': 'string',
    'error': 'string',
    'cause': 'string'
}

Response Structure

  • (dict) --

    • executionArn (string) --

      The Amazon Resource Name (ARN) that identifies the execution.

    • stateMachineArn (string) --

      The Amazon Resource Name (ARN) of the executed stated machine.

    • name (string) --

      The name of the execution.

      A name must not contain:

      • white space

      • brackets < > { } [ ]

      • wildcard characters ? *

      • special characters " # % \ ^ | ~ ` $ & , ; : /

      • control characters ( U+0000-001F , U+007F-009F )

      To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

    • status (string) --

      The current status of the execution.

    • startDate (datetime) --

      The date the execution is started.

    • stopDate (datetime) --

      If the execution has already ended, the date the execution stopped.

    • input (string) --

      The string that contains the JSON input data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

    • inputDetails (dict) --

      Provides details about execution input or output.

      • included (boolean) --

        Indicates whether input or output was included in the response. Always true for API calls.

    • output (string) --

      The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

      Note

      This field is set only if the execution succeeds. If the execution fails, this field is null.

    • outputDetails (dict) --

      Provides details about execution input or output.

      • included (boolean) --

        Indicates whether input or output was included in the response. Always true for API calls.

    • traceHeader (string) --

      The X-Ray trace header that was passed to the execution.

    • mapRunArn (string) --

      The Amazon Resource Name (ARN) that identifies a Map Run, which dispatched this execution.

    • error (string) --

      The error string if the state machine execution failed.

    • cause (string) --

      The cause string if the state machine execution failed.

DescribeStateMachine (updated) Link ¶
Changes (response)
{'label': 'string'}

Provides information about a state machine's definition, its IAM role Amazon Resource Name (ARN), and configuration. If the state machine ARN is a qualified state machine ARN, the response returned includes the Map state's label.

A qualified state machine ARN refers to a Distributed Map state defined within a state machine. For example, the qualified state machine ARN arn:partition:states:region:account-id:stateMachine:stateMachineName/mapStateLabel refers to a Distributed Map state with a label mapStateLabel in the state machine named stateMachineName .

Note

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

See also: AWS API Documentation

Request Syntax

client.describe_state_machine(
    stateMachineArn='string'
)
type stateMachineArn

string

param stateMachineArn

[REQUIRED]

The Amazon Resource Name (ARN) of the state machine to describe.

rtype

dict

returns

Response Syntax

{
    'stateMachineArn': 'string',
    'name': 'string',
    'status': 'ACTIVE'|'DELETING',
    'definition': 'string',
    'roleArn': 'string',
    'type': 'STANDARD'|'EXPRESS',
    'creationDate': datetime(2015, 1, 1),
    'loggingConfiguration': {
        'level': 'ALL'|'ERROR'|'FATAL'|'OFF',
        'includeExecutionData': True|False,
        'destinations': [
            {
                'cloudWatchLogsLogGroup': {
                    'logGroupArn': 'string'
                }
            },
        ]
    },
    'tracingConfiguration': {
        'enabled': True|False
    },
    'label': 'string'
}

Response Structure

  • (dict) --

    • stateMachineArn (string) --

      The Amazon Resource Name (ARN) that identifies the state machine.

    • name (string) --

      The name of the state machine.

      A name must not contain:

      • white space

      • brackets < > { } [ ]

      • wildcard characters ? *

      • special characters " # % \ ^ | ~ ` $ & , ; : /

      • control characters ( U+0000-001F , U+007F-009F )

      To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

    • status (string) --

      The current status of the state machine.

    • definition (string) --

      The Amazon States Language definition of the state machine. See Amazon States Language.

    • roleArn (string) --

      The Amazon Resource Name (ARN) of the IAM role used when creating this state machine. (The IAM role maintains security by granting Step Functions access to Amazon Web Services resources.)

    • type (string) --

      The type of the state machine ( STANDARD or EXPRESS ).

    • creationDate (datetime) --

      The date the state machine is created.

    • loggingConfiguration (dict) --

      The LoggingConfiguration data type is used to set CloudWatch Logs options.

      • level (string) --

        Defines which category of execution history events are logged.

      • includeExecutionData (boolean) --

        Determines whether execution data is included in your log. When set to false , data is excluded.

      • destinations (list) --

        An array of objects that describes where your execution history events will be logged. Limited to size 1. Required, if your log level is not set to OFF .

        • (dict) --

          • cloudWatchLogsLogGroup (dict) --

            An object describing a CloudWatch log group. For more information, see AWS::Logs::LogGroup in the CloudFormation User Guide.

            • logGroupArn (string) --

              The ARN of the the CloudWatch log group to which you want your logs emitted to. The ARN must end with :*

    • tracingConfiguration (dict) --

      Selects whether X-Ray tracing is enabled.

      • enabled (boolean) --

        When set to true , X-Ray tracing is enabled.

    • label (string) --

      A user-defined or an auto-generated string that identifies a Map state. This parameter is present only if the stateMachineArn specified in input is a qualified state machine ARN.

DescribeStateMachineForExecution (updated) Link ¶
Changes (response)
{'label': 'string', 'mapRunArn': 'string'}

Provides information about a state machine's definition, its execution role ARN, and configuration. If an execution was dispatched by a Map Run, the Map Run is returned in the response. Additionally, the state machine returned will be the state machine associated with the Map Run.

Note

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machines.

See also: AWS API Documentation

Request Syntax

client.describe_state_machine_for_execution(
    executionArn='string'
)
type executionArn

string

param executionArn

[REQUIRED]

The Amazon Resource Name (ARN) of the execution you want state machine information for.

rtype

dict

returns

Response Syntax

{
    'stateMachineArn': 'string',
    'name': 'string',
    'definition': 'string',
    'roleArn': 'string',
    'updateDate': datetime(2015, 1, 1),
    'loggingConfiguration': {
        'level': 'ALL'|'ERROR'|'FATAL'|'OFF',
        'includeExecutionData': True|False,
        'destinations': [
            {
                'cloudWatchLogsLogGroup': {
                    'logGroupArn': 'string'
                }
            },
        ]
    },
    'tracingConfiguration': {
        'enabled': True|False
    },
    'mapRunArn': 'string',
    'label': 'string'
}

Response Structure

  • (dict) --

    • stateMachineArn (string) --

      The Amazon Resource Name (ARN) of the state machine associated with the execution.

    • name (string) --

      The name of the state machine associated with the execution.

    • definition (string) --

      The Amazon States Language definition of the state machine. See Amazon States Language.

    • roleArn (string) --

      The Amazon Resource Name (ARN) of the IAM role of the State Machine for the execution.

    • updateDate (datetime) --

      The date and time the state machine associated with an execution was updated. For a newly created state machine, this is the creation date.

    • loggingConfiguration (dict) --

      The LoggingConfiguration data type is used to set CloudWatch Logs options.

      • level (string) --

        Defines which category of execution history events are logged.

      • includeExecutionData (boolean) --

        Determines whether execution data is included in your log. When set to false , data is excluded.

      • destinations (list) --

        An array of objects that describes where your execution history events will be logged. Limited to size 1. Required, if your log level is not set to OFF .

        • (dict) --

          • cloudWatchLogsLogGroup (dict) --

            An object describing a CloudWatch log group. For more information, see AWS::Logs::LogGroup in the CloudFormation User Guide.

            • logGroupArn (string) --

              The ARN of the the CloudWatch log group to which you want your logs emitted to. The ARN must end with :*

    • tracingConfiguration (dict) --

      Selects whether X-Ray tracing is enabled.

      • enabled (boolean) --

        When set to true , X-Ray tracing is enabled.

    • mapRunArn (string) --

      The Amazon Resource Name (ARN) of the Map Run that started the child workflow execution. This field is returned only if the executionArn is a child workflow execution that was started by a Distributed Map state.

    • label (string) --

      A user-defined or an auto-generated string that identifies a Map state. This field is returned only if the executionArn is a child workflow execution that was started by a Distributed Map state.

GetExecutionHistory (updated) Link ¶
Changes (response)
{'events': {'mapRunFailedEventDetails': {'cause': 'string', 'error': 'string'},
            'mapRunStartedEventDetails': {'mapRunArn': 'string'},
            'type': {'MapRunAborted',
                     'MapRunFailed',
                     'MapRunStarted',
                     'MapRunSucceeded'}}}

Returns the history of the specified execution as a list of events. By default, the results are returned in ascending order of the timeStamp of the events. Use the reverseOrder parameter to get the latest events first.

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

This API action is not supported by EXPRESS state machines.

See also: AWS API Documentation

Request Syntax

client.get_execution_history(
    executionArn='string',
    maxResults=123,
    reverseOrder=True|False,
    nextToken='string',
    includeExecutionData=True|False
)
type executionArn

string

param executionArn

[REQUIRED]

The Amazon Resource Name (ARN) of the execution.

type maxResults

integer

param maxResults

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results. The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

type reverseOrder

boolean

param reverseOrder

Lists events in descending order of their timeStamp .

type nextToken

string

param nextToken

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

type includeExecutionData

boolean

param includeExecutionData

You can select whether execution data (input or output of a history event) is returned. The default is true .

rtype

dict

returns

Response Syntax

{
    'events': [
        {
            'timestamp': datetime(2015, 1, 1),
            'type': 'ActivityFailed'|'ActivityScheduled'|'ActivityScheduleFailed'|'ActivityStarted'|'ActivitySucceeded'|'ActivityTimedOut'|'ChoiceStateEntered'|'ChoiceStateExited'|'ExecutionAborted'|'ExecutionFailed'|'ExecutionStarted'|'ExecutionSucceeded'|'ExecutionTimedOut'|'FailStateEntered'|'LambdaFunctionFailed'|'LambdaFunctionScheduled'|'LambdaFunctionScheduleFailed'|'LambdaFunctionStarted'|'LambdaFunctionStartFailed'|'LambdaFunctionSucceeded'|'LambdaFunctionTimedOut'|'MapIterationAborted'|'MapIterationFailed'|'MapIterationStarted'|'MapIterationSucceeded'|'MapStateAborted'|'MapStateEntered'|'MapStateExited'|'MapStateFailed'|'MapStateStarted'|'MapStateSucceeded'|'ParallelStateAborted'|'ParallelStateEntered'|'ParallelStateExited'|'ParallelStateFailed'|'ParallelStateStarted'|'ParallelStateSucceeded'|'PassStateEntered'|'PassStateExited'|'SucceedStateEntered'|'SucceedStateExited'|'TaskFailed'|'TaskScheduled'|'TaskStarted'|'TaskStartFailed'|'TaskStateAborted'|'TaskStateEntered'|'TaskStateExited'|'TaskSubmitFailed'|'TaskSubmitted'|'TaskSucceeded'|'TaskTimedOut'|'WaitStateAborted'|'WaitStateEntered'|'WaitStateExited'|'MapRunAborted'|'MapRunFailed'|'MapRunStarted'|'MapRunSucceeded',
            'id': 123,
            'previousEventId': 123,
            'activityFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'activityScheduleFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'activityScheduledEventDetails': {
                'resource': 'string',
                'input': 'string',
                'inputDetails': {
                    'truncated': True|False
                },
                'timeoutInSeconds': 123,
                'heartbeatInSeconds': 123
            },
            'activityStartedEventDetails': {
                'workerName': 'string'
            },
            'activitySucceededEventDetails': {
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'activityTimedOutEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'taskFailedEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'error': 'string',
                'cause': 'string'
            },
            'taskScheduledEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'region': 'string',
                'parameters': 'string',
                'timeoutInSeconds': 123,
                'heartbeatInSeconds': 123,
                'taskCredentials': {
                    'roleArn': 'string'
                }
            },
            'taskStartFailedEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'error': 'string',
                'cause': 'string'
            },
            'taskStartedEventDetails': {
                'resourceType': 'string',
                'resource': 'string'
            },
            'taskSubmitFailedEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'error': 'string',
                'cause': 'string'
            },
            'taskSubmittedEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'taskSucceededEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'taskTimedOutEventDetails': {
                'resourceType': 'string',
                'resource': 'string',
                'error': 'string',
                'cause': 'string'
            },
            'executionFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'executionStartedEventDetails': {
                'input': 'string',
                'inputDetails': {
                    'truncated': True|False
                },
                'roleArn': 'string'
            },
            'executionSucceededEventDetails': {
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'executionAbortedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'executionTimedOutEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'mapStateStartedEventDetails': {
                'length': 123
            },
            'mapIterationStartedEventDetails': {
                'name': 'string',
                'index': 123
            },
            'mapIterationSucceededEventDetails': {
                'name': 'string',
                'index': 123
            },
            'mapIterationFailedEventDetails': {
                'name': 'string',
                'index': 123
            },
            'mapIterationAbortedEventDetails': {
                'name': 'string',
                'index': 123
            },
            'lambdaFunctionFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'lambdaFunctionScheduleFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'lambdaFunctionScheduledEventDetails': {
                'resource': 'string',
                'input': 'string',
                'inputDetails': {
                    'truncated': True|False
                },
                'timeoutInSeconds': 123,
                'taskCredentials': {
                    'roleArn': 'string'
                }
            },
            'lambdaFunctionStartFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'lambdaFunctionSucceededEventDetails': {
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'lambdaFunctionTimedOutEventDetails': {
                'error': 'string',
                'cause': 'string'
            },
            'stateEnteredEventDetails': {
                'name': 'string',
                'input': 'string',
                'inputDetails': {
                    'truncated': True|False
                }
            },
            'stateExitedEventDetails': {
                'name': 'string',
                'output': 'string',
                'outputDetails': {
                    'truncated': True|False
                }
            },
            'mapRunStartedEventDetails': {
                'mapRunArn': 'string'
            },
            'mapRunFailedEventDetails': {
                'error': 'string',
                'cause': 'string'
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • events (list) --

      The list of events that occurred in the execution.

      • (dict) --

        Contains details about the events of an execution.

        • timestamp (datetime) --

          The date and time the event occurred.

        • type (string) --

          The type of the event.

        • id (integer) --

          The id of the event. Events are numbered sequentially, starting at one.

        • previousEventId (integer) --

          The id of the previous event.

        • activityFailedEventDetails (dict) --

          Contains details about an activity that failed during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • activityScheduleFailedEventDetails (dict) --

          Contains details about an activity schedule event that failed during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • activityScheduledEventDetails (dict) --

          Contains details about an activity scheduled during an execution.

          • resource (string) --

            The Amazon Resource Name (ARN) of the scheduled activity.

          • input (string) --

            The JSON data input to the activity task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • inputDetails (dict) --

            Contains details about the input for an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

          • timeoutInSeconds (integer) --

            The maximum allowed duration of the activity task.

          • heartbeatInSeconds (integer) --

            The maximum allowed duration between two heartbeats for the activity task.

        • activityStartedEventDetails (dict) --

          Contains details about the start of an activity during an execution.

          • workerName (string) --

            The name of the worker that the task is assigned to. These names are provided by the workers when calling GetActivityTask.

        • activitySucceededEventDetails (dict) --

          Contains details about an activity that successfully terminated during an execution.

          • output (string) --

            The JSON data output by the activity task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • activityTimedOutEventDetails (dict) --

          Contains details about an activity timeout that occurred during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the timeout.

        • taskFailedEventDetails (dict) --

          Contains details about the failure of a task.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • taskScheduledEventDetails (dict) --

          Contains details about a task that was scheduled.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • region (string) --

            The region of the scheduled task

          • parameters (string) --

            The JSON data passed to the resource referenced in a task state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • timeoutInSeconds (integer) --

            The maximum allowed duration of the task.

          • heartbeatInSeconds (integer) --

            The maximum allowed duration between two heartbeats for the task.

          • taskCredentials (dict) --

            The credentials that Step Functions uses for the task.

            • roleArn (string) --

              The ARN of an IAM role that Step Functions assumes for the task. The role can allow cross-account access to resources.

        • taskStartFailedEventDetails (dict) --

          Contains details about a task that failed to start.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • taskStartedEventDetails (dict) --

          Contains details about a task that was started.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

        • taskSubmitFailedEventDetails (dict) --

          Contains details about a task that where the submit failed.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • taskSubmittedEventDetails (dict) --

          Contains details about a submitted task.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • output (string) --

            The response from a resource when a task has started. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • taskSucceededEventDetails (dict) --

          Contains details about a task that succeeded.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • output (string) --

            The full JSON response from a resource when a task has succeeded. This response becomes the output of the related task. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • taskTimedOutEventDetails (dict) --

          Contains details about a task that timed out.

          • resourceType (string) --

            The service name of the resource in a task state.

          • resource (string) --

            The action of the resource called by a task state.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • executionFailedEventDetails (dict) --

          Contains details about an execution failure event.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • executionStartedEventDetails (dict) --

          Contains details about the start of the execution.

          • input (string) --

            The JSON data input to the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • inputDetails (dict) --

            Contains details about the input for an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

          • roleArn (string) --

            The Amazon Resource Name (ARN) of the IAM role used for executing Lambda tasks.

        • executionSucceededEventDetails (dict) --

          Contains details about the successful termination of the execution.

          • output (string) --

            The JSON data output by the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • executionAbortedEventDetails (dict) --

          Contains details about an abort of an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • executionTimedOutEventDetails (dict) --

          Contains details about the execution timeout that occurred during the execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the timeout.

        • mapStateStartedEventDetails (dict) --

          Contains details about Map state that was started.

          • length (integer) --

            The size of the array for Map state iterations.

        • mapIterationStartedEventDetails (dict) --

          Contains details about an iteration of a Map state that was started.

          • name (string) --

            The name of the iteration’s parent Map state.

          • index (integer) --

            The index of the array belonging to the Map state iteration.

        • mapIterationSucceededEventDetails (dict) --

          Contains details about an iteration of a Map state that succeeded.

          • name (string) --

            The name of the iteration’s parent Map state.

          • index (integer) --

            The index of the array belonging to the Map state iteration.

        • mapIterationFailedEventDetails (dict) --

          Contains details about an iteration of a Map state that failed.

          • name (string) --

            The name of the iteration’s parent Map state.

          • index (integer) --

            The index of the array belonging to the Map state iteration.

        • mapIterationAbortedEventDetails (dict) --

          Contains details about an iteration of a Map state that was aborted.

          • name (string) --

            The name of the iteration’s parent Map state.

          • index (integer) --

            The index of the array belonging to the Map state iteration.

        • lambdaFunctionFailedEventDetails (dict) --

          Contains details about a Lambda function that failed during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • lambdaFunctionScheduleFailedEventDetails (dict) --

          Contains details about a failed Lambda function schedule event that occurred during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • lambdaFunctionScheduledEventDetails (dict) --

          Contains details about a Lambda function scheduled during an execution.

          • resource (string) --

            The Amazon Resource Name (ARN) of the scheduled Lambda function.

          • input (string) --

            The JSON data input to the Lambda function. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • inputDetails (dict) --

            Contains details about input for an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

          • timeoutInSeconds (integer) --

            The maximum allowed duration of the Lambda function.

          • taskCredentials (dict) --

            The credentials that Step Functions uses for the task.

            • roleArn (string) --

              The ARN of an IAM role that Step Functions assumes for the task. The role can allow cross-account access to resources.

        • lambdaFunctionStartFailedEventDetails (dict) --

          Contains details about a lambda function that failed to start during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

        • lambdaFunctionSucceededEventDetails (dict) --

          Contains details about a Lambda function that terminated successfully during an execution.

          • output (string) --

            The JSON data output by the Lambda function. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • lambdaFunctionTimedOutEventDetails (dict) --

          Contains details about a Lambda function timeout that occurred during an execution.

          • error (string) --

            The error code of the failure.

          • cause (string) --

            A more detailed explanation of the cause of the timeout.

        • stateEnteredEventDetails (dict) --

          Contains details about a state entered during an execution.

          • name (string) --

            The name of the state.

          • input (string) --

            The string that contains the JSON input data for the state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • inputDetails (dict) --

            Contains details about the input for an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • stateExitedEventDetails (dict) --

          Contains details about an exit from a state during an execution.

          • name (string) --

            The name of the state.

            A name must not contain:

            • white space

            • brackets < > { } [ ]

            • wildcard characters ? *

            • special characters " # % \ ^ | ~ ` $ & , ; : /

            • control characters ( U+0000-001F , U+007F-009F )

            To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

          • output (string) --

            The JSON output data of the state. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding.

          • outputDetails (dict) --

            Contains details about the output of an execution history event.

            • truncated (boolean) --

              Indicates whether input or output was truncated in the response. Always false for API calls.

        • mapRunStartedEventDetails (dict) --

          Contains details, such as mapRunArn , and the start date and time of a Map Run. mapRunArn is the Amazon Resource Name (ARN) of the Map Run that was started.

          • mapRunArn (string) --

            The Amazon Resource Name (ARN) of a Map Run that was started.

        • mapRunFailedEventDetails (dict) --

          Contains error and cause details about a Map Run that failed.

          • error (string) --

            The error code of the Map Run failure.

          • cause (string) --

            A more detailed explanation of the cause of the failure.

    • nextToken (string) --

      If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

ListExecutions (updated) Link ¶
Changes (request, response)
Request
{'mapRunArn': 'string'}
Response
{'executions': {'itemCount': 'integer', 'mapRunArn': 'string'}}

Lists all executions of a state machine or a Map Run. You can list all executions related to a state machine by specifying a state machine Amazon Resource Name (ARN), or those related to a Map Run by specifying a Map Run ARN.

Results are sorted by time, with the most recent execution first.

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

Note

This operation is eventually consistent. The results are best effort and may not reflect very recent updates and changes.

This API action is not supported by EXPRESS state machines.

See also: AWS API Documentation

Request Syntax

client.list_executions(
    stateMachineArn='string',
    statusFilter='RUNNING'|'SUCCEEDED'|'FAILED'|'TIMED_OUT'|'ABORTED',
    maxResults=123,
    nextToken='string',
    mapRunArn='string'
)
type stateMachineArn

string

param stateMachineArn

The Amazon Resource Name (ARN) of the state machine whose executions is listed.

You can specify either a mapRunArn or a stateMachineArn , but not both.

type statusFilter

string

param statusFilter

If specified, only list the executions whose current execution status matches the given filter.

type maxResults

integer

param maxResults

The maximum number of results that are returned per call. You can use nextToken to obtain further pages of results. The default is 100 and the maximum allowed page size is 1000. A value of 0 uses the default.

This is only an upper limit. The actual number of results returned per call might be fewer than the specified maximum.

type nextToken

string

param nextToken

If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.

type mapRunArn

string

param mapRunArn

The Amazon Resource Name (ARN) of the Map Run that started the child workflow executions. If the mapRunArn field is specified, a list of all of the child workflow executions started by a Map Run is returned. For more information, see Examining Map Run in the Step Functions Developer Guide .

You can specify either a mapRunArn or a stateMachineArn , but not both.

rtype

dict

returns

Response Syntax

{
    'executions': [
        {
            'executionArn': 'string',
            'stateMachineArn': 'string',
            'name': 'string',
            'status': 'RUNNING'|'SUCCEEDED'|'FAILED'|'TIMED_OUT'|'ABORTED',
            'startDate': datetime(2015, 1, 1),
            'stopDate': datetime(2015, 1, 1),
            'mapRunArn': 'string',
            'itemCount': 123
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • executions (list) --

      The list of matching executions.

      • (dict) --

        Contains details about an execution.

        • executionArn (string) --

          The Amazon Resource Name (ARN) that identifies the execution.

        • stateMachineArn (string) --

          The Amazon Resource Name (ARN) of the executed state machine.

        • name (string) --

          The name of the execution.

          A name must not contain:

          • white space

          • brackets < > { } [ ]

          • wildcard characters ? *

          • special characters " # % \ ^ | ~ ` $ & , ; : /

          • control characters ( U+0000-001F , U+007F-009F )

          To enable logging with CloudWatch Logs, the name should only contain 0-9, A-Z, a-z, - and _.

        • status (string) --

          The current status of the execution.

        • startDate (datetime) --

          The date the execution started.

        • stopDate (datetime) --

          If the execution already ended, the date the execution stopped.

        • mapRunArn (string) --

          The Amazon Resource Name (ARN) of a Map Run. This field is returned only if mapRunArn was specified in the ListExecutions API action. If stateMachineArn was specified in ListExecutions , the mapRunArn isn't returned.

        • itemCount (integer) --

          The total number of items processed in a child workflow execution. This field is returned only if mapRunArn was specified in the ListExecutions API action. If stateMachineArn was specified in ListExecutions , the itemCount field isn't returned.

    • nextToken (string) --

      If nextToken is returned, there are more results available. The value of nextToken is a unique pagination token for each page. Make the call again using the returned token to retrieve the next page. Keep all other arguments unchanged. Each pagination token expires after 24 hours. Using an expired pagination token will return an HTTP 400 InvalidToken error.