aws-sdk-sqs 1.65.0 → 1.107.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -67,15 +67,29 @@ module Aws::SQS
67
67
 
68
68
  # Two or more batch entries in the request have the same `Id`.
69
69
  #
70
+ # @!attribute [rw] message
71
+ # @return [String]
72
+ #
70
73
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchEntryIdsNotDistinct AWS API Documentation
71
74
  #
72
- class BatchEntryIdsNotDistinct < Aws::EmptyStructure; end
75
+ class BatchEntryIdsNotDistinct < Struct.new(
76
+ :message)
77
+ SENSITIVE = []
78
+ include Aws::Structure
79
+ end
73
80
 
74
81
  # The length of all the messages put together is more than the limit.
75
82
  #
83
+ # @!attribute [rw] message
84
+ # @return [String]
85
+ #
76
86
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/BatchRequestTooLong AWS API Documentation
77
87
  #
78
- class BatchRequestTooLong < Aws::EmptyStructure; end
88
+ class BatchRequestTooLong < Struct.new(
89
+ :message)
90
+ SENSITIVE = []
91
+ include Aws::Structure
92
+ end
79
93
 
80
94
  # Gives a detailed description of the result of an action on each entry
81
95
  # in the request.
@@ -277,8 +291,8 @@ module Aws::SQS
277
291
  #
278
292
  # * `MaximumMessageSize` – The limit of how many bytes a message can
279
293
  # contain before Amazon SQS rejects it. Valid values: An integer
280
- # from 1,024 bytes (1 KiB) to 262,144 bytes (256 KiB). Default:
281
- # 262,144 (256 KiB).
294
+ # from 1,024 bytes (1 KiB) to 1,048,576 bytes (1 MiB). Default:
295
+ # 1,048,576 bytes (1 MiB).
282
296
  #
283
297
  # * `MessageRetentionPeriod` – The length of time, in seconds, for
284
298
  # which Amazon SQS retains a message. Valid values: An integer from
@@ -320,7 +334,6 @@ module Aws::SQS
320
334
  # Default: 10. When the `ReceiveCount` for a message exceeds the
321
335
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
322
336
  # the dead-letter-queue.
323
- #
324
337
  # * `RedriveAllowPolicy` – The string that includes the parameters for
325
338
  # the permissions for the dead-letter queue redrive permission and
326
339
  # which source queues can specify dead-letter queues as a JSON
@@ -339,7 +352,6 @@ module Aws::SQS
339
352
  #
340
353
  # * `byQueue` – Only queues specified by the `sourceQueueArns`
341
354
  # parameter can specify this queue as the dead-letter queue.
342
- #
343
355
  # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
344
356
  # source queues that can specify this queue as the dead-letter
345
357
  # queue and redrive messages. You can specify this parameter only
@@ -412,7 +424,6 @@ module Aws::SQS
412
424
  #
413
425
  # * If the queue has `ContentBasedDeduplication` set, your
414
426
  # `MessageDeduplicationId` overrides the generated one.
415
- #
416
427
  # * When `ContentBasedDeduplication` is in effect, messages with
417
428
  # identical content sent within the deduplication interval are
418
429
  # treated as duplicates and only one copy of the message is
@@ -646,9 +657,16 @@ module Aws::SQS
646
657
 
647
658
  # The batch request doesn't contain any entries.
648
659
  #
660
+ # @!attribute [rw] message
661
+ # @return [String]
662
+ #
649
663
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/EmptyBatchRequest AWS API Documentation
650
664
  #
651
- class EmptyBatchRequest < Aws::EmptyStructure; end
665
+ class EmptyBatchRequest < Struct.new(
666
+ :message)
667
+ SENSITIVE = []
668
+ include Aws::Structure
669
+ end
652
670
 
653
671
  # @!attribute [rw] queue_url
654
672
  # The URL of the Amazon SQS queue whose attribute information is
@@ -745,7 +763,6 @@ module Aws::SQS
745
763
  # Default: 10. When the `ReceiveCount` for a message exceeds the
746
764
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
747
765
  # the dead-letter-queue.
748
- #
749
766
  # * `RedriveAllowPolicy` – The string that includes the parameters for
750
767
  # the permissions for the dead-letter queue redrive permission and
751
768
  # which source queues can specify dead-letter queues as a JSON
@@ -764,7 +781,6 @@ module Aws::SQS
764
781
  #
765
782
  # * `byQueue` – Only queues specified by the `sourceQueueArns`
766
783
  # parameter can specify this queue as the dead-letter queue.
767
- #
768
784
  # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
769
785
  # source queues that can specify this queue as the dead-letter
770
786
  # queue and redrive messages. You can specify this parameter only
@@ -877,17 +893,20 @@ module Aws::SQS
877
893
  include Aws::Structure
878
894
  end
879
895
 
880
- # @!attribute [rw] queue_name
881
- # The name of the queue whose URL must be fetched. Maximum 80
882
- # characters. Valid values: alphanumeric characters, hyphens (`-`),
883
- # and underscores (`_`).
896
+ # Retrieves the URL of an existing queue based on its name and,
897
+ # optionally, the Amazon Web Services account ID.
884
898
  #
