AwsSqsArgs
interface AwsSqsArgs extends Omit<aws.sqs.QueueArgs, 'fifoQueue' | 'kmsMasterKeyId' | 'name' | 'redrivePolicy' | 'sqsManagedSseEnabled' | 'tags'> {
contentBasedDeduplication?: Input<boolean | undefined>;
deadLetterQueue?: AwsSqsDeadLetterQueueArgs;
deduplicationScope?: Input<string | undefined>;
delaySeconds?: Input<number | undefined>;
fifoThroughputLimit?: Input<string | undefined>;
kmsDataKeyReusePeriodSeconds?: Input<number | undefined>;
kmsKey?: AwsKmsKeyInput;
maxMessageSize?: Input<number | undefined>;
messageRetentionSeconds?: Input<number | undefined>;
name: string;
namePrefix?: Input<string | undefined>;
policy?: Input<string | undefined>;
queuePolicy?: AwsSqsQueuePolicyTemplateArgs;
queueType?: AwsSqsQueueType;
receiveWaitTimeSeconds?: Input<number | undefined>;
redriveAllowPolicy?: Input<string | undefined>;
region?: Input<string | undefined>;
tags?: Input<Record<string, Input<string>>>;
visibilityTimeoutSeconds?: Input<number | undefined>;
}Input arguments for AwsSqs.
Remarks
This type extends aws.sqs.QueueArgs with service-level naming, queue-type controls, and optional dead-letter queue orchestration.
Differences from the raw AWS provider resource:
nameis required and used as a stackAndPurpose naming purposequeueTypecontrolsfifoQueueand queue-name suffixingdeadLetterQueuecontrols DLQ creation andredrivePolicyqueuePolicycontrols optional queue-policy creation from a JSON template filesqsManagedSseEnabledis managed by the component to enforce encryption-safe defaults- when
kmsKeyis omitted, the component enables SQS-managed SSE by default; whenkmsKeyis provided, that key configuration is used
Example
const queue = new AwsSqs({
name: 'orders',
queueType: 'fifo',
contentBasedDeduplication: true,
deadLetterQueue: {
maxReceiveCount: 10,
},
});Hierarchy
QueueArgs, "fifoQueue" | "kmsMasterKeyId" | "name" | "redrivePolicy" | "sqsManagedSseEnabled" | "tags">AwsSqsArgs
Properties
contentBasedDeduplication: Input<boolean | undefined>
Inherited from contentBasedDeduplication
Enables content-based deduplication for FIFO queues. For more information, see the related documentation.
deadLetterQueue: AwsSqsDeadLetterQueueArgs
Dead-letter queue configuration. When set, the component creates and wires a managed DLQ.
deduplicationScope: Input<string | undefined>
Inherited from deduplicationScope
Specifies whether message deduplication occurs at the message group or queue level. Valid values are messageGroup and queue (default).
delaySeconds: Input<number | undefined>
Inherited from delaySeconds
Time in seconds that the delivery of all messages in the queue will be delayed. An integer from 0 to 900 (15 minutes). The default for this attribute is 0 seconds.
fifoThroughputLimit: Input<string | undefined>
Inherited from fifoThroughputLimit
Specifies whether the FIFO queue throughput quota applies to the entire queue or per message group. Valid values are perQueue (default) and perMessageGroupId.
kmsDataKeyReusePeriodSeconds: Input<number | undefined>
Inherited from kmsDataKeyReusePeriodSeconds
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). The default is 300 (5 minutes).
kmsKey: AwsKmsKeyInput
Optional customer-managed KMS key used for queue encryption.
maxMessageSize: Input<number | undefined>
Inherited from maxMessageSize
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).
messageRetentionSeconds: Input<number | undefined>
Inherited from messageRetentionSeconds
Number of seconds Amazon SQS retains a message. Integer representing seconds, from 60 (1 minute) to 1209600 (14 days). The default for this attribute is 345600 (4 days).
name: string
Required queue purpose input used to build a stackAndPurpose AWS queue name.
This value is also the synchronous plain-string source for component logical identity generation. It must be provided as a plain string and must not be supplied as a Pulumi Input/Output or promise-derived value.
namePrefix: Input<string | undefined>
Inherited from namePrefix
Creates a unique name beginning with the specified prefix. Conflicts with name.
policy: Input<string | undefined>
Inherited from policy
JSON policy for the SQS queue. For more information about building AWS IAM policy documents see the AWS IAM Policy Document Guide. The provider will only perform drift detection of its value when present in a configuration. It is preferred to use the aws.sqs.QueuePolicy resource instead.
queuePolicy: AwsSqsQueuePolicyTemplateArgs
Optional queue policy JSON template rendered with queue outputs and custom variables.
Reserved template variables queueArn and queueName are injected by the component and must not be provided in variables. Literal string variables must be non-empty.
queueType: AwsSqsQueueType
Queue type. Defaults to standard.
receiveWaitTimeSeconds: Input<number | undefined>
Inherited from receiveWaitTimeSeconds
Time for which a ReceiveMessage call will wait for a message to arrive (long polling) before returning. An integer from 0 to 20 (seconds). The default for this attribute is 0, meaning that the call will return immediately.
redriveAllowPolicy: Input<string | undefined>
Inherited from redriveAllowPolicy
JSON policy to set up the Dead Letter Queue redrive permission, see AWS docs. The provider will only perform drift detection of its value when present in a configuration. It is preferred to use the aws.sqs.RedriveAllowPolicy resource instead.
region: Input<string | undefined>
Inherited from region
Region where this resource will be managed. Defaults to the Region set in the provider configuration.
tags: Input<Record<string, Input<string>>>
Additional tags merged with default project/environment tags.
visibilityTimeoutSeconds: Input<number | undefined>
Inherited from visibilityTimeoutSeconds
Visibility timeout for the queue. An integer from 0 to 43200 (12 hours). The default for this attribute is 30. For more information about visibility timeout, see AWS docs.