ExAws.SQS v3.0.0 ExAws.SQS
Operations on AWS SQS
Link to this section Summary
Functions
Adds a permission with the provided label to the Queue for a specific action for a specific account
Extends the read lock timeout for the specified message from the specified queue to the specified value
Extends the read lock timeout for a batch of 1..10 messages
Create queue
Delete a message from a SQS Queue
Deletes a list of messages from a SQS Queue in a single request
Delete a queue
Gets attributes of a SQS Queue
Get queue URL
Retrieves the dead letter source queues for a given SQS Queue
Retrieves a list of all the SQS Queues
Purge all messages in a SQS Queue
Read messages from a SQS Queue
Removes permission with the given label from the Queue
Send a message to a SQS Queue
Send up to 10 messages to a SQS Queue in a single request
Set attributes of a SQS Queue
Link to this section Types
delete_message_batch_item()
message_visibility_batch_item()
message_visibility_batch_item() :: %{
id: binary(),
receipt_handle: binary(),
visibility_timeout: visibility_timeout()
}
message_visibility_batch_item() :: %{ id: binary(), receipt_handle: binary(), visibility_timeout: visibility_timeout() }
queue_attributes()
queue_attributes() :: [
policy: binary(),
visibility_timeout: visibility_timeout(),
maximum_message_size: 1024..262_144,
message_retention_period: 60..1_209_600,
approximate_number_of_messages: binary(),
approximate_number_of_messages_not_visible: binary(),
created_timestamp: binary(),
last_modified_timestamp: binary(),
queue_arn: binary(),
approximate_number_of_messages_delayed: binary(),
delay_seconds: 0..900,
receive_message_wait_time_seconds: 0..20,
redrive_policy: binary(),
fifo_queue: boolean(),
content_based_deduplication: boolean()
]
queue_attributes() :: [ policy: binary(), visibility_timeout: visibility_timeout(), maximum_message_size: 1024..262_144, message_retention_period: 60..1_209_600, approximate_number_of_messages: binary(), approximate_number_of_messages_not_visible: binary(), created_timestamp: binary(), last_modified_timestamp: binary(), queue_arn: binary(), approximate_number_of_messages_delayed: binary(), delay_seconds: 0..900, receive_message_wait_time_seconds: 0..20, redrive_policy: binary(), fifo_queue: boolean(), content_based_deduplication: boolean() ]
receive_message_opts()
receive_message_opts() :: [
attribute_names: :all | [sqs_message_attribute_name(), ...],
message_attribute_names: :all | [String.Chars.t(), ...],
max_number_of_messages: 1..10,
visibility_timeout: 0..43200,
wait_time_seconds: 0..20
]
receive_message_opts() :: [ attribute_names: :all | [sqs_message_attribute_name(), ...], message_attribute_names: :all | [String.Chars.t(), ...], max_number_of_messages: 1..10, visibility_timeout: 0..43200, wait_time_seconds: 0..20 ]
sqs_acl()
sqs_acl() :: %{optional(binary()) => :all | [sqs_permission(), ...]}
sqs_acl() :: %{optional(binary()) => :all | [sqs_permission(), ...]}
sqs_batch_message()
sqs_batch_message() ::
binary()
| [
id: binary(),
message_body: binary(),
delay_seconds: 0..900,
message_attributes:
sqs_message_attribute() | [sqs_message_attribute(), ...],
message_deduplication_id: binary(),
message_group_id: binary()
]
sqs_batch_message() :: binary() | [ id: binary(), message_body: binary(), delay_seconds: 0..900, message_attributes: sqs_message_attribute() | [sqs_message_attribute(), ...], message_deduplication_id: binary(), message_group_id: binary() ]
sqs_message_attribute()
sqs_message_attribute_name()
sqs_message_attribute_name() ::
:sender_id
| :sent_timestamp
| :approximate_receive_count
| :approximate_first_receive_timestamp
| :wait_time_seconds
| :receive_message_wait_time_seconds
sqs_message_attribute_name() :: :sender_id | :sent_timestamp | :approximate_receive_count | :approximate_first_receive_timestamp | :wait_time_seconds | :receive_message_wait_time_seconds
sqs_message_opts()
sqs_message_opts() :: [
delay_seconds: 0..900,
message_attributes: sqs_message_attribute() | [sqs_message_attribute(), ...],
message_deduplication_id: binary(),
message_group_id: binary()
]
sqs_message_opts() :: [ delay_seconds: 0..900, message_attributes: sqs_message_attribute() | [sqs_message_attribute(), ...], message_deduplication_id: binary(), message_group_id: binary() ]
sqs_permission()
sqs_permission() ::
:send_message
| :receive_message
| :delete_message
| :change_message_visibility
| :get_queue_attributes
sqs_permission() :: :send_message | :receive_message | :delete_message | :change_message_visibility | :get_queue_attributes
sqs_queue_attribute_name()
sqs_queue_attribute_name() ::
:policy
| :visibility_timeout
| :maximum_message_size
| :message_retention_period
| :approximate_number_of_messages
| :approximate_number_of_messages_not_visible
| :created_timestamp
| :last_modified_timestamp
| :queue_arn
| :approximate_number_of_messages_delayed
| :delay_seconds
| :receive_message_wait_time_seconds
| :redrive_policy
| :fifo_queue
| :content_based_deduplication
sqs_queue_attribute_name() :: :policy | :visibility_timeout | :maximum_message_size | :message_retention_period | :approximate_number_of_messages | :approximate_number_of_messages_not_visible | :created_timestamp | :last_modified_timestamp | :queue_arn | :approximate_number_of_messages_delayed | :delay_seconds | :receive_message_wait_time_seconds | :redrive_policy | :fifo_queue | :content_based_deduplication
visibility_timeout()
visibility_timeout() :: 0..43200
visibility_timeout() :: 0..43200
Link to this section Functions
add_permission(queue_url, label, permissions \\ %{})
add_permission(
queue_url :: binary(),
label :: binary(),
permissions :: sqs_acl()
) :: ExAws.Operation.Query.t()
add_permission( queue_url :: binary(), label :: binary(), permissions :: sqs_acl() ) :: ExAws.Operation.Query.t()
Adds a permission with the provided label to the Queue for a specific action for a specific account.
change_message_visibility(queue_url, receipt_handle, visibility_timeout)
change_message_visibility(
queue_url :: binary(),
receipt_handle :: binary(),
visibility_timeout :: visibility_timeout()
) :: ExAws.Operation.Query.t()
change_message_visibility( queue_url :: binary(), receipt_handle :: binary(), visibility_timeout :: visibility_timeout() ) :: ExAws.Operation.Query.t()
Extends the read lock timeout for the specified message from the specified queue to the specified value
change_message_visibility_batch(queue_url, messages)
change_message_visibility_batch(
queue_url :: binary(),
opts :: [message_visibility_batch_item(), ...]
) :: ExAws.Operation.Query.t()
change_message_visibility_batch( queue_url :: binary(), opts :: [message_visibility_batch_item(), ...] ) :: ExAws.Operation.Query.t()
Extends the read lock timeout for a batch of 1..10 messages
create_queue(queue_name, attributes \\ [])
create_queue(queue_name :: binary(), queue_attributes :: queue_attributes()) ::
ExAws.Operation.Query.t()
create_queue(queue_name :: binary(), queue_attributes :: queue_attributes()) :: ExAws.Operation.Query.t()
Create queue
delete_message(queue_url, receipt_handle)
delete_message(queue_url :: binary(), receipt_handle :: binary()) ::
ExAws.Operation.Query.t()
delete_message(queue_url :: binary(), receipt_handle :: binary()) :: ExAws.Operation.Query.t()
Delete a message from a SQS Queue
delete_message_batch(queue_url, messages)
delete_message_batch(
queue_url :: binary(),
message_receipts :: [delete_message_batch_item(), ...]
) :: ExAws.Operation.Query.t()
delete_message_batch( queue_url :: binary(), message_receipts :: [delete_message_batch_item(), ...] ) :: ExAws.Operation.Query.t()
Deletes a list of messages from a SQS Queue in a single request
delete_queue(queue_url)
delete_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()
delete_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()
Delete a queue
get_queue_attributes(queue_url, attributes \\ :all)
get_queue_attributes(
queue_url :: binary(),
attribute_names :: :all | [sqs_queue_attribute_name(), ...]
) :: ExAws.Operation.Query.t()
get_queue_attributes( queue_url :: binary(), attribute_names :: :all | [sqs_queue_attribute_name(), ...] ) :: ExAws.Operation.Query.t()
Gets attributes of a SQS Queue
get_queue_url(queue_name, opts \\ [])
get_queue_url(
queue_name :: binary(),
opts :: [{:queue_owner_aws_account_id, binary()}]
) :: ExAws.Operation.Query.t()
get_queue_url( queue_name :: binary(), opts :: [{:queue_owner_aws_account_id, binary()}] ) :: ExAws.Operation.Query.t()
Get queue URL
list_dead_letter_source_queues(queue_url)
list_dead_letter_source_queues(queue_url :: binary()) ::
ExAws.Operation.Query.t()
list_dead_letter_source_queues(queue_url :: binary()) :: ExAws.Operation.Query.t()
Retrieves the dead letter source queues for a given SQS Queue
list_queues(opts \\ [])
list_queues(opts :: [{:queue_name_prefix, binary()}]) ::
ExAws.Operation.Query.t()
list_queues(opts :: [{:queue_name_prefix, binary()}]) :: ExAws.Operation.Query.t()
Retrieves a list of all the SQS Queues
purge_queue(queue_url)
purge_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()
purge_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()
Purge all messages in a SQS Queue
receive_message(queue_url, opts \\ [])
receive_message(queue_url :: binary(), opts :: receive_message_opts()) ::
ExAws.Operation.Query.t()
receive_message(queue_url :: binary(), opts :: receive_message_opts()) :: ExAws.Operation.Query.t()
Read messages from a SQS Queue
remove_permission(queue_url, label)
remove_permission(queue_url :: binary(), label :: binary()) ::
ExAws.Operation.Query.t()
remove_permission(queue_url :: binary(), label :: binary()) :: ExAws.Operation.Query.t()
Removes permission with the given label from the Queue
send_message(queue_url, message, opts \\ [])
send_message(
queue_url :: binary(),
message_body :: binary(),
opts :: sqs_message_opts()
) :: ExAws.Operation.Query.t()
send_message( queue_url :: binary(), message_body :: binary(), opts :: sqs_message_opts() ) :: ExAws.Operation.Query.t()
Send a message to a SQS Queue
send_message_batch(queue_url, messages)
send_message_batch(
queue_url :: binary(),
messages :: [sqs_batch_message(), ...]
) :: ExAws.Operation.Query.t()
send_message_batch( queue_url :: binary(), messages :: [sqs_batch_message(), ...] ) :: ExAws.Operation.Query.t()
Send up to 10 messages to a SQS Queue in a single request
set_queue_attributes(queue_url, attributes \\ [])
set_queue_attributes(queue_url :: binary(), attributes :: queue_attributes()) ::
ExAws.Operation.Query.t()
set_queue_attributes(queue_url :: binary(), attributes :: queue_attributes()) :: ExAws.Operation.Query.t()
Set attributes of a SQS Queue