SQS
Terraform module to create AWS SQS resources
Inputs
40 / 42
content_based_deduplicationoptionalboolEnables content-based deduplication for FIFO queues
nullcreateoptionalboolWhether to create SQS queue
truecreate_dlqoptionalboolDetermines whether to create SQS dead letter queue
falsecreate_dlq_queue_policyoptionalboolWhether to create SQS queue policy
falsecreate_dlq_redrive_allow_policyoptionalboolDetermines whether to create a redrive allow policy for the dead letter queue
truecreate_queue_policyoptionalboolWhether to create SQS queue policy
falsededuplication_scopeoptionalstringSpecifies whether message deduplication occurs at the message group or queue level
nulldelay_secondsoptionalnumberThe time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes)
nulldlq_content_based_deduplicationoptionalboolEnables content-based deduplication for FIFO queues
nulldlq_deduplication_scopeoptionalstringSpecifies whether message deduplication occurs at the message group or queue level
nulldlq_delay_secondsoptionalnumberThe time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes)
nulldlq_fifo_throughput_limitoptionalstringSpecifies whether the Dead Letter Queue FIFO queue throughput quota applies to the entire queue or per message group
nulldlq_kms_data_key_reuse_period_secondsoptionalnumberThe length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours)
nulldlq_kms_master_key_idoptionalstringThe ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK
nulldlq_message_retention_secondsoptionalnumberThe number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days)
nulldlq_nameoptionalstringThis is the human-readable name of the queue. If omitted, Terraform will assign a random name
nulldlq_queue_policy_statementsoptionalmap(object({ sid = optional(string) actions = optional(list(string)) not_actions…A map of IAM policy [statements](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document#statement) for custom permission usage
nulldlq_receive_wait_time_secondsoptionalnumberThe time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds)
nulldlq_redrive_allow_policyoptionalanyThe JSON policy to set up the Dead Letter Queue redrive permission, see AWS docs
{}dlq_sqs_managed_sse_enabledoptionalboolBoolean to enable server-side encryption (SSE) of message content with SQS-owned encryption keys
truedlq_tagsoptionalmap(string)A mapping of additional tags to assign to the dead letter queue
{}dlq_visibility_timeout_secondsoptionalnumberThe visibility timeout for the queue. An integer from 0 to 43200 (12 hours)
nullfifo_queueoptionalboolBoolean designating a FIFO queue
falsefifo_throughput_limitoptionalstringSpecifies whether the FIFO queue throughput quota applies to the entire queue or per message group
nullkms_data_key_reuse_period_secondsoptionalnumberThe length of time, in seconds, for which Amazon SQS can reuse a data key to encrypt or decrypt messages before calling AWS KMS again. An integer representing seconds, between 60 seconds (1 minute) and 86,400 seconds (24 hours)
nullkms_master_key_idoptionalstringThe ID of an AWS-managed customer master key (CMK) for Amazon SQS or a custom CMK
nullmax_message_sizeoptionalnumberThe limit of how many bytes a message can contain before Amazon SQS rejects it. An integer from 1024 bytes (1 KiB) up to 1048576 bytes (1024 KiB). The default for this attribute is 262144 (256 KiB)
nullmessage_retention_secondsoptionalnumberThe number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days)
nullnameoptionalstringThis is the human-readable name of the queue. If omitted, Terraform will assign a random name
nulloverride_dlq_queue_policy_documentsoptionallist(string)List of IAM policy documents that are merged together into the exported document. In merging, statements with non-blank `sid`s will override statements with the same `sid`
[]override_queue_policy_documentsoptionallist(string)List of IAM policy documents that are merged together into the exported document. In merging, statements with non-blank `sid`s will override statements with the same `sid`
[]queue_policy_statementsoptionalmap(object({ sid = optional(string) actions = optional(list(string)) not_actions…A map of IAM policy [statements](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_policy_document#statement) for custom permission usage
nullreceive_wait_time_secondsoptionalnumberThe time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds)
nullredrive_allow_policyoptionalanyThe JSON policy to set up the Dead Letter Queue redrive permission, see AWS docs
{}redrive_policyoptionalanyThe JSON policy to set up the Dead Letter Queue, see AWS docs. Note: when specifying maxReceiveCount, you must specify it as an integer (5), and not a string ("5")
{}regionoptionalstringRegion where the resource(s) will be managed. Defaults to the Region set in the provider configuration
nullsource_dlq_queue_policy_documentsoptionallist(string)List of IAM policy documents that are merged together into the exported document. Statements must have unique `sid`s
[]source_queue_policy_documentsoptionallist(string)List of IAM policy documents that are merged together into the exported document. Statements must have unique `sid`s
[]sqs_managed_sse_enabledoptionalboolBoolean to enable server-side encryption (SSE) of message content with SQS-owned encryption keys
truetagsoptionalmap(string)A mapping of tags to assign to all resources
{}All 42 are optional — the module deploys with none of them set. Showing 40, so the site stays a static download — the remaining 2 are in the source.
Outputs
10
dead_letter_queue_arnThe ARN of the SQS queue
dead_letter_queue_arn_staticThe ARN of the SQS queue. Use this to avoid cycle errors between resources (e.g., Step Functions)
dead_letter_queue_idThe URL for the created Amazon SQS queue
dead_letter_queue_nameThe name of the SQS queue
dead_letter_queue_urlSame as `dead_letter_queue_id`: The URL for the created Amazon SQS queue
queue_arnThe ARN of the SQS queue
queue_arn_staticThe ARN of the SQS queue. Use this to avoid cycle errors between resources (e.g., Step Functions)
queue_idThe URL for the created Amazon SQS queue
queue_nameThe name of the SQS queue
queue_urlSame as `queue_id`: The URL for the created Amazon SQS queue
What the agent wires into the next module. An edge on the architecture diagram is one of these consumed by something else.