885
- # Queue URLs and names are case-sensitive.
899
+ # @!attribute [rw] queue_name
900
+ # (Required) The name of the queue for which you want to fetch the
901
+ # URL. The name can be up to 80 characters long and can include
902
+ # alphanumeric characters, hyphens (-), and underscores (\_). Queue
903
+ # URLs and names are case-sensitive.
886
904
  # @return [String]
887
905
  #
888
906
  # @!attribute [rw] queue_owner_aws_account_id
889
- # The Amazon Web Services account ID of the account that created the
890
- # queue.
907
+ # (Optional) The Amazon Web Services account ID of the account that
908
+ # created the queue. This is only required when you are attempting to
909
+ # access a queue owned by another Amazon Web Services account.
891
910
  # @return [String]
892
911
  #
893
912
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/GetQueueUrlRequest AWS API Documentation
@@ -918,18 +937,58 @@ module Aws::SQS
918
937
  include Aws::Structure
919
938
  end
920
939
 
940
+ # The specified ID is invalid.
941
+ #
942
+ # @!attribute [rw] message
943
+ # @return [String]
944
+ #
945
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAddress AWS API Documentation
946
+ #
947
+ class InvalidAddress < Struct.new(
948
+ :message)
949
+ SENSITIVE = []
950
+ include Aws::Structure
951
+ end
952
+
921
953
  # The specified attribute doesn't exist.
922
954
  #
955
+ # @!attribute [rw] message
956
+ # @return [String]
957
+ #
923
958
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeName AWS API Documentation
924
959
  #
925
- class InvalidAttributeName < Aws::EmptyStructure; end
960
+ class InvalidAttributeName < Struct.new(
961
+ :message)
962
+ SENSITIVE = []
963
+ include Aws::Structure
964
+ end
965
+
966
+ # A queue attribute value is invalid.
967
+ #
968
+ # @!attribute [rw] message
969
+ # @return [String]
970
+ #
971
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidAttributeValue AWS API Documentation
972
+ #
973
+ class InvalidAttributeValue < Struct.new(
974
+ :message)
975
+ SENSITIVE = []
976
+ include Aws::Structure
977
+ end
926
978
 
927
979
  # The `Id` of a batch entry in a batch request doesn't abide by the
928
980
  # specification.
929
981
  #
982
+ # @!attribute [rw] message
983
+ # @return [String]
984
+ #
930
985
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidBatchEntryId AWS API Documentation
931
986
  #
932
- class InvalidBatchEntryId < Aws::EmptyStructure; end
987
+ class InvalidBatchEntryId < Struct.new(
988
+ :message)
989
+ SENSITIVE = []
990
+ include Aws::Structure
991
+ end
933
992
 
934
993
  # The specified receipt handle isn't valid for the current version.
935
994
  #
@@ -939,9 +998,131 @@ module Aws::SQS
939
998
 
940
999
  # The message contains characters outside the allowed set.
941
1000
  #
1001
+ # @!attribute [rw] message
1002
+ # @return [String]
1003
+ #
942
1004
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidMessageContents AWS API Documentation
943
1005
  #
944
- class InvalidMessageContents < Aws::EmptyStructure; end
1006
+ class InvalidMessageContents < Struct.new(
1007
+ :message)
1008
+ SENSITIVE = []
1009
+ include Aws::Structure
1010
+ end
1011
+
1012
+ # The request was not made over HTTPS or did not use SigV4 for signing.
1013
+ #
1014
+ # @!attribute [rw] message
1015
+ # @return [String]
1016
+ #
1017
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/InvalidSecurity AWS API Documentation
1018
+ #
1019
+ class InvalidSecurity < Struct.new(
1020
+ :message)
1021
+ SENSITIVE = []
1022
+ include Aws::Structure
1023
+ end
1024
+
1025
+ # The caller doesn't have the required KMS access.
1026
+ #
1027
+ # @!attribute [rw] message
1028
+ # @return [String]
1029
+ #
1030
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsAccessDenied AWS API Documentation
1031
+ #
1032
+ class KmsAccessDenied < Struct.new(
1033
+ :message)
1034
+ SENSITIVE = []
1035
+ include Aws::Structure
1036
+ end
1037
+
1038
+ # The request was denied due to request throttling.
1039
+ #
1040
+ # @!attribute [rw] message
1041
+ # @return [String]
1042
+ #
1043
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsDisabled AWS API Documentation
1044
+ #
1045
+ class KmsDisabled < Struct.new(
1046
+ :message)
1047
+ SENSITIVE = []
1048
+ include Aws::Structure
1049
+ end
1050
+
1051
+ # The request was rejected for one of the following reasons:
1052
+ #
1053
+ # * The KeyUsage value of the KMS key is incompatible with the API
1054
+ # operation.
1055
+ #
1056
+ # * The encryption algorithm or signing algorithm specified for the
1057
+ # operation is incompatible with the type of key material in the KMS
1058
+ # key (KeySpec).
1059
+ #
1060
+ # @!attribute [rw] message
1061
+ # @return [String]
1062
+ #
1063
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidKeyUsage AWS API Documentation
1064
+ #
1065
+ class KmsInvalidKeyUsage < Struct.new(
1066
+ :message)
1067
+ SENSITIVE = []
1068
+ include Aws::Structure
1069
+ end
1070
+
1071
+ # The request was rejected because the state of the specified resource
1072
+ # is not valid for this request.
1073
+ #
1074
+ # @!attribute [rw] message
1075
+ # @return [String]
1076
+ #
1077
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsInvalidState AWS API Documentation
1078
+ #
1079
+ class KmsInvalidState < Struct.new(
1080
+ :message)
1081
+ SENSITIVE = []
1082
+ include Aws::Structure
1083
+ end
1084
+
1085
+ # The request was rejected because the specified entity or resource
1086
+ # could not be found.
1087
+ #
1088
+ # @!attribute [rw] message
1089
+ # @return [String]
1090
+ #
1091
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsNotFound AWS API Documentation
1092
+ #
1093
+ class KmsNotFound < Struct.new(
1094
+ :message)
1095
+ SENSITIVE = []
1096
+ include Aws::Structure
1097
+ end
1098
+
1099
+ # The request was rejected because the specified key policy isn't
1100
+ # syntactically or semantically correct.
1101
+ #
1102
+ # @!attribute [rw] message
1103
+ # @return [String]
1104
+ #
1105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsOptInRequired AWS API Documentation
1106
+ #
1107
+ class KmsOptInRequired < Struct.new(
1108
+ :message)
1109
+ SENSITIVE = []
1110
+ include Aws::Structure
1111
+ end
1112
+
1113
+ # Amazon Web Services KMS throttles requests for the following
1114
+ # conditions.
1115
+ #
1116
+ # @!attribute [rw] message
1117
+ # @return [String]
1118
+ #
1119
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/KmsThrottled AWS API Documentation
1120
+ #
1121
+ class KmsThrottled < Struct.new(
1122
+ :message)
1123
+ SENSITIVE = []
1124
+ include Aws::Structure
1125
+ end
945
1126
 
