GetChannelMessageStatus - Amazon Chime SDK

GetChannelMessageStatus

Gets message status for a specified messageId. Use this API to determine the intermediate status of messages going through channel flow processing. The API provides an alternative to retrieving message status if the event was not received because a client wasn't connected to a websocket.

Messages can have any one of these statuses.

SENT

Message processed successfully

PENDING

Ongoing processing

FAILED

Processing failed

DENIED

Message denied by the processor

Note
  • This API does not return statuses for denied messages, because we don't store them once the processor denies them.

  • Only the message sender can invoke this API.

  • The x-amz-chime-bearer request header is mandatory. Use the ARN of the AppInstanceUser or AppInstanceBot that makes the API call as the value in the header.

Request Syntax

GET /channels/channelArn/messages/{messageId}?scope=message-status&sub-channel-id=SubChannelId HTTP/1.1 x-amz-chime-bearer: ChimeBearer

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

ChimeBearer

The AppInstanceUserArn of the user making the API call.

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

messageId

The ID of the message.

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

Pattern: [-_a-zA-Z0-9]*

Required: Yes

SubChannelId

The ID of the SubChannel in the request.

Note

Only required when getting message status in a SubChannel that the user belongs to.

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

Pattern: [-_a-zA-Z0-9]*

Request Body

The request does not have a request body.

Response Syntax

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

Status

The message status and details.

Type: ChannelMessageStatusStructure object

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

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: