step

aws_sqs

Execute AWS SQS queue operations.

Overview

Supports operations:
- send_message: Send a message to the queue
- receive_message: Receive messages from the queue
- delete_message: Delete a message from the queue

Examples

Send message to SQS queue

Queue a task message for asynchronous processing

type: aws_sqs
aws_access_key_id: ${env:AWS_ACCESS_KEY_ID}
aws_secret_access_key: ${env:AWS_SECRET_ACCESS_KEY}
region: us-east-1
queue_url: https://sqs.us-east-1.amazonaws.com/123456789012/my-queue
operation: send_message
message_body: '{"task": "process_order", "order_id": "12345"}'
output_to: sqs_result

Send delayed message with attributes

Send message with delay and custom attributes for filtering

type: aws_sqs
aws_access_key_id: ${env:AWS_ACCESS_KEY_ID}
aws_secret_access_key: ${env:AWS_SECRET_ACCESS_KEY}
region: us-east-1
queue_url: https://sqs.us-east-1.amazonaws.com/123456789012/tasks-queue
operation: send_message
message_body: Send reminder email
delay_seconds: 300
message_attributes:
  priority:
    DataType: String
    StringValue: high
  source:
    DataType: String
    StringValue: workflow

Receive messages from queue

Poll SQS queue for new messages with long polling

type: aws_sqs
aws_access_key_id: ${env:AWS_ACCESS_KEY_ID}
aws_secret_access_key: ${env:AWS_SECRET_ACCESS_KEY}
region: us-east-1
queue_url: https://sqs.us-east-1.amazonaws.com/123456789012/incoming-queue
operation: receive_message
max_messages: 10
wait_time_seconds: 20
output_to: received_messages

Delete processed message

Remove message from queue after successful processing

type: aws_sqs
aws_access_key_id: ${env:AWS_ACCESS_KEY_ID}
aws_secret_access_key: ${env:AWS_SECRET_ACCESS_KEY}
region: us-east-1
queue_url: https://sqs.us-east-1.amazonaws.com/123456789012/my-queue
operation: delete_message
receipt_handle: ${received_messages.Messages[0].ReceiptHandle}
output_to: delete_result

Configuration

Parameter Type Required Description
type string No
Default: "aws_sqs"
aws_access_key_id string Yes AWS access key ID for authentication
aws_secret_access_key string Yes AWS secret access key for authentication
region string Yes AWS region where the SQS queue is located (e.g., 'us-east-1')
queue_url string Yes Full URL of the SQS queue
operation string Yes Operation to perform: 'send_message', 'receive_message', or 'delete_message'
Options: send_message, receive_message, delete_message
message_body string No Message body to send (required for send_message operation)
message_attributes string No Optional message attributes as key-value pairs
delay_seconds integer No Delay in seconds before message becomes visible (0-900)
Default: 0
max_messages integer No Maximum number of messages to receive (1-10)
Default: 1
wait_time_seconds integer No Long polling wait time in seconds (0-20)
Default: 0
receipt_handle string No Receipt handle of message to delete (required for delete_message operation)
timeout integer No Operation timeout in seconds
Default: 30
output_to string No Event key where operation results will be stored
Default: "sqs"

Base Configuration

These configuration options are available on all steps:

Parameter Type Default Description
name null Optional name for this step (for documentation and debugging)
description null Optional description of what this step does
retries integer 0 Number of retry attempts (0-10)
backoff_seconds number 0 Backoff (seconds) applied between retry attempts
retry_propagate boolean false If True, raise last exception after exhausting retries; otherwise swallow.