AWS Step Functions
API Reference (API Version 2016-11-23)

UpdateStateMachine

Updates an existing state machine by modifying its definition and/or roleArn. Running executions will continue to use the previous definition and roleArn. You must include at least one of definition or roleArn or you will receive a MissingRequiredParameter error.

Note

All StartExecution calls within a few seconds will use the updated definition and roleArn. Executions started immediately after calling UpdateStateMachine may use the previous state machine definition and roleArn.

Request Syntax

{ "definition": "string", "roleArn": "string", "stateMachineArn": "string" }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

definition

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 1048576.

Required: No

roleArn

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Required: No

stateMachineArn

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

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Required: Yes

Response Syntax

{ "updateDate": number }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

updateDate

The date and time the state machine was updated.

Type: Timestamp

Errors

For information about the errors that are common to all actions, see Common Errors.

InvalidArn

The provided Amazon Resource Name (ARN) is invalid.

HTTP Status Code: 400

InvalidDefinition

The provided Amazon States Language definition is invalid.

HTTP Status Code: 400

MissingRequiredParameter

Request is missing a required parameter. This error occurs if both definition and roleArn are not specified.

HTTP Status Code: 400

StateMachineDeleting

The specified state machine is being deleted.

HTTP Status Code: 400

StateMachineDoesNotExist

The specified state machine does not exist.

HTTP Status Code: 400

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: