Skip to content

SQSClient#

Index > SQS > SQSClient

Auto-generated documentation for SQS type annotations stubs module types-aiobotocore-sqs.

SQSClient#

Type annotations and code completion for session.create_client("sqs") boto3 documentation

SQSClient usage example

from aiobotocore.session import get_session
from types_aiobotocore_sqs.client import SQSClient

session = get_session()
async with session.create_client("sqs") as client:
    client: SQSClient

Exceptions#

aiobotocore client exceptions are generated in runtime. This class provides code completion for session.create_client("sqs").exceptions structure.

SQSClient.exceptions usage example

async with session.create_client("sqs") as client:
    try:
        do_something(client)
    except (
            client.BatchEntryIdsNotDistinct,
        client.BatchRequestTooLong,
        client.ClientError,
        client.EmptyBatchRequest,
        client.InvalidAttributeName,
        client.InvalidBatchEntryId,
        client.InvalidIdFormat,
        client.InvalidMessageContents,
        client.MessageNotInflight,
        client.OverLimit,
        client.PurgeQueueInProgress,
        client.QueueDeletedRecently,
        client.QueueDoesNotExist,
        client.QueueNameExists,
        client.ReceiptHandleIsInvalid,
        client.ResourceNotFoundException,
        client.TooManyEntriesInBatchRequest,
        client.UnsupportedOperation,
    ) as e:
        print(e)
SQSClient usage type checking example

from types_aiobotocore_sqs.client import Exceptions

def handle_error(exc: Exceptions.BatchEntryIdsNotDistinct) -> None:
    ...

Methods#

add_permission#

Adds a permission to a queue for a specific principal_.

Type annotations and code completion for session.create_client("sqs").add_permission method. boto3 documentation

# add_permission method definition

await def add_permission(
    self,
    *,
    QueueUrl: str,
    Label: str,
    AWSAccountIds: Sequence[str],
    Actions: Sequence[str],
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# add_permission method usage example with argument unpacking

kwargs: AddPermissionRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Label": ...,
    "AWSAccountIds": ...,
    "Actions": ...,
}

parent.add_permission(**kwargs)
  1. See AddPermissionRequestRequestTypeDef

can_paginate#

Check if an operation can be paginated.

Type annotations and code completion for session.create_client("sqs").can_paginate method. boto3 documentation

# can_paginate method definition

def can_paginate(
    self,
    operation_name: str,
) -> bool:
    ...

cancel_message_move_task#

Cancels a specified message movement task.

Type annotations and code completion for session.create_client("sqs").cancel_message_move_task method. boto3 documentation

# cancel_message_move_task method definition

await def cancel_message_move_task(
    self,
    *,
    TaskHandle: str,
) -> CancelMessageMoveTaskResultTypeDef:  # (1)
    ...
  1. See CancelMessageMoveTaskResultTypeDef
# cancel_message_move_task method usage example with argument unpacking

kwargs: CancelMessageMoveTaskRequestRequestTypeDef = {  # (1)
    "TaskHandle": ...,
}

parent.cancel_message_move_task(**kwargs)
  1. See CancelMessageMoveTaskRequestRequestTypeDef

change_message_visibility#

Changes the visibility timeout of a specified message in a queue to a new value.

Type annotations and code completion for session.create_client("sqs").change_message_visibility method. boto3 documentation

# change_message_visibility method definition

await def change_message_visibility(
    self,
    *,
    QueueUrl: str,
    ReceiptHandle: str,
    VisibilityTimeout: int,
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# change_message_visibility method usage example with argument unpacking

kwargs: ChangeMessageVisibilityRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "ReceiptHandle": ...,
    "VisibilityTimeout": ...,
}

parent.change_message_visibility(**kwargs)
  1. See ChangeMessageVisibilityRequestRequestTypeDef

change_message_visibility_batch#

Changes the visibility timeout of multiple messages.

Type annotations and code completion for session.create_client("sqs").change_message_visibility_batch method. boto3 documentation

# change_message_visibility_batch method definition

await def change_message_visibility_batch(
    self,
    *,
    QueueUrl: str,
    Entries: Sequence[ChangeMessageVisibilityBatchRequestEntryTypeDef],  # (1)
) -> ChangeMessageVisibilityBatchResultTypeDef:  # (2)
    ...
  1. See ChangeMessageVisibilityBatchRequestEntryTypeDef
  2. See ChangeMessageVisibilityBatchResultTypeDef
# change_message_visibility_batch method usage example with argument unpacking

kwargs: ChangeMessageVisibilityBatchRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Entries": ...,
}

parent.change_message_visibility_batch(**kwargs)
  1. See ChangeMessageVisibilityBatchRequestRequestTypeDef

close#

Closes underlying endpoint connections.

Type annotations and code completion for session.create_client("sqs").close method. boto3 documentation

