Table Of Contents


User Guide

First time using the AWS CLI? See the User Guide for help getting started.

Note: You are viewing the documentation for an older major version of the AWS CLI (version 1).

AWS CLI version 2, the latest major version of AWS CLI, is now stable and recommended for general use. To view this page for the AWS CLI version 2, click here. For more information see the AWS CLI version 2 installation instructions and migration guide.

[ aws . sqs ]



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.


Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200 .

Some actions take lists of parameters. These lists are specified using the param.n notation. Values of n are integers starting from 1. For example, a parameter list with two elements looks like this:



See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.


--queue-url <value>
--entries <value>
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]


--queue-url (string)

The URL of the Amazon SQS queue from which messages are deleted.

Queue URLs and names are case-sensitive.

--entries (list)

A list of receipt handles for the messages to be deleted.


Encloses a receipt handle and an identifier for it.

Id -> (string)

An identifier for this particular receipt handle. This is used to communicate the result.


The Id s of a batch request need to be unique within a request.

This identifier can have up to 80 characters. The following characters are accepted: alphanumeric characters, hyphens(-), and underscores (_).

ReceiptHandle -> (string)

A receipt handle.

Shorthand Syntax:

Id=string,ReceiptHandle=string ...

JSON Syntax:

    "Id": "string",
    "ReceiptHandle": "string"

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.


To delete multiple messages as a batch

This example deletes the specified messages.


aws sqs delete-message-batch --queue-url --entries file://delete-message-batch.json

Input file (delete-message-batch.json):

        "Id": "FirstMessage",
        "ReceiptHandle": "AQEB1mgl...Z4GuLw=="
    "Id": "SecondMessage",
        "ReceiptHandle": "AQEBLsYM...VQubAA=="


  "Successful": [
      "Id": "FirstMessage"
      "Id": "SecondMessage"


Successful -> (list)

A list of `` DeleteMessageBatchResultEntry `` items.


Encloses the Id of an entry in `` DeleteMessageBatch .``

Id -> (string)

Represents a successfully deleted message.

Failed -> (list)

A list of `` BatchResultErrorEntry `` items.


Gives a detailed description of the result of an action on each entry in the request.

Id -> (string)

The Id of an entry in a batch request.

SenderFault -> (boolean)

Specifies whether the error happened due to the caller of the batch API action.

Code -> (string)

An error code representing why the action failed on this entry.

Message -> (string)

A message explaining why the action failed on this entry.