ExAws.SQS v2.0.0 ExAws.SQS View Source

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

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

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

Link to this type delete_message_batch_item() View Source
delete_message_batch_item() :: %{id: binary(), receipt_handle: binary()}
Link to this type message_visibility_batch_item() View Source
message_visibility_batch_item() :: %{id: binary(), receipt_handle: binary(), visibility_timeout: visibility_timeout()}
Link to this type queue_attributes() View Source
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(), fifo_queue: boolean(), content_based_deduplication: boolean()]
Link to this type receive_message_opts() View Source
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]
Link to this type sqs_acl() View Source
sqs_acl() :: %{optional(binary()) => :all | [sqs_permission(), ...]}
Link to this type sqs_batch_message() View Source
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()]
Link to this type sqs_message_attribute() View Source
sqs_message_attribute() :: %{name: binary(), data_type: :string | :binary | :number, custom_type: binary() | none(), value: binary() | number()}
Link to this type sqs_message_attribute_name() View Source
sqs_message_attribute_name() ::
  :sender_id |
  :sent_timestamp |
  :approximate_receive_count |
  :approximate_first_receive_timestamp |
  :wait_time_seconds |
  :receive_message_wait_time_seconds
Link to this type sqs_message_opts() View Source
sqs_message_opts() :: [delay_seconds: 0..900, message_attributes: sqs_message_attribute() | [sqs_message_attribute(), ...], message_deduplication_id: binary(), message_group_id: binary()]
Link to this type sqs_permission() View Source
sqs_permission() ::
  :send_message |
  :receive_message |
  :delete_message |
  :change_message_visibility |
  :get_queue_attributes
Link to this type sqs_queue_attribute_name() View Source
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
Link to this type visibility_timeout() View Source
visibility_timeout() :: 0..43200

Link to this section Functions

Link to this function add_permission(queue, label, permissions \\ %{}) View Source
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.

Link to this function change_message_visibility(queue, receipt_handle, visibility_timeout) View Source
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

Link to this function change_message_visibility_batch(queue, messages) View Source
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

Link to this function create_queue(queue, attributes \\ []) View Source
create_queue(queue_name :: binary(), queue_attributes :: queue_attributes()) :: ExAws.Operation.Query.t()

Create queue

Link to this function delete_message(queue, receipt_handle) View Source
delete_message(queue_url :: binary(), receipt_handle :: binary()) :: ExAws.Operation.Query.t()

Delete a message from a SQS Queue

Link to this function delete_message_batch(queue, messages) View Source
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

Link to this function delete_queue(queue) View Source
delete_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()

Delete a queue

Link to this function get_queue_attributes(queue, attributes \\ :all) View Source
get_queue_attributes(queue_url :: binary(), attribute_names :: :all | [sqs_queue_attribute_name(), ...]) :: ExAws.Operation.Query.t()

Gets attributes of a SQS Queue

Link to this function get_queue_url(queue_name, opts \\ []) View Source
get_queue_url(queue_name :: binary(), opts :: [{:queue_owner_aws_account_id, binary()}]) :: ExAws.Operation.Query.t()

Get queue URL

Link to this function list_dead_letter_source_queues(queue) View Source
list_dead_letter_source_queues(queue_url :: binary()) :: ExAws.Operation.Query.t()

Retrieves the dead letter source queues for a given SQS Queue

Link to this function list_queues(opts \\ []) View Source
list_queues(opts :: [{:queue_name_prefix, binary()}]) :: ExAws.Operation.Query.t()

Retrieves a list of all the SQS Queues

Link to this function purge_queue(queue) View Source
purge_queue(queue_url :: binary()) :: ExAws.Operation.Query.t()

Purge all messages in a SQS Queue

Link to this function receive_message(queue, opts \\ []) View Source
receive_message(queue_name :: binary(), opts :: receive_message_opts()) :: ExAws.Operation.Query.t()

Read messages from a SQS Queue

Link to this function remove_permission(queue, label) View Source
remove_permission(queue_name :: binary(), label :: binary()) :: ExAws.Operation.Query.t()

Removes permission with the given label from the Queue

Link to this function send_message(queue, message, opts \\ []) View Source
send_message(queue_name :: binary(), message_body :: binary(), opts :: sqs_message_opts()) :: ExAws.Operation.Query.t()

Send a message to a SQS Queue

Link to this function send_message_batch(queue, messages) View Source
send_message_batch(queue_name :: binary(), messages :: [sqs_batch_message(), ...]) :: ExAws.Operation.Query.t()

Send up to 10 messages to a SQS Queue in a single request

Link to this function set_queue_attributes(queue, attributes \\ []) View Source
set_queue_attributes(queue_name :: binary(), attributes :: queue_attributes()) :: ExAws.Operation.Query.t()

Set attributes of a SQS Queue