946
1127
  # @!attribute [rw] queue_url
947
1128
  # The URL of a dead-letter queue.
@@ -1062,8 +1243,9 @@ module Aws::SQS
1062
1243
  #
1063
1244
  # @!attribute [rw] approximate_number_of_messages_to_move
1064
1245
  # The number of messages to be moved from the source queue. This
1065
- # number is obtained at the time of starting the message movement
1066
- # task.
1246
+ # number is obtained at the time of starting the message movement task
1247
+ # and is only included after the message movement task is selected to
1248
+ # start.
1067
1249
  # @return [Integer]
1068
1250
  #
1069
1251
  # @!attribute [rw] failure_reason
@@ -1256,8 +1438,8 @@ module Aws::SQS
1256
1438
  #
1257
1439
  # `Name`, `type`, `value` and the message body must not be empty or
1258
1440
  # null. All parts of the message attribute, including `Name`, `Type`,
1259
- # and `Value`, are part of the message size restriction (256 KiB or
1260
- # 262,144 bytes).
1441
+ # and `Value`, are part of the message size restriction (1 MiB or
1442
+ # 1,048,576 bytes).
1261
1443
  #
1262
1444
  # @!attribute [rw] string_value
1263
1445
  # Strings are Unicode with UTF-8 binary encoding. For a list of code
@@ -1371,17 +1553,31 @@ module Aws::SQS
1371
1553
  # reached and `AddPermission` returns this error if the maximum number
1372
1554
  # of permissions for the queue is reached.
1373
1555
  #
1556
+ # @!attribute [rw] message
1557
+ # @return [String]
1558
+ #
1374
1559
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/OverLimit AWS API Documentation
1375
1560
  #
1376
- class OverLimit < Aws::EmptyStructure; end
1561
+ class OverLimit < Struct.new(
1562
+ :message)
1563
+ SENSITIVE = []
1564
+ include Aws::Structure
1565
+ end
1377
1566
 
1378
1567
  # Indicates that the specified queue previously received a `PurgeQueue`
1379
1568
  # request within the last 60 seconds (the time it can take to delete the
1380
1569
  # messages in the queue).
1381
1570
  #
1571
+ # @!attribute [rw] message
1572
+ # @return [String]
1573
+ #
1382
1574
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/PurgeQueueInProgress AWS API Documentation
1383
1575
  #
1384
- class PurgeQueueInProgress < Aws::EmptyStructure; end
1576
+ class PurgeQueueInProgress < Struct.new(
1577
+ :message)
1578
+ SENSITIVE = []
1579
+ include Aws::Structure
1580
+ end
1385
1581
 
1386
1582
  # @!attribute [rw] queue_url
1387
1583
  # The URL of the queue from which the `PurgeQueue` action deletes
@@ -1401,30 +1597,61 @@ module Aws::SQS
1401
1597
  # You must wait 60 seconds after deleting a queue before you can create
1402
1598
  # another queue with the same name.
1403
1599
  #
1600
+ # @!attribute [rw] message
1601
+ # @return [String]
1602
+ #
1404
1603
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDeletedRecently AWS API Documentation
1405
1604
  #
1406
- class QueueDeletedRecently < Aws::EmptyStructure; end
1605
+ class QueueDeletedRecently < Struct.new(
1606
+ :message)
1607
+ SENSITIVE = []
1608
+ include Aws::Structure
1609
+ end
1407
1610
 
