SendTaskFailure
Used by activity workers, Task states using the callback
pattern, and optionally Task states using the job run pattern to report that the task identified by the taskToken
failed.
For an execution with encryption enabled, Step Functions will encrypt the error and cause fields using the AWS KMS key for the execution role.
A caller can mark a task as fail without using any AWS KMS permissions in the execution role if the caller provides a null value for both error
and cause
fields because no data needs to be encrypted.
Request Syntax
{
"cause": "string
",
"error": "string
",
"taskToken": "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.
- cause
-
A more detailed explanation of the cause of the failure.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 32768.
Required: No
- error
-
The error code of the failure.
Type: String
Length Constraints: Minimum length of 0. Maximum length of 256.
Required: No
- taskToken
-
The token that represents this task. Task tokens are generated by Step Functions when tasks are assigned to a worker, or in the context object when a workflow enters a task state. See GetActivityTask:taskToken.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 2048.
Required: Yes
Response Elements
If the action is successful, the service sends back an HTTP 200 response with an empty HTTP body.
Errors
For information about the errors that are common to all actions, see Common Errors.
- InvalidToken
-
The provided token 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.
HTTP Status Code: 400
- KmsThrottlingException
-
Received when AWS KMS returns
ThrottlingException
for a AWS KMS call that Step Functions makes on behalf of the caller.HTTP Status Code: 400
- TaskDoesNotExist
-
The activity does not exist.
HTTP Status Code: 400
- TaskTimedOut
-
The task token has either expired or the task associated with the token has already been closed.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: