ExAws v0.4.19 ExAws.SQS.Client behaviour
The purpose of this module is to surface the ExAws.SQS API tied to a single configuration chose, such that it does not need passed in with every request
Usage:
defmodule MyApp.SQS do
use ExAws.SQS.Client, otp_app: :my_otp_app
end
In your config
config :my_otp_app, ExAws,
sqs: [], #SQS config goes here
Summary
Callbacks
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
Types
delete_message_batch_item :: %{id: binary, receipt_handle: binary}
message_visibility_batch_item :: %{id: binary, receipt_handle: binary, visibility_timeout: visibility_timeout}
queue_attributes :: [policy: binary, visibility_timeout: visibility_timeout, maximum_message_size: 1024..262144, message_retention_period: 60..1209600, 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]
receive_message_opts :: [attribute_names: :all | [sqs_message_attribute_name, ...], max_number_of_messages: 1..10, visibility_timeout: 0..43200, wait_time_seconds: 0..20]
sqs_acl :: %{binary => :all | [sqs_permission, ...]}
sqs_batch_message ::
binary |
[id: binary, message_body: binary, delay_seconds: 0..900, message_attributes: sqs_message_attribute | [sqs_message_attribute, ...]]
sqs_message_attribute :: %{name: binary, data_type: :string | :binary | :number, custom_type: binary | none, value: binary | number}
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 :: [delay_seconds: 0..900, message_attributes: sqs_message_attribute | [sqs_message_attribute, ...]]
sqs_permission ::
:send_message |
:receive_message |
:delete_message |
:change_message_visibility |
:get_queue_attributes
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
visibility_timeout :: 0..43200
Callbacks
Specs
add_permission(queue_url :: binary, label :: binary, permissions :: sqs_acl) :: SQS.Request.response_t
Adds a permission with the provided label to the Queue for a specific action for a specific account.
Specs
change_message_visibility(queue_url :: binary, receipt_handle :: binary, visibility_timeout :: visibility_timeout) :: SQS.Request.response_t
Extends the read lock timeout for the specified message from the specified queue to the specified value
Specs
change_message_visibility_batch(queue_url :: binary, opts :: [message_visibility_batch_item, ...]) :: SQS.Request.response_t
Extends the read lock timeout for a batch of 1..10 messages
Specs
create_queue(queue_name :: binary) :: SQS.Request.response_t
Create queue
Specs
create_queue(queue_name :: binary, queue_attributes :: queue_attributes) :: SQS.Request.response_t
Specs
delete_message(queue_url :: binary, receipt_handle :: binary) :: SQS.Request.response_t
Delete a message from a SQS Queue
Specs
delete_message_batch(queue_url :: binary, message_receipts :: [delete_message_batch_item, ...]) :: SQS.Request.response_t
Deletes a list of messages from a SQS Queue in a single request
Specs
delete_queue(queue_url :: binary) :: SQS.Request.response_t
Delete a queue
Specs
get_queue_attributes(queue_url :: binary) :: SQS.Request.response_t
Gets attributes of a SQS Queue
Specs
get_queue_attributes(queue_url :: binary, attribute_names :: :all | [sqs_queue_attribute_name, ...]) :: SQS.Request.response_t
Specs
get_queue_url(queue_name :: binary) :: SQS.Request.response_t
Get queue URL
Specs
get_queue_url(queue_name :: binary, opts :: [{:queue_owner_aws_account_id, binary}]) :: SQS.Request.response_t
Specs
list_dead_letter_source_queues(queue_url :: binary) :: SQS.Request.response_t
Retrieves the dead letter source queues for a given SQS Queue
Specs
list_queues(opts :: [{:queue_name_prefix, binary}]) :: SQS.Request.response_t
Specs
purge_queue(queue_url :: binary) :: SQS.Request.response_t
Purge all messages in a SQS Queue
Specs
receive_message(queue_name :: binary) :: SQS.Request.response_t
Read messages from a SQS Queue
Specs
receive_message(queue_name :: binary, opts :: receive_message_opts) :: SQS.Request.response_t
Specs
remove_permission(queue_name :: binary, label :: binary) :: SQS.Request.response_t
Removes permission with the given label from the Queue
Specs
send_message(queue_name :: binary, message_body :: binary) :: SQS.Request.response_t
Send a message to a SQS Queue
Specs
send_message(queue_name :: binary, message_body :: binary, opts :: sqs_message_opts) :: SQS.Request.response_t
Specs
send_message_batch(queue_name :: binary, messages :: [sqs_batch_message, ...]) :: SQS.Request.response_t
Send up to 10 messages to a SQS Queue in a single request
Specs
set_queue_attributes(queue_name :: binary, attributes :: queue_attributes) :: SQS.Request.response_t
Set attributes of a SQS Queue