1408
- # The specified queue doesn't exist.
1611
+ # Ensure that the `QueueUrl` is correct and that the queue has not been
1612
+ # deleted.
1613
+ #
1614
+ # @!attribute [rw] message
1615
+ # @return [String]
1409
1616
  #
1410
1617
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueDoesNotExist AWS API Documentation
1411
1618
  #
1412
- class QueueDoesNotExist < Aws::EmptyStructure; end
1619
+ class QueueDoesNotExist < Struct.new(
1620
+ :message)
1621
+ SENSITIVE = []
1622
+ include Aws::Structure
1623
+ end
1413
1624
 
1414
1625
  # A queue with this name already exists. Amazon SQS returns this error
1415
1626
  # only if the request includes attributes whose values differ from those
1416
1627
  # of the existing queue.
1417
1628
  #
1629
+ # @!attribute [rw] message
1630
+ # @return [String]
1631
+ #
1418
1632
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/QueueNameExists AWS API Documentation
1419
1633
  #
1420
- class QueueNameExists < Aws::EmptyStructure; end
1634
+ class QueueNameExists < Struct.new(
1635
+ :message)
1636
+ SENSITIVE = []
1637
+ include Aws::Structure
1638
+ end
1421
1639
 
1422
1640
  # The specified receipt handle isn't valid.
1423
1641
  #
1642
+ # @!attribute [rw] message
1643
+ # @return [String]
1644
+ #
1424
1645
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ReceiptHandleIsInvalid AWS API Documentation
1425
1646
  #
1426
- class ReceiptHandleIsInvalid < Aws::EmptyStructure; end
1647
+ class ReceiptHandleIsInvalid < Struct.new(
1648
+ :message)
1649
+ SENSITIVE = []
1650
+ include Aws::Structure
1651
+ end
1427
1652
 
1653
+ # Retrieves one or more messages from a specified queue.
1654
+ #
1428
1655
  # @!attribute [rw] queue_url
1429
1656
  # The URL of the Amazon SQS queue from which messages are received.
1430
1657
  #
@@ -1432,6 +1659,10 @@ module Aws::SQS
1432
1659
  # @return [String]
1433
1660
  #
1434
1661
  # @!attribute [rw] attribute_names
1662
+ # This parameter has been discontinued but will be supported for
1663
+ # backward compatibility. To provide attribute names, you are
1664
+ # encouraged to use `MessageSystemAttributeNames`.
1665
+ #
1435
1666
  # A list of attributes that need to be returned along with each
1436
1667
  # message. These attributes include:
1437
1668
  #
@@ -1453,7 +1684,51 @@ module Aws::SQS
1453
1684
  #
1454
1685
  # * For an IAM role, returns the IAM role ID, for example
1455
1686
  # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1687
+ # * `SentTimestamp` – Returns the time the message was sent to the
1688
+ # queue ([epoch time][1] in milliseconds).
1689
+ #
1690
+ # * `SqsManagedSseEnabled` – Enables server-side queue encryption
1691
+ # using SQS owned encryption keys. Only one server-side encryption
1692
+ # option is supported per queue (for example, [SSE-KMS][2] or
1693
+ # [SSE-SQS][3]).
1694
+ #
1695
+ # * `MessageDeduplicationId` – Returns the value provided by the
1696
+ # producer that calls the ` SendMessage ` action.
1697
+ #
1698
+ # * `MessageGroupId` – Returns the value provided by the producer that
1699
+ # calls the ` SendMessage ` action.
1700
+ #
1701
+ # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1702
+ #
1703
+ #
1704
+ #
1705
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
1706
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1707
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1708
+ # @return [Array<String>]
1709
+ #
1710
+ # @!attribute [rw] message_system_attribute_names
1711
+ # A list of attributes that need to be returned along with each
1712
+ # message. These attributes include:
1713
+ #
1714
+ # * `All` – Returns all values.
1715
+ #
1716
+ # * `ApproximateFirstReceiveTimestamp` – Returns the time the message
1717
+ # was first received from the queue ([epoch time][1] in
1718
+ # milliseconds).
1719
+ #
1720
+ # * `ApproximateReceiveCount` – Returns the number of times a message
1721
+ # has been received across all queues but not deleted.
1722
+ #
1723
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1724
+ #
1725
+ # * `SenderId`
1456
1726
  #
1727
+ # * For a user, returns the user ID, for example
1728
+ # `ABCDEFGHI1JKLMNOPQ23R`.
1729
+ #
1730
+ # * For an IAM role, returns the IAM role ID, for example
1731
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1457
1732
  # * `SentTimestamp` – Returns the time the message was sent to the
1458
1733
  # queue ([epoch time][1] in milliseconds).
1459
1734
  #
@@ -1466,8 +1741,7 @@ module Aws::SQS
1466
1741
  # producer that calls the ` SendMessage ` action.
1467
1742
  #
1468
1743
  # * `MessageGroupId` – Returns the value provided by the producer that
1469
- # calls the ` SendMessage ` action. Messages with the same
1470
- # `MessageGroupId` are returned in sequence.
1744
+ # calls the ` SendMessage ` action.
1471
1745
  #
1472
1746
  # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1473
1747
  #
@@ -1510,15 +1784,49 @@ module Aws::SQS
1510
1784
  # @!attribute [rw] visibility_timeout