# close method definition

await def close(
    self,
) -> None:
    ...

create_queue#

Creates a new standard or FIFO queue.

Type annotations and code completion for session.create_client("sqs").create_queue method. boto3 documentation

# create_queue method definition

await def create_queue(
    self,
    *,
    QueueName: str,
    Attributes: Mapping[QueueAttributeNameType, str] = ...,  # (1)
    tags: Mapping[str, str] = ...,
) -> CreateQueueResultTypeDef:  # (2)
    ...
  1. See QueueAttributeNameType
  2. See CreateQueueResultTypeDef
# create_queue method usage example with argument unpacking

kwargs: CreateQueueRequestRequestTypeDef = {  # (1)
    "QueueName": ...,
}

parent.create_queue(**kwargs)
  1. See CreateQueueRequestRequestTypeDef

delete_message#

Deletes the specified message from the specified queue.

Type annotations and code completion for session.create_client("sqs").delete_message method. boto3 documentation

# delete_message method definition

await def delete_message(
    self,
    *,
    QueueUrl: str,
    ReceiptHandle: str,
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# delete_message method usage example with argument unpacking

kwargs: DeleteMessageRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "ReceiptHandle": ...,
}

parent.delete_message(**kwargs)
  1. See DeleteMessageRequestRequestTypeDef

delete_message_batch#

Deletes up to ten messages from the specified queue.

Type annotations and code completion for session.create_client("sqs").delete_message_batch method. boto3 documentation

# delete_message_batch method definition

await def delete_message_batch(
    self,
    *,
    QueueUrl: str,
    Entries: Sequence[DeleteMessageBatchRequestEntryTypeDef],  # (1)
) -> DeleteMessageBatchResultTypeDef:  # (2)
    ...
  1. See DeleteMessageBatchRequestEntryTypeDef
  2. See DeleteMessageBatchResultTypeDef
# delete_message_batch method usage example with argument unpacking

kwargs: DeleteMessageBatchRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Entries": ...,
}

parent.delete_message_batch(**kwargs)
  1. See DeleteMessageBatchRequestRequestTypeDef

delete_queue#

Deletes the queue specified by the QueueUrl, regardless of the queue's contents.

Type annotations and code completion for session.create_client("sqs").delete_queue method. boto3 documentation

# delete_queue method definition

