openapi: 3.1.0 info: title: Amazon SQS Amazon Simple Queue Service (SQS) Messages API description: 'Amazon Simple Queue Service (SQS) is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications. SQS eliminates the complexity and overhead associated with managing and operating message-oriented middleware, and empowers developers to focus on differentiating work. Using SQS, you can send, store, and receive messages between software components at any volume, without losing messages or requiring other services to be available. SQS offers two types of message queues: Standard queues offer maximum throughput, best-effort ordering, and at-least-once delivery. FIFO queues are designed to guarantee that messages are processed exactly once, in the exact order that they are sent.' version: '2012-11-05' contact: name: AWS Support url: https://aws.amazon.com/contact-us/ license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 x-logo: url: https://a0.awsstatic.com/libra-css/images/logos/aws_logo_smile_1200x630.png servers: - url: https://sqs.{region}.amazonaws.com description: Amazon SQS Regional Endpoint variables: region: default: us-east-1 description: The AWS region enum: - us-east-1 - us-east-2 - us-west-1 - us-west-2 - af-south-1 - ap-east-1 - ap-south-1 - ap-south-2 - ap-southeast-1 - ap-southeast-2 - ap-southeast-3 - ap-northeast-1 - ap-northeast-2 - ap-northeast-3 - ca-central-1 - eu-central-1 - eu-central-2 - eu-west-1 - eu-west-2 - eu-west-3 - eu-south-1 - eu-south-2 - eu-north-1 - me-south-1 - me-central-1 - sa-east-1 security: - aws_sig_v4: [] tags: - name: Messages description: Operations for sending, receiving, and deleting messages in SQS queues paths: /{accountId}/{queueName}: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' get: operationId: ReceiveMessage summary: Amazon Sqs Receive Messages From a Queue description: Retrieves one or more messages (up to 10) from the specified queue. Using the WaitTimeSeconds parameter enables long-poll support. Short poll is the default behavior where a weighted random set of machines is sampled on a ReceiveMessage call. Long polling reduces the number of empty responses and false empty responses. tags: - Messages parameters: - name: Action in: query required: true schema: type: string enum: - ReceiveMessage - name: MaxNumberOfMessages in: query description: The maximum number of messages to return. Amazon SQS never returns more messages than this value. Valid values are 1 to 10. Default is 1. schema: type: integer minimum: 1 maximum: 10 default: 1 - name: VisibilityTimeout in: query description: The duration (in seconds) that the received messages are hidden from subsequent retrieve requests after being retrieved by a ReceiveMessage request. schema: type: integer minimum: 0 maximum: 43200 - name: WaitTimeSeconds in: query description: The duration (in seconds) for which the call waits for a message to arrive in the queue before returning. If a message is available, the call returns sooner than WaitTimeSeconds. schema: type: integer minimum: 0 maximum: 20 - name: AttributeName.1 in: query description: A list of attributes that need to be returned along with each message. schema: type: string enum: - All - SenderId - SentTimestamp - ApproximateReceiveCount - ApproximateFirstReceiveTimestamp - SequenceNumber - MessageDeduplicationId - MessageGroupId - name: MessageAttributeName.1 in: query description: The name of the message attribute to include. Use All or .* to return all message attributes. schema: type: string - name: MessageSystemAttributeName.1 in: query description: The name of the message system attribute to include. schema: type: string enum: - All - SenderId - SentTimestamp - ApproximateReceiveCount - ApproximateFirstReceiveTimestamp - SequenceNumber - MessageDeduplicationId - MessageGroupId - AWSTraceHeader - name: ReceiveRequestAttemptId in: query description: Used for FIFO queues. The token used for deduplication of ReceiveMessage calls. schema: type: string responses: '200': description: Messages retrieved successfully content: application/xml: schema: $ref: '#/components/schemas/ReceiveMessageResponse' application/json: schema: $ref: '#/components/schemas/ReceiveMessageResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: operationId: SendMessage summary: Amazon Sqs Send a Message to a Queue description: Delivers a message to the specified queue. A message can include only XML, JSON, and unformatted text. The following Unicode characters are allowed. The maximum message size is 256 KiB. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - MessageBody properties: Action: type: string enum: - SendMessage MessageBody: type: string description: The message to send. The minimum size is one character. The maximum size is 256 KiB. maxLength: 262144 DelaySeconds: type: integer description: The length of time, in seconds, for which to delay a specific message. Valid values are 0 to 900. minimum: 0 maximum: 900 MessageAttribute.1.Name: type: string description: The name of the first message attribute MessageAttribute.1.Value.StringValue: type: string description: The string value of the first message attribute MessageAttribute.1.Value.DataType: type: string description: The data type of the first message attribute (String, Number, or Binary) MessageDeduplicationId: type: string description: The token used for deduplication of sent messages. Required for FIFO queues. Each message must have a unique MessageDeduplicationId. MessageGroupId: type: string description: The tag that specifies that a message belongs to a specific message group. Required for FIFO queues. MessageSystemAttribute.1.Name: type: string description: The name of a system message attribute enum: - AWSTraceHeader MessageSystemAttribute.1.Value.StringValue: type: string description: The string value of a system message attribute MessageSystemAttribute.1.Value.DataType: type: string description: The data type of a system message attribute responses: '200': description: Message sent successfully content: application/xml: schema: $ref: '#/components/schemas/SendMessageResponse' application/json: schema: $ref: '#/components/schemas/SendMessageResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/delete-message: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: DeleteMessage summary: Amazon Sqs Delete a Message From a Queue description: Deletes the specified message from the specified queue. To select the message to delete, use the ReceiptHandle of the message (not the MessageId which you receive when you send the message). Amazon SQS can delete a message from a queue even if a visibility timeout setting causes the message to be locked by another consumer. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - ReceiptHandle properties: Action: type: string enum: - DeleteMessage ReceiptHandle: type: string description: The receipt handle associated with the message to delete. This is returned by the ReceiveMessage action. responses: '200': description: Message deleted successfully content: application/xml: schema: $ref: '#/components/schemas/GenericResponse' '400': description: Bad request - invalid receipt handle content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/send-message-batch: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: SendMessageBatch summary: Amazon Sqs Send up to 10 Messages to a Queue in a Single Request description: Delivers up to ten messages to the specified queue. This is a batch version of SendMessage. For a FIFO queue, multiple messages within a single batch are enqueued in the order they are sent. The maximum allowed individual message size and the maximum total payload size (the sum of the individual lengths of all of the batched messages) are both 256 KiB. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - SendMessageBatchRequestEntry.1.Id - SendMessageBatchRequestEntry.1.MessageBody properties: Action: type: string enum: - SendMessageBatch SendMessageBatchRequestEntry.1.Id: type: string description: An identifier for a message in this batch used to communicate the result. SendMessageBatchRequestEntry.1.MessageBody: type: string description: The body of the message SendMessageBatchRequestEntry.1.DelaySeconds: type: integer description: Delay in seconds for this message SendMessageBatchRequestEntry.1.MessageDeduplicationId: type: string description: Deduplication ID for FIFO queues SendMessageBatchRequestEntry.1.MessageGroupId: type: string description: Group ID for FIFO queues responses: '200': description: Batch send completed content: application/xml: schema: $ref: '#/components/schemas/SendMessageBatchResponse' application/json: schema: $ref: '#/components/schemas/SendMessageBatchResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/delete-message-batch: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: DeleteMessageBatch summary: Amazon Sqs Delete up to 10 Messages From a Queue in a Single Request description: Deletes up to ten messages from the specified queue. This is a batch version of DeleteMessage. The result of the action on each message is reported individually in the response. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - DeleteMessageBatchRequestEntry.1.Id - DeleteMessageBatchRequestEntry.1.ReceiptHandle properties: Action: type: string enum: - DeleteMessageBatch DeleteMessageBatchRequestEntry.1.Id: type: string description: An identifier for this particular receipt handle DeleteMessageBatchRequestEntry.1.ReceiptHandle: type: string description: A receipt handle responses: '200': description: Batch delete completed content: application/xml: schema: $ref: '#/components/schemas/DeleteMessageBatchResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/change-message-visibility: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: ChangeMessageVisibility summary: Amazon Sqs Change the Visibility Timeout of a Message description: Changes the visibility timeout of a specified message in a queue to a new value. The default visibility timeout for a message is 30 seconds. The minimum is 0 seconds. The maximum is 12 hours. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - ReceiptHandle - VisibilityTimeout properties: Action: type: string enum: - ChangeMessageVisibility ReceiptHandle: type: string description: The receipt handle associated with the message whose visibility timeout is changed. VisibilityTimeout: type: integer description: The new value for the message's visibility timeout (in seconds). Values range from 0 to 43200. minimum: 0 maximum: 43200 responses: '200': description: Visibility timeout changed successfully content: application/xml: schema: $ref: '#/components/schemas/GenericResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/change-message-visibility-batch: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: ChangeMessageVisibilityBatch summary: Amazon Sqs Change the Visibility Timeout of Multiple Messages description: Changes the visibility timeout of multiple messages. This is a batch version of ChangeMessageVisibility. The result of each action is reported individually in the response. Up to 10 messages can be changed per request. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - ChangeMessageVisibilityBatchRequestEntry.1.Id - ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle - ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout properties: Action: type: string enum: - ChangeMessageVisibilityBatch ChangeMessageVisibilityBatchRequestEntry.1.Id: type: string description: An identifier for this particular receipt handle ChangeMessageVisibilityBatchRequestEntry.1.ReceiptHandle: type: string description: A receipt handle ChangeMessageVisibilityBatchRequestEntry.1.VisibilityTimeout: type: integer description: The new value for the message's visibility timeout minimum: 0 maximum: 43200 responses: '200': description: Batch visibility change completed content: application/xml: schema: $ref: '#/components/schemas/ChangeMessageVisibilityBatchResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/start-message-move-task: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: StartMessageMoveTask summary: Amazon Sqs Start an Asynchronous Task to Move Messages description: Starts an asynchronous task to move messages from a specified source queue to a specified destination queue. This action is currently limited to supporting message redrive from queues that are configured as dead-letter queues. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - SourceArn properties: Action: type: string enum: - StartMessageMoveTask SourceArn: type: string description: The ARN of the queue that contains the messages to be moved DestinationArn: type: string description: The ARN of the queue that receives the moved messages. If not specified, the source queue's dead-letter queue configuration is used. MaxNumberOfMessagesPerSecond: type: integer description: The number of messages to be moved per second. If not specified, the system chooses an optimal rate. responses: '200': description: Message move task started successfully content: application/xml: schema: $ref: '#/components/schemas/StartMessageMoveTaskResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/list-message-move-tasks: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' get: operationId: ListMessageMoveTasks summary: Amazon Sqs List Message Move Tasks description: Gets the most recent message movement tasks (up to 10) under a specific source queue. tags: - Messages parameters: - name: Action in: query required: true schema: type: string enum: - ListMessageMoveTasks - name: MaxResults in: query description: The maximum number of results to include in the response schema: type: integer minimum: 1 maximum: 10 responses: '200': description: Message move tasks retrieved successfully content: application/xml: schema: $ref: '#/components/schemas/ListMessageMoveTasksResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK /{accountId}/{queueName}/cancel-message-move-task: parameters: - $ref: '#/components/parameters/AccountId' - $ref: '#/components/parameters/QueueName' post: operationId: CancelMessageMoveTask summary: Amazon Sqs Cancel a Message Move Task description: Cancels a specified message movement task. A message movement can only be cancelled when the current status is RUNNING. tags: - Messages requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - Action - TaskHandle properties: Action: type: string enum: - CancelMessageMoveTask TaskHandle: type: string description: An identifier associated with a message movement task. responses: '200': description: Message move task cancelled successfully content: application/xml: schema: $ref: '#/components/schemas/CancelMessageMoveTaskResponse' '400': description: Bad request content: application/xml: schema: $ref: '#/components/schemas/ErrorResponse' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: SendMessageResponse: type: object properties: SendMessageResult: type: object properties: MD5OfMessageBody: type: string description: An MD5 digest of the non-URL-encoded message body string MD5OfMessageAttributes: type: string description: An MD5 digest of the non-URL-encoded message attribute string MD5OfMessageSystemAttributes: type: string description: An MD5 digest of the non-URL-encoded system attribute string MessageId: type: string description: An attribute containing the MessageId of the message sent format: uuid SequenceNumber: type: string description: This parameter applies only to FIFO queues. The large, non-consecutive number that Amazon SQS assigns to each message. example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' ListMessageMoveTasksResponse: type: object properties: ListMessageMoveTasksResult: type: object properties: Results: type: array items: type: object properties: TaskHandle: type: string Status: type: string enum: - RUNNING - COMPLETED - CANCELLING - CANCELLED - FAILED SourceArn: type: string DestinationArn: type: string MaxNumberOfMessagesPerSecond: type: integer ApproximateNumberOfMessagesMoved: type: integer ApproximateNumberOfMessagesToMove: type: integer StartedTimestamp: type: integer description: Unix timestamp in milliseconds example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' StartMessageMoveTaskResponse: type: object properties: StartMessageMoveTaskResult: type: object properties: TaskHandle: type: string description: An identifier associated with a message movement task example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' DeleteMessageBatchResponse: type: object properties: DeleteMessageBatchResult: type: object properties: DeleteMessageBatchResultEntry: type: array items: type: object properties: Id: type: string BatchResultErrorEntry: type: array items: $ref: '#/components/schemas/BatchResultErrorEntry' example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' GenericResponse: type: object properties: ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' ReceiveMessageResponse: type: object properties: ReceiveMessageResult: type: object properties: Message: type: array items: $ref: '#/components/schemas/Message' example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' ErrorResponse: type: object properties: Error: type: object properties: Type: type: string description: The error type (Sender or Receiver) enum: - Sender - Receiver Code: type: string description: The error code examples: - AWS.SimpleQueueService.NonExistentQueue - AWS.SimpleQueueService.QueueDeletedRecently - InvalidParameterValue - MissingParameter - QueueAlreadyExists - OverLimit - AccessDenied - InvalidAddress - InvalidAction - InvalidAttributeName - InvalidAttributeValue - InvalidBatchEntryId - TooManyEntriesInBatchRequest - BatchEntryIdsNotDistinct - EmptyBatchRequest - BatchRequestTooLong - UnsupportedOperation - PurgeQueueInProgress - MessageNotInflight - ReceiptHandleIsInvalid - ResourceNotFoundException Message: type: string description: A human-readable description of the error example: example_value RequestId: type: string description: The unique request identifier example: '500123' ResponseMetadata: type: object properties: RequestId: type: string description: A unique identifier for the request example: '500123' CancelMessageMoveTaskResponse: type: object properties: CancelMessageMoveTaskResult: type: object properties: ApproximateNumberOfMessagesMoved: type: integer description: The approximate number of messages already moved to the destination queue. example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' BatchResultErrorEntry: type: object description: A batch result error entry properties: Id: type: string description: The Id of the entry that caused the error example: abc123 Code: type: string description: An error code representing the type of error example: example_value Message: type: string description: A message explaining the error example: example_value SenderFault: type: boolean description: Specifies whether the error happened due to the caller of the batch API action example: true SendMessageBatchResponse: type: object properties: SendMessageBatchResult: type: object properties: SendMessageBatchResultEntry: type: array items: type: object properties: Id: type: string MessageId: type: string format: uuid MD5OfMessageBody: type: string MD5OfMessageAttributes: type: string SequenceNumber: type: string BatchResultErrorEntry: type: array items: $ref: '#/components/schemas/BatchResultErrorEntry' example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' ChangeMessageVisibilityBatchResponse: type: object properties: ChangeMessageVisibilityBatchResult: type: object properties: ChangeMessageVisibilityBatchResultEntry: type: array items: type: object properties: Id: type: string BatchResultErrorEntry: type: array items: $ref: '#/components/schemas/BatchResultErrorEntry' example: example_value ResponseMetadata: $ref: '#/components/schemas/ResponseMetadata' Message: type: object description: An Amazon SQS message properties: MessageId: type: string description: A unique identifier for the message format: uuid example: '500123' ReceiptHandle: type: string description: An identifier associated with the act of receiving the message. A new receipt handle is returned every time you receive a message. When deleting a message, you provide the last received receipt handle to delete the message. example: example_value MD5OfBody: type: string description: An MD5 digest of the non-URL-encoded message body string example: example_value Body: type: string description: The message's contents (not URL-encoded) example: example_value Attribute: type: array description: A map of the attributes requested in ReceiveMessage to their respective values. items: type: object properties: Name: type: string enum: - SenderId - SentTimestamp - ApproximateReceiveCount - ApproximateFirstReceiveTimestamp - SequenceNumber - MessageDeduplicationId - MessageGroupId - AWSTraceHeader Value: type: string example: [] MessageAttribute: type: array description: Each message attribute consists of a Name, Type, and Value. items: type: object properties: Name: type: string Value: type: object properties: StringValue: type: string BinaryValue: type: string format: byte DataType: type: string description: The message attribute data type. Supported types include String, Number, and Binary. example: [] parameters: QueueName: name: queueName in: path required: true description: The name of the queue. For FIFO queues, the name must end with the .fifo suffix. schema: type: string maxLength: 80 AccountId: name: accountId in: path required: true description: The AWS account ID of the queue owner schema: type: string pattern: ^\d{12}$ securitySchemes: aws_sig_v4: type: apiKey name: Authorization in: header description: AWS Signature Version 4 authentication. All SQS API requests must be signed using AWS credentials (Access Key ID and Secret Access Key). The signature is included in the Authorization header. externalDocs: description: Amazon SQS API Reference url: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/