1511
1785
  # The duration (in seconds) that the received messages are hidden from
1512
1786
  # subsequent retrieve requests after being retrieved by a
1513
- # `ReceiveMessage` request.
1787
+ # `ReceiveMessage` request. If not specified, the default visibility
1788
+ # timeout for the queue is used, which is 30 seconds.
1789
+ #
1790
+ # Understanding `VisibilityTimeout`:
1791
+ #
1792
+ # * When a message is received from a queue, it becomes temporarily
1793
+ # invisible to other consumers for the duration of the visibility
1794
+ # timeout. This prevents multiple consumers from processing the same
1795
+ # message simultaneously. If the message is not deleted or its
1796
+ # visibility timeout is not extended before the timeout expires, it
1797
+ # becomes visible again and can be retrieved by other consumers.
1798
+ #
1799
+ # * Setting an appropriate visibility timeout is crucial. If it's too
1800
+ # short, the message might become visible again before processing is
1801
+ # complete, leading to duplicate processing. If it's too long, it
1802
+ # delays the reprocessing of messages if the initial processing
1803
+ # fails.
1804
+ #
1805
+ # * You can adjust the visibility timeout using the
1806
+ # `--visibility-timeout` parameter in the `receive-message` command
1807
+ # to match the processing time required by your application.
1808
+ #
1809
+ # * A message that isn't deleted or a message whose visibility isn't
1810
+ # extended before the visibility timeout expires counts as a failed
1811
+ # receive. Depending on the configuration of the queue, the message
1812
+ # might be sent to the dead-letter queue.
1813
+ #
1814
+ # For more information, see [Visibility Timeout][1] in the *Amazon SQS
1815
+ # Developer Guide*.
1816
+ #
1817
+ #
1818
+ #
1819
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1514
1820
  # @return [Integer]
1515
1821
  #
1516
1822
  # @!attribute [rw] wait_time_seconds
1517
1823
  # The duration (in seconds) for which the call waits for a message to
1518
1824
  # arrive in the queue before returning. If a message is available, the
1519
1825
  # call returns sooner than `WaitTimeSeconds`. If no messages are
1520
- # available and the wait time expires, the call returns successfully
1521
- # with an empty list of messages.
1826
+ # available and the wait time expires, the call does not return a
1827
+ # message list. If you are using the Java SDK, it returns a
1828
+ # `ReceiveMessageResponse` object, which has a empty list instead of a
1829
+ # Null object.
1522
1830
  #
1523
1831
  # To avoid HTTP errors, ensure that the HTTP response timeout for
1524
1832
  # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
@@ -1549,10 +1857,6 @@ module Aws::SQS
1549
1857
  # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1550
1858
  # can provide a `ReceiveRequestAttemptId` explicitly.
1551
1859
  #
1552
- # * If a caller of the `ReceiveMessage` action doesn't provide a
1553
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
1554
- # `ReceiveRequestAttemptId`.
1555
- #
1556
1860
  # * It is possible to retry the `ReceiveMessage` action with the same
1557
1861
  # `ReceiveRequestAttemptId` if none of the messages have been
1558
1862
  # modified (deleted or had their visibility changes).
@@ -1578,8 +1882,8 @@ module Aws::SQS
1578
1882
  # * While messages with a particular `MessageGroupId` are invisible,
1579
1883
  # no more messages belonging to the same `MessageGroupId` are
1580
1884
  # returned until the visibility timeout expires. You can still
1581
- # receive messages with another `MessageGroupId` as long as it is
1582
- # also visible.
1885
+ # receive messages with another `MessageGroupId` from your FIFO
1886
+ # queue as long as they are visible.
1583
1887
  #
1584
1888
  # * If a caller of `ReceiveMessage` can't track the
1585
1889
  # `ReceiveRequestAttemptId`, no retries work until the original
@@ -1589,7 +1893,7 @@ module Aws::SQS
1589
1893
  # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1590
1894
  # `ReceiveRequestAttemptId` can contain alphanumeric characters
1591
1895
  # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1592
- # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1896
+ # !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ``).
1593
1897
  #
1594
1898
  # For best practices of using `ReceiveRequestAttemptId`, see [Using
1595
1899
  # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