await def delete_queue(
    self,
    *,
    QueueUrl: str,
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# delete_queue method usage example with argument unpacking

kwargs: DeleteQueueRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.delete_queue(**kwargs)
  1. See DeleteQueueRequestRequestTypeDef

generate_presigned_url#

Generate a presigned url given a client, its method, and arguments.

Type annotations and code completion for session.create_client("sqs").generate_presigned_url method. boto3 documentation

# generate_presigned_url method definition

await def generate_presigned_url(
    self,
    ClientMethod: str,
    Params: Mapping[str, Any] = ...,
    ExpiresIn: int = 3600,
    HttpMethod: str = ...,
) -> str:
    ...

get_queue_attributes#

Gets attributes for the specified queue.

Type annotations and code completion for session.create_client("sqs").get_queue_attributes method. boto3 documentation

# get_queue_attributes method definition

await def get_queue_attributes(
    self,
    *,
    QueueUrl: str,
    AttributeNames: Sequence[QueueAttributeFilterType] = ...,  # (1)
) -> GetQueueAttributesResultTypeDef:  # (2)
    ...
  1. See QueueAttributeFilterType
  2. See GetQueueAttributesResultTypeDef
# get_queue_attributes method usage example with argument unpacking

kwargs: GetQueueAttributesRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.get_queue_attributes(**kwargs)
  1. See GetQueueAttributesRequestRequestTypeDef

get_queue_url#

Returns the URL of an existing Amazon SQS queue.

Type annotations and code completion for session.create_client("sqs").get_queue_url method. boto3 documentation

# get_queue_url method definition

await def get_queue_url(
    self,
    *,
    QueueName: str,
    QueueOwnerAWSAccountId: str = ...,
) -> GetQueueUrlResultTypeDef:  # (1)
    ...
  1. See GetQueueUrlResultTypeDef
# get_queue_url method usage example with argument unpacking

kwargs: GetQueueUrlRequestRequestTypeDef = {  # (1)
    "QueueName": ...,
}

parent.get_queue_url(**kwargs)
  1. See GetQueueUrlRequestRequestTypeDef

list_dead_letter_source_queues#

Returns a list of your queues that have the RedrivePolicy queue attribute configured with a dead-letter queue.

Type annotations and code completion for session.create_client("sqs").list_dead_letter_source_queues method. boto3 documentation

# list_dead_letter_source_queues method definition

await def list_dead_letter_source_queues(
    self,
    *,
    QueueUrl: str,
    NextToken: str = ...,
    MaxResults: int = ...,
) -> ListDeadLetterSourceQueuesResultTypeDef:  # (1)
    ...
  1. See ListDeadLetterSourceQueuesResultTypeDef
# list_dead_letter_source_queues method usage example with argument unpacking

kwargs: ListDeadLetterSourceQueuesRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.list_dead_letter_source_queues(**kwargs)
  1. See ListDeadLetterSourceQueuesRequestRequestTypeDef

list_message_move_tasks#

Gets the most recent message movement tasks (up to 10) under a specific source queue.

Type annotations and code completion for session.create_client("sqs").list_message_move_tasks method. boto3 documentation

# list_message_move_tasks method definition

await def list_message_move_tasks(
    self,
    *,
    SourceArn: str,
    MaxResults: int = ...,
) -> ListMessageMoveTasksResultTypeDef:  # (1)
    ...
  1. See ListMessageMoveTasksResultTypeDef
# list_message_move_tasks method usage example with argument unpacking

kwargs: ListMessageMoveTasksRequestRequestTypeDef = {  # (1)
    "SourceArn": ...,
}

parent.list_message_move_tasks(**kwargs)
  1. See ListMessageMoveTasksRequestRequestTypeDef

list_queue_tags#

List all cost allocation tags added to the specified Amazon SQS queue.

Type annotations and code completion for session.create_client("sqs").list_queue_tags method. boto3 documentation

# list_queue_tags method definition

await def list_queue_tags(
    self,
    *,
    QueueUrl: str,
) -> ListQueueTagsResultTypeDef:  # (1)
    ...
  1. See ListQueueTagsResultTypeDef
# list_queue_tags method usage example with argument unpacking

kwargs: ListQueueTagsRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.list_queue_tags(**kwargs)
  1. See ListQueueTagsRequestRequestTypeDef

list_queues#

Returns a list of your queues in the current region.

Type annotations and code completion for session.create_client("sqs").list_queues method. boto3 documentation

# list_queues method definition

await def list_queues(
    self,
    *,
    QueueNamePrefix: str = ...,
    NextToken: str = ...,
    MaxResults: int = ...,
) -> ListQueuesResultTypeDef:  # (1)
    ...
  1. See ListQueuesResultTypeDef
# list_queues method usage example with argument unpacking

kwargs: ListQueuesRequestRequestTypeDef = {  # (1)
    "QueueNamePrefix": ...,
}

parent.list_queues(**kwargs)
  1. See ListQueuesRequestRequestTypeDef

purge_queue#

Deletes available messages in a queue (including in-flight messages) specified by the QueueURL parameter.

Type annotations and code completion for session.create_client("sqs").purge_queue method. boto3 documentation

# purge_queue method definition

await def purge_queue(
    self,
    *,
    QueueUrl: str,
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# purge_queue method usage example with argument unpacking

kwargs: PurgeQueueRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.purge_queue(**kwargs)
  1. See PurgeQueueRequestRequestTypeDef

receive_message#

Retrieves one or more messages (up to 10), from the specified queue.

Type annotations and code completion for session.create_client("sqs").receive_message method. boto3 documentation

# receive_message method definition

await def receive_message(
    self,
    *,
    QueueUrl: str,
    AttributeNames: Sequence[QueueAttributeFilterType] = ...,  # (1)
    MessageAttributeNames: Sequence[str] = ...,
    MaxNumberOfMessages: int = ...,
    VisibilityTimeout: int = ...,
    WaitTimeSeconds: int = ...,
    ReceiveRequestAttemptId: str = ...,
) -> ReceiveMessageResultTypeDef:  # (2)
    ...
  1. See QueueAttributeFilterType
  2. See ReceiveMessageResultTypeDef
# receive_message method usage example with argument unpacking

kwargs: ReceiveMessageRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
}

parent.receive_message(**kwargs)
  1. See ReceiveMessageRequestRequestTypeDef

remove_permission#

Revokes any permissions in the queue policy that matches the specified Label parameter.

Type annotations and code completion for session.create_client("sqs").remove_permission method. boto3 documentation

# remove_permission method definition

await def remove_permission(
    self,
    *,
    QueueUrl: str,
    Label: str,
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# remove_permission method usage example with argument unpacking

kwargs: RemovePermissionRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Label": ...,
}

parent.remove_permission(**kwargs)
  1. See RemovePermissionRequestRequestTypeDef

send_message#

Delivers a message to the specified queue.

Type annotations and code completion for session.create_client("sqs").send_message method. boto3 documentation

# send_message method definition

await def send_message(
    self,
    *,
    QueueUrl: str,
    MessageBody: str,
    DelaySeconds: int = ...,
    MessageAttributes: Mapping[str, MessageAttributeValueTypeDef] = ...,  # (1)
    MessageSystemAttributes: Mapping[MessageSystemAttributeNameForSendsType, MessageSystemAttributeValueTypeDef] = ...,  # (2)
    MessageDeduplicationId: str = ...,
    MessageGroupId: str = ...,
) -> SendMessageResultTypeDef:  # (3)
    ...
  1. See MessageAttributeValueTypeDef
  2. See MessageSystemAttributeNameForSendsType MessageSystemAttributeValueTypeDef
  3. See SendMessageResultTypeDef
# send_message method usage example with argument unpacking

kwargs: SendMessageRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "MessageBody": ...,
}

