StartSyncExecution
Starts a Synchronous Express state machine execution. StartSyncExecution 
			  is not available for STANDARD workflows.
Note
         StartSyncExecution will return a 200 OK response, even if your
        execution fails, because the status code in the API response doesn't reflect function
        errors. Error codes are reserved for errors that prevent your execution from running, such
        as permissions errors, limit errors, or issues with your state machine code and
        configuration. 
Note
This API action isn't logged in CloudTrail.
Request Syntax
{
   "includedData": "string",
   "input": "string",
   "name": "string",
   "stateMachineArn": "string",
   "traceHeader": "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.
- includedData
- 
               If your state machine definition is encrypted with a AWS KMS key, callers must have kms:Decryptpermission to decrypt the definition. Alternatively, you can call the API withincludedData = METADATA_ONLYto get a successful response without the encrypted definition.Type: String Valid Values: ALL_DATA | METADATA_ONLYRequired: No 
- input
- 
               The string that contains the JSON input data for the execution, for example: "{\"first_name\" : \"Alejandro\"}"NoteIf you don't include any JSON input data, you still must include the two braces, for example: "{}"Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding. Type: String Length Constraints: Maximum length of 262144. Required: No 
- name
- 
               The name of the execution. Type: String Length Constraints: Minimum length of 1. Maximum length of 80. Required: No 
- stateMachineArn
- 
               The Amazon Resource Name (ARN) of the state machine to execute. Type: String Length Constraints: Minimum length of 1. Maximum length of 256. Required: Yes 
- traceHeader
- 
               Passes the AWS X-Ray trace header. The trace header can also be passed in the request payload. NoteFor X-Ray traces, all AWS services use the X-Amzn-Trace-Idheader from the HTTP request. Using the header is the preferred mechanism to identify a trace.StartExecutionandStartSyncExecutionAPI operations can also usetraceHeaderfrom the body of the request payload. If both sources are provided, Step Functions will use the header value (preferred) over the value in the request body.Type: String Length Constraints: Minimum length of 0. Maximum length of 256. Pattern: \p{ASCII}*Required: No 
Response Syntax
{
   "billingDetails": { 
      "billedDurationInMilliseconds": number,
      "billedMemoryUsedInMB": number
   },
   "cause": "string",
   "error": "string",
   "executionArn": "string",
   "input": "string",
   "inputDetails": { 
      "included": boolean
   },
   "name": "string",
   "output": "string",
   "outputDetails": { 
      "included": boolean
   },
   "startDate": number,
   "stateMachineArn": "string",
   "status": "string",
   "stopDate": number,
   "traceHeader": "string"
}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.
- billingDetails
- 
               An object that describes workflow billing details, including billed duration and memory use. Type: BillingDetails object 
- cause
- 
               A more detailed explanation of the cause of the failure. Type: String Length Constraints: Minimum length of 0. Maximum length of 32768. 
- error
- 
               The error code of the failure. Type: String Length Constraints: Minimum length of 0. Maximum length of 256. 
- executionArn
- 
               The Amazon Resource Name (ARN) that identifies the execution. Type: String Length Constraints: Minimum length of 1. Maximum length of 256. 
- input
- 
               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. Type: String Length Constraints: Maximum length of 262144. 
- inputDetails
- 
               Provides details about execution input or output. Type: CloudWatchEventsExecutionDataDetails object 
- name
- 
               The name of the execution. Type: String Length Constraints: Minimum length of 1. Maximum length of 80. 
- output
- 
               The JSON output data of the execution. Length constraints apply to the payload size, and are expressed as bytes in UTF-8 encoding. NoteThis field is set only if the execution succeeds. If the execution fails, this field is null. Type: String Length Constraints: Maximum length of 262144. 
- outputDetails
- 
               Provides details about execution input or output. Type: CloudWatchEventsExecutionDataDetails object 
- startDate
- 
               The date the execution is started. Type: Timestamp 
- stateMachineArn
- 
               The Amazon Resource Name (ARN) that identifies the state machine. Type: String Length Constraints: Minimum length of 1. Maximum length of 256. 
- status
- 
               The current status of the execution. Type: String Valid Values: SUCCEEDED | FAILED | TIMED_OUT
- stopDate
- 
               If the execution has already ended, the date the execution stopped. Type: Timestamp 
- traceHeader
- 
               The AWS X-Ray trace header that was passed to the execution. NoteFor X-Ray traces, all AWS services use the X-Amzn-Trace-Idheader from the HTTP request. Using the header is the preferred mechanism to identify a trace.StartExecutionandStartSyncExecutionAPI operations can also usetraceHeaderfrom the body of the request payload. If both sources are provided, Step Functions will use the header value (preferred) over the value in the request body.Type: String Length Constraints: Minimum length of 0. Maximum length of 256. Pattern: \p{ASCII}*
Errors
For information about the errors that are common to all actions, see Common Errors.
- InvalidArn
- 
               The provided Amazon Resource Name (ARN) is not valid. HTTP Status Code: 400 
- InvalidExecutionInput
- 
               The provided JSON input data is not valid. HTTP Status Code: 400 
- InvalidName
- 
               The provided name is not valid. HTTP Status Code: 400 
- KmsAccessDeniedException
- 
               Either your AWS KMS key policy or API caller does not have the required permissions. HTTP Status Code: 400 
- KmsInvalidStateException
- 
               The AWS KMS key is not in valid state, for example: Disabled or Deleted. - kmsKeyState
- 
                        Current status of the AWS KMS; key. For example: DISABLED,PENDING_DELETION,PENDING_IMPORT,UNAVAILABLE,CREATING.
 HTTP Status Code: 400 
- KmsThrottlingException
- 
               Received when AWS KMS returns ThrottlingExceptionfor a AWS KMS call that Step Functions makes on behalf of the caller.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 
- StateMachineTypeNotSupported
- 
               State machine type is not supported. HTTP Status Code: 400 
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: