ChannelFlowCallback - Amazon Chime SDK

ChannelFlowCallback

Calls back Amazon Chime SDK messaging with a processing response message. This should be invoked from the processor Lambda. This is a developer API.

You can return one of the following processing responses:

  • Update message content or metadata

  • Deny a message

  • Make no changes to the message

Request Syntax

POST /channels/{channelArn}?operation=channel-flow-callback HTTP/1.1 Content-type: application/json { "CallbackId": "string", "ChannelMessage": { "Content": "string", "ContentType": "string", "MessageAttributes": { "string" : { "StringValues": [ "string" ] } }, "MessageId": "string", "Metadata": "string", "PushNotification": { "Body": "string", "Title": "string", "Type": "string" }, "SubChannelId": "string" }, "DeleteResource": boolean }

URI Request Parameters

The request uses the following URI parameters.

channelArn

The ARN of the channel.

Length Constraints: Minimum length of 5. Maximum length of 1600.

Pattern: arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}

Required: Yes

Request Body

The request accepts the following data in JSON format.

CallbackId

The identifier passed to the processor by the service when invoked. Use the identifier to call back the service.

Type: String

Length Constraints: Minimum length of 32. Maximum length of 64.

Required: Yes

ChannelMessage

Stores information about the processed message.

Type: ChannelMessageCallback object

Required: Yes

DeleteResource

When a processor determines that a message needs to be DENIED, pass this parameter with a value of true.

Type: Boolean

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "CallbackId": "string", "ChannelArn": "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.

CallbackId

The call back ID passed in the request.

Type: String

Length Constraints: Minimum length of 32. Maximum length of 64.

ChannelArn

The ARN of the channel.

Type: String

Length Constraints: Minimum length of 5. Maximum length of 1600.

Pattern: arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}

Errors

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

BadRequestException

The input parameters don't match the service's restrictions.

HTTP Status Code: 400

ConflictException

The request could not be processed because of conflict in the current state of the resource.

HTTP Status Code: 409

ForbiddenException

The client is permanently forbidden from making the request.

HTTP Status Code: 403

ServiceFailureException

The service encountered an unexpected error.

HTTP Status Code: 500

ServiceUnavailableException

The service is currently unavailable.

HTTP Status Code: 503

ThrottledClientException

The client exceeded its request rate limit.

HTTP Status Code: 429

UnauthorizedClientException

The client is not currently authorized to make the request.

HTTP Status Code: 401

See Also

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