@@ -1606,6 +1910,7 @@ module Aws::SQS
1606
1910
  class ReceiveMessageRequest < Struct.new(
1607
1911
  :queue_url,
1608
1912
  :attribute_names,
1913
+ :message_system_attribute_names,
1609
1914
  :message_attribute_names,
1610
1915
  :max_number_of_messages,
1611
1916
  :visibility_timeout,
@@ -1649,11 +1954,42 @@ module Aws::SQS
1649
1954
  include Aws::Structure
1650
1955
  end
1651
1956
 
1957
+ # The request was denied due to request throttling.
1958
+ #
1959
+ # * Exceeds the permitted request rate for the queue or for the
1960
+ # recipient of the request.
1961
+ #
1962
+ # * Ensure that the request rate is within the Amazon SQS limits for
1963
+ # sending messages. For more information, see [Amazon SQS quotas][1]
1964
+ # in the *Amazon SQS Developer Guide*.
1965
+ #
1966
+ #
1967
+ #
1968
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-quotas.html#quotas-requests
1969
+ #
1970
+ # @!attribute [rw] message
1971
+ # @return [String]
1972
+ #
1973
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RequestThrottled AWS API Documentation
1974
+ #
1975
+ class RequestThrottled < Struct.new(
1976
+ :message)
1977
+ SENSITIVE = []
1978
+ include Aws::Structure
1979
+ end
1980
+
1652
1981
  # One or more specified resources don't exist.
1653
1982
  #
1983
+ # @!attribute [rw] message
1984
+ # @return [String]
1985
+ #
1654
1986
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ResourceNotFoundException AWS API Documentation
1655
1987
  #
1656
- class ResourceNotFoundException < Aws::EmptyStructure; end
1988
+ class ResourceNotFoundException < Struct.new(
1989
+ :message)
1990
+ SENSITIVE = []
1991
+ include Aws::Structure
1992
+ end
1657
1993
 
1658
1994
  # @!attribute [rw] queue_url
1659
1995
  # The URL of the Amazon SQS queue to which batched messages are sent.
@@ -1755,7 +2091,6 @@ module Aws::SQS
1755
2091
  #
1756
2092
  # * If the queue has `ContentBasedDeduplication` set, your
1757
2093
  # `MessageDeduplicationId` overrides the generated one.
1758
- #
1759
2094
  # * When `ContentBasedDeduplication` is in effect, messages with
1760
2095
  # identical content sent within the deduplication interval are
1761
2096
  # treated as duplicates and only one copy of the message is
@@ -1782,7 +2117,7 @@ module Aws::SQS
1782
2117
  #
1783
2118
  # The length of `MessageDeduplicationId` is 128 characters.
1784
2119
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1785
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2120
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
1786
2121
  # ``).
1787
2122
  #
1788
2123
  # For best practices of using `MessageDeduplicationId`, see [Using the
@@ -1796,35 +2131,54 @@ module Aws::SQS
1796
2131
  # @return [String]
1797
2132
  #
1798
2133
  # @!attribute [rw] message_group_id
1799
- # This parameter applies only to FIFO (first-in-first-out) queues.
1800
- #
1801
- # The tag that specifies that a message belongs to a specific message
1802
- # group. Messages that belong to the same message group are processed
1803
- # in a FIFO manner (however, messages in different message groups
1804
- # might be processed out of order). To interleave multiple ordered
1805
- # streams within a single queue, use `MessageGroupId` values (for
1806
- # example, session data for multiple users). In this scenario,
1807
- # multiple consumers can process the queue, but the session data of
1808
- # each user is processed in a FIFO fashion.
1809
- #
1810
- # * You must associate a non-empty `MessageGroupId` with a message. If
1811
- # you don't provide a `MessageGroupId`, the action fails.
1812
- #
1813
- # * `ReceiveMessage` might return messages with multiple
2134
+ # `MessageGroupId` is an attribute used in Amazon SQS FIFO
2135
+ # (First-In-First-Out) and standard queues. In FIFO queues,
2136
+ # `MessageGroupId` organizes messages into distinct groups. Messages
2137
+ # within the same message group are always processed one at a time, in
2138
+ # strict order, ensuring that no two messages from the same group are
2139
+ # processed simultaneously. In standard queues, using `MessageGroupId`
2140
+ # enables fair queues. It is used to identify the tenant a message
2141
+ # belongs to, helping maintain consistent message dwell time across
2142
+ # all tenants during noisy neighbor events. Unlike FIFO queues,
2143
+ # messages with the same `MessageGroupId` can be processed in
2144
+ # parallel, maintaining the high throughput of standard queues.
2145
+ #
2146
+ # * **FIFO queues:** `MessageGroupId` acts as the tag that specifies
2147
+ # that a message belongs to a specific message group. Messages that
2148
+ # belong to the same message group are processed in a FIFO manner
2149
+ # (however, messages in different message groups might be processed
2150
+ # out of order). To interleave multiple ordered streams within a
2151
+ # single queue, use `MessageGroupId` values (for example, session
2152
+ # data for multiple users). In this scenario, multiple consumers can
2153
+ # process the queue, but the session data of each user is processed
2154
+ # in a FIFO fashion.
2155
+ #
2156
+ # If you do not provide a `MessageGroupId` when sending a message to
2157
+ # a FIFO queue, the action fails.
2158
+ #
2159
+ # `ReceiveMessage` might return messages with multiple
1814
2160
  # `MessageGroupId` values. For each `MessageGroupId`, the messages
1815
- # are sorted by time sent. The caller can't specify a
1816
- # `MessageGroupId`.
2161
+ # are sorted by time sent.
2162
+ #
2163
+ # * **Standard queues:**Use `MessageGroupId` in standard queues to
2164
+ # enable fair queues. The `MessageGroupId` identifies the tenant a
2165
+ # message belongs to. A tenant can be any entity that shares a queue
2166
+ # with others, such as your customer, a client application, or a
2167
+ # request type. When one tenant sends a disproportionately large
2168
+ # volume of messages or has messages that require longer processing
2169
+ # time, fair queues ensure other tenants' messages maintain low
2170
+ # dwell time. This preserves quality of service for all tenants
2171
+ # while maintaining the scalability and throughput of standard
2172
+ # queues. We recommend that you include a `MessageGroupId` in all
2173
+ # messages when using fair queues.
1817
2174
  #
1818
2175
  # The length of `MessageGroupId` is 128 characters. Valid values:
1819
2176
  # alphanumeric characters and punctuation ``
1820
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2177
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
1821
2178
  #
1822
2179
  # For best practices of using `MessageGroupId`, see [Using the
1823
2180
  # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
1824
2181
  #
1825
- # `MessageGroupId` is required for FIFO queues. You can't use it for
1826
- # Standard queues.
1827
- #
1828
2182
  #
1829
2183
  #
1830
2184
  # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
@@ -1943,16 +2297,20 @@ module Aws::SQS
1943
2297
  #
1944
2298
  # @!attribute [rw] message_body
1945
2299
  # The message to send. The minimum size is one character. The maximum
1946
- # size is 256 KiB.
2300
+ # size is 1 MiB or 1,048,576 bytes
1947
2301
  #
1948
2302
  # A message can include only XML, JSON, and unformatted text. The
1949
- # following Unicode characters are allowed:
2303
+ # following Unicode characters are allowed. For more information, see
2304
+ # the [W3C specification for characters][1].
1950
2305
  #
1951
2306
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to
1952
2307
  # `#xFFFD` \| `#x10000` to `#x10FFFF`
1953
2308
  #
1954
- # Any characters not included in this list will be rejected. For more
1955
- # information, see the [W3C specification for characters][1].
2309
+ # If a message contains characters outside the allowed set, Amazon
2310
+ # SQS
2311
+ # rejects the message and returns an InvalidMessageContents error.
2312
+ # Ensure that your message body includes only valid characters to
2313
+ # avoid this exception.
1956
2314
  #
1957
2315
  #
1958
2316
  #
@@ -2020,7 +2378,6 @@ module Aws::SQS
2020
2378
  #
2021
2379
  # * If the queue has `ContentBasedDeduplication` set, your
2022
2380
  # `MessageDeduplicationId` overrides the generated one.
2023
- #
2024
2381
  # * When `ContentBasedDeduplication` is in effect, messages with
2025
2382
  # identical content sent within the deduplication interval are
2026
2383
  # treated as duplicates and only one copy of the message is
@@ -2047,7 +2404,7 @@ module Aws::SQS
2047
2404
  #
2048
2405
  # The maximum length of `MessageDeduplicationId` is 128 characters.
2049
2406
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
2050
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2407
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
2051
2408
  # ``).
2052
2409
  #
2053
2410
  # For best practices of using `MessageDeduplicationId`, see [Using the
@@ -2061,35 +2418,54 @@ module Aws::SQS
2061
2418
  # @return [String]
2062
2419
  #
2063
2420
  # @!attribute [rw] message_group_id
2064
- # This parameter applies only to FIFO (first-in-first-out) queues.
2065
- #
2066
- # The tag that specifies that a message belongs to a specific message
2067
- # group. Messages that belong to the same message group are processed
2068
- # in a FIFO manner (however, messages in different message groups
2069
- # might be processed out of order). To interleave multiple ordered
2070
- # streams within a single queue, use `MessageGroupId` values (for
2071
- # example, session data for multiple users). In this scenario,
2072
- # multiple consumers can process the queue, but the session data of
2073
- # each user is processed in a FIFO fashion.
2074
- #
2075
- # * You must associate a non-empty `MessageGroupId` with a message. If
2076
- # you don't provide a `MessageGroupId`, the action fails.
2077
- #
2078
- # * `ReceiveMessage` might return messages with multiple
2421
+ # `MessageGroupId` is an attribute used in Amazon SQS FIFO
2422
+ # (First-In-First-Out) and standard queues. In FIFO queues,
2423
+ # `MessageGroupId` organizes messages into distinct groups. Messages
2424
+ # within the same message group are always processed one at a time, in
2425
+ # strict order, ensuring that no two messages from the same group are
2426
+ # processed simultaneously. In standard queues, using `MessageGroupId`
2427
+ # enables fair queues. It is used to identify the tenant a message
2428
+ # belongs to, helping maintain consistent message dwell time across
2429
+ # all tenants during noisy neighbor events. Unlike FIFO queues,
2430
+ # messages with the same `MessageGroupId` can be processed in
2431
+ # parallel, maintaining the high throughput of standard queues.
2432
+ #
2433
+ # * **FIFO queues:** `MessageGroupId` acts as the tag that specifies
2434
+ # that a message belongs to a specific message group. Messages that
2435
+ # belong to the same message group are processed in a FIFO manner
2436
+ # (however, messages in different message groups might be processed
2437
+ # out of order). To interleave multiple ordered streams within a
2438
+ # single queue, use `MessageGroupId` values (for example, session
2439
+ # data for multiple users). In this scenario, multiple consumers can
2440
+ # process the queue, but the session data of each user is processed
2441
+ # in a FIFO fashion.
2442
+ #
2443
+ # If you do not provide a `MessageGroupId` when sending a message to
2444
+ # a FIFO queue, the action fails.
2445
+ #
2446
+ # `ReceiveMessage` might return messages with multiple
2079
2447
  # `MessageGroupId` values. For each `MessageGroupId`, the messages
2080
- # are sorted by time sent. The caller can't specify a
2081
- # `MessageGroupId`.
2448
+ # are sorted by time sent.
2449
+ #
2450
+ # * **Standard queues:**Use `MessageGroupId` in standard queues to
2451
+ # enable fair queues. The `MessageGroupId` identifies the tenant a
2452
+ # message belongs to. A tenant can be any entity that shares a queue
2453
+ # with others, such as your customer, a client application, or a
2454
+ # request type. When one tenant sends a disproportionately large
2455
+ # volume of messages or has messages that require longer processing
2456
+ # time, fair queues ensure other tenants' messages maintain low
2457
+ # dwell time. This preserves quality of service for all tenants
2458
+ # while maintaining the scalability and throughput of standard
2459
+ # queues. We recommend that you include a `MessageGroupId` in all
2460
+ # messages when using fair queues.
2082
2461
  #
2083
2462
  # The length of `MessageGroupId` is 128 characters. Valid values:
2084
2463
  # alphanumeric characters and punctuation ``
2085
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2464
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
2086
2465
  #
2087
2466
  # For best practices of using `MessageGroupId`, see [Using the
2088
2467
  # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
2089
2468
  #
2090
- # `MessageGroupId` is required for FIFO queues. You can't use it for
2091
- # Standard queues.
2092
- #
2093
2469
  #
2094
2470
  #
2095
2471
  # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html
@@ -2192,8 +2568,8 @@ module Aws::SQS
2192
2568
  #
2193
2569
  # * `MaximumMessageSize` – The limit of how many bytes a message can
2194
2570
  # contain before Amazon SQS rejects it. Valid values: An integer
2195
- # from 1,024 bytes (1 KiB) up to 262,144 bytes (256 KiB). Default:
2196
- # 262,144 (256 KiB).
2571
+ # from 1,024 bytes (1 KiB) up to 1,048,576 bytes (1 MiB). Default:
2572
+ # 1,048,576 bytes (1 MiB).
2197
2573
  #
2198
2574
  # * `MessageRetentionPeriod` – The length of time, in seconds, for
2199
2575
  # which Amazon SQS retains a message. Valid values: An integer
@@ -2236,7 +2612,6 @@ module Aws::SQS
2236
2612
  # Default: 10. When the `ReceiveCount` for a message exceeds the
2237
2613
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
2238
2614
  # the dead-letter-queue.
2239
- #
2240
2615
  # * `RedriveAllowPolicy` – The string that includes the parameters for
2241
2616
  # the permissions for the dead-letter queue redrive permission and
2242
2617
  # which source queues can specify dead-letter queues as a JSON
@@ -2255,7 +2630,6 @@ module Aws::SQS
2255
2630
  #
2256
2631
  # * `byQueue` – Only queues specified by the `sourceQueueArns`
2257
2632
  # parameter can specify this queue as the dead-letter queue.
2258
- #
2259
2633
  # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
2260
2634
  # source queues that can specify this queue as the dead-letter
2261
2635
  # queue and redrive messages. You can specify this parameter only
@@ -2317,7 +2691,6 @@ module Aws::SQS
2317
2691
  #
2318
2692
  # * If the queue has `ContentBasedDeduplication` set, your
2319
2693
  # `MessageDeduplicationId` overrides the generated one.
2320
- #
2321
2694
  # * When `ContentBasedDeduplication` is in effect, messages with
2322
2695
  # identical content sent within the deduplication interval are
2323
2696
  # treated as duplicates and only one copy of the message is
@@ -2447,17 +2820,40 @@ module Aws::SQS
2447
2820
  include Aws::Structure
2448
2821
  end
2449
2822
 
2450
- # The batch request contains more entries than permissible.
2823
+ # The batch request contains more entries than permissible. For Amazon
2824
+ # SQS, the maximum number of entries you can include in a single
2825
+ # [SendMessageBatch][1], [DeleteMessageBatch][2], or
2826
+ # [ChangeMessageVisibilityBatch][3] request is 10.
2827
+ #
2828
+ #
2829
+ #
2830
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html
2831
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html
2832
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html
2833
+ #
2834
+ # @!attribute [rw] message
2835
+ # @return [String]
2451
2836
  #
2452
2837
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TooManyEntriesInBatchRequest AWS API Documentation
2453
2838
  #
2454
- class TooManyEntriesInBatchRequest < Aws::EmptyStructure; end
2839
+ class TooManyEntriesInBatchRequest < Struct.new(
2840
+ :message)
2841
+ SENSITIVE = []
2842
+ include Aws::Structure
2843
+ end
2455
2844
 
2456
2845
  # Error code 400. Unsupported operation.
2457
2846
  #
2847
+ # @!attribute [rw] message
2848
+ # @return [String]
2849
+ #
2458
2850
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UnsupportedOperation AWS API Documentation
2459
2851
  #
2460
- class UnsupportedOperation < Aws::EmptyStructure; end
2852
+ class UnsupportedOperation < Struct.new(
2853
+ :message)
2854
+ SENSITIVE = []
2855
+ include Aws::Structure
2856
+ end
2461
2857
 
2462
2858
  # @!attribute [rw] queue_url
2463
2859
  # The URL of the queue.
@@ -2478,3 +2874,4 @@ module Aws::SQS
2478
2874
 
2479
2875
  end
2480
2876
  end
2877
+