Skip to main content

ISQSSetQueueAttributesRequest

Interface in AWS.SQS

Interface for SetQueueAttributes requests.

Ancestors

Properties

Attributes

property Attributes: TDictionary<string, string>

A map of queue attributes to set with their corresponding values.

Attribute changes can take up to 60 seconds to propagate throughout the Amazon SQS system. Changes to MessageRetentionPeriod can take up to 15 minutes and may impact existing messages in the queue, potentially causing them to be expired and deleted if the retention period is reduced below the age of existing messages. Standard queue attributes:

  • DelaySeconds – Delivery delay for all messages in the queue. Valid values: 0-900 seconds (15 minutes). Default: 0.
  • MaximumMessageSize – Maximum message size before rejection. Valid values: 1,024 bytes (1 KiB) to 1,048,576 bytes (1 MiB). Default: 1 MiB.
  • MessageRetentionPeriod – Message retention time in the queue. Valid values: 60 seconds (1 minute) to 1,209,600 seconds (14 days). Default: 345,600 seconds (4 days).
  • VisibilityTimeout – Message visibility timeout after retrieval. Valid values: 0-43,200 seconds (12 hours). Default: 30 seconds.
  • ReceiveMessageWaitTimeSeconds – Long polling wait time for ReceiveMessage operations. Valid values: 0-20 seconds. Default: 0 (short polling).
  • Policy – Queue access policy as a valid AWS IAM policy JSON string. Dead-letter queue attributes:
  • RedrivePolicy – JSON configuration for dead-letter queue functionality. Contains deadLetterTargetArn and maxReceiveCount parameters.
  • RedriveAllowPolicy – JSON configuration for dead-letter queue redrive permissions. Contains redrivePermission (allowAll, denyAll, byQueue) and optional sourceQueueArns parameters. Server-side encryption attributes:
  • KmsMasterKeyId – AWS KMS customer master key (CMK) ID for encryption. Can be AWS-managed (alias/aws/sqs) or customer-managed key alias/ARN.
  • KmsDataKeyReusePeriodSeconds – Data key reuse period for encryption/decryption operations. Valid values: 60-86,400 seconds (1 minute to 24 hours). Default: 300 seconds (5 minutes).
  • SqsManagedSseEnabled – Enables server-side encryption using SQS-owned encryption keys. Only one encryption option per queue is supported. FIFO queue attributes:
  • ContentBasedDeduplication – Enables automatic message deduplication using SHA-256 hash of message body. Applies only to FIFO queues.
  • DeduplicationScope – Deduplication scope level. Valid values: messageGroup or queue. Used for high-throughput FIFO configurations.
  • FifoThroughputLimit – Throughput quota scope. Valid values: perQueue or perMessageGroupId. perMessageGroupId requires DeduplicationScope set to messageGroup. For high-throughput FIFO queues, set DeduplicationScope to messageGroup and FifoThroughputLimit to perMessageGroupId. Dead-letter queues must match the source queue type (FIFO or standard). Cross-account permissions do not apply to this operation. To remove queue permission modification capabilities, deny AddPermission, RemovePermission, and SetQueueAttributes actions in IAM policies.

Methods

AddAttribute

procedure AddAttribute(const AName, AValue: string);

Add a name/value pair to Attributes.

Parameters

NameDescription
ANameSpecify the name of the attribute to add to Attributes.
AValueSpecify the value of that attribute to add to Attributes.