parent.send_message(**kwargs)
  1. See SendMessageRequestRequestTypeDef

send_message_batch#

You can use SendMessageBatch to send up to 10 messages to the specified queue by assigning either identical or different values to each message (or by not assigning values at all).

Type annotations and code completion for session.create_client("sqs").send_message_batch method. boto3 documentation

# send_message_batch method definition

await def send_message_batch(
    self,
    *,
    QueueUrl: str,
    Entries: Sequence[SendMessageBatchRequestEntryTypeDef],  # (1)
) -> SendMessageBatchResultTypeDef:  # (2)
    ...
  1. See SendMessageBatchRequestEntryTypeDef
  2. See SendMessageBatchResultTypeDef
# send_message_batch method usage example with argument unpacking

kwargs: SendMessageBatchRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Entries": ...,
}

parent.send_message_batch(**kwargs)
  1. See SendMessageBatchRequestRequestTypeDef

set_queue_attributes#

Sets the value of one or more queue attributes.

Type annotations and code completion for session.create_client("sqs").set_queue_attributes method. boto3 documentation

# set_queue_attributes method definition

await def set_queue_attributes(
    self,
    *,
    QueueUrl: str,
    Attributes: Mapping[QueueAttributeNameType, str],  # (1)
) -> EmptyResponseMetadataTypeDef:  # (2)
    ...
  1. See QueueAttributeNameType
  2. See EmptyResponseMetadataTypeDef
# set_queue_attributes method usage example with argument unpacking

kwargs: SetQueueAttributesRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Attributes": ...,
}

parent.set_queue_attributes(**kwargs)
  1. See SetQueueAttributesRequestRequestTypeDef

start_message_move_task#

Starts an asynchronous task to move messages from a specified source queue to a specified destination queue.

Type annotations and code completion for session.create_client("sqs").start_message_move_task method. boto3 documentation

# start_message_move_task method definition

await def start_message_move_task(
    self,
    *,
    SourceArn: str,
    DestinationArn: str = ...,
    MaxNumberOfMessagesPerSecond: int = ...,
) -> StartMessageMoveTaskResultTypeDef:  # (1)
    ...
  1. See StartMessageMoveTaskResultTypeDef
# start_message_move_task method usage example with argument unpacking

kwargs: StartMessageMoveTaskRequestRequestTypeDef = {  # (1)
    "SourceArn": ...,
}

parent.start_message_move_task(**kwargs)
  1. See StartMessageMoveTaskRequestRequestTypeDef

tag_queue#

Add cost allocation tags to the specified Amazon SQS queue.

Type annotations and code completion for session.create_client("sqs").tag_queue method. boto3 documentation

# tag_queue method definition

await def tag_queue(
    self,
    *,
    QueueUrl: str,
    Tags: Mapping[str, str],
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# tag_queue method usage example with argument unpacking

kwargs: TagQueueRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "Tags": ...,
}

parent.tag_queue(**kwargs)
  1. See TagQueueRequestRequestTypeDef

untag_queue#

Remove cost allocation tags from the specified Amazon SQS queue.

Type annotations and code completion for session.create_client("sqs").untag_queue method. boto3 documentation

# untag_queue method definition

await def untag_queue(
    self,
    *,
    QueueUrl: str,
    TagKeys: Sequence[str],
) -> EmptyResponseMetadataTypeDef:  # (1)
    ...
  1. See EmptyResponseMetadataTypeDef
# untag_queue method usage example with argument unpacking

kwargs: UntagQueueRequestRequestTypeDef = {  # (1)
    "QueueUrl": ...,
    "TagKeys": ...,
}

parent.untag_queue(**kwargs)
  1. See UntagQueueRequestRequestTypeDef

__aenter__#

Type annotations and code completion for session.create_client("sqs").__aenter__ method. boto3 documentation

# __aenter__ method definition

await def __aenter__(
    self,
) -> SQSClient:
    ...

__aexit__#

Type annotations and code completion for session.create_client("sqs").__aexit__ method. boto3 documentation

# __aexit__ method definition

await def __aexit__(
    self,
    exc_type: Any,
    exc_val: Any,
    exc_tb: Any,
) -> Any:
    ...

get_paginator#

Type annotations and code completion for session.create_client("sqs").get_paginator method with overloads.