aws-sdk-sqs 1.60.0 → 1.93.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.
@@ -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
@@ -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,52 @@ 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]).
1456
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. Messages with the same
1700
+ # `MessageGroupId` are returned in sequence.
1701
+ #
1702
+ # * `SequenceNumber` – Returns the value provided by Amazon SQS.
1703
+ #
1704
+ #
1705
+ #
1706
+ # [1]: http://en.wikipedia.org/wiki/Unix_time
1707
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sse-existing-queue.html
1708
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-sqs-sse-queue.html
1709
+ # @return [Array<String>]
1710
+ #
1711
+ # @!attribute [rw] message_system_attribute_names
1712
+ # A list of attributes that need to be returned along with each
1713
+ # message. These attributes include:
1714
+ #
1715
+ # * `All` – Returns all values.
1716
+ #
1717
+ # * `ApproximateFirstReceiveTimestamp` – Returns the time the message
1718
+ # was first received from the queue ([epoch time][1] in
1719
+ # milliseconds).
1720
+ #
1721
+ # * `ApproximateReceiveCount` – Returns the number of times a message
1722
+ # has been received across all queues but not deleted.
1723
+ #
1724
+ # * `AWSTraceHeader` – Returns the X-Ray trace header string.
1725
+ #
1726
+ # * `SenderId`
1727
+ #
1728
+ # * For a user, returns the user ID, for example
1729
+ # `ABCDEFGHI1JKLMNOPQ23R`.
1730
+ #
1731
+ # * For an IAM role, returns the IAM role ID, for example
1732
+ # `ABCDE1F2GH3I4JK5LMNOP:i-a123b456`.
1457
1733
  # * `SentTimestamp` – Returns the time the message was sent to the
1458
1734
  # queue ([epoch time][1] in milliseconds).
1459
1735
  #
@@ -1510,15 +1786,49 @@ module Aws::SQS
1510
1786
  # @!attribute [rw] visibility_timeout
1511
1787
  # The duration (in seconds) that the received messages are hidden from
1512
1788
  # subsequent retrieve requests after being retrieved by a
1513
- # `ReceiveMessage` request.
1789
+ # `ReceiveMessage` request. If not specified, the default visibility
1790
+ # timeout for the queue is used, which is 30 seconds.
1791
+ #
1792
+ # Understanding `VisibilityTimeout`:
1793
+ #
1794
+ # * When a message is received from a queue, it becomes temporarily
1795
+ # invisible to other consumers for the duration of the visibility
1796
+ # timeout. This prevents multiple consumers from processing the same
1797
+ # message simultaneously. If the message is not deleted or its
1798
+ # visibility timeout is not extended before the timeout expires, it
1799
+ # becomes visible again and can be retrieved by other consumers.
1800
+ #
1801
+ # * Setting an appropriate visibility timeout is crucial. If it's too
1802
+ # short, the message might become visible again before processing is
1803
+ # complete, leading to duplicate processing. If it's too long, it
1804
+ # delays the reprocessing of messages if the initial processing
1805
+ # fails.
1806
+ #
1807
+ # * You can adjust the visibility timeout using the
1808
+ # `--visibility-timeout` parameter in the `receive-message` command
1809
+ # to match the processing time required by your application.
1810
+ #
1811
+ # * A message that isn't deleted or a message whose visibility isn't
1812
+ # extended before the visibility timeout expires counts as a failed
1813
+ # receive. Depending on the configuration of the queue, the message
1814
+ # might be sent to the dead-letter queue.
1815
+ #
1816
+ # For more information, see [Visibility Timeout][1] in the *Amazon SQS
1817
+ # Developer Guide*.
1818
+ #
1819
+ #
1820
+ #
1821
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-visibility-timeout.html
1514
1822
  # @return [Integer]
1515
1823
  #
1516
1824
  # @!attribute [rw] wait_time_seconds
1517
1825
  # The duration (in seconds) for which the call waits for a message to
1518
1826
  # arrive in the queue before returning. If a message is available, the
1519
1827
  # 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.
1828
+ # available and the wait time expires, the call does not return a
1829
+ # message list. If you are using the Java SDK, it returns a
1830
+ # `ReceiveMessageResponse` object, which has a empty list instead of a
1831
+ # Null object.
1522
1832
  #
1523
1833
  # To avoid HTTP errors, ensure that the HTTP response timeout for
1524
1834
  # `ReceiveMessage` requests is longer than the `WaitTimeSeconds`
@@ -1549,10 +1859,6 @@ module Aws::SQS
1549
1859
  # * When you set `FifoQueue`, a caller of the `ReceiveMessage` action
1550
1860
  # can provide a `ReceiveRequestAttemptId` explicitly.
1551
1861
  #
1552
- # * If a caller of the `ReceiveMessage` action doesn't provide a
1553
- # `ReceiveRequestAttemptId`, Amazon SQS generates a
1554
- # `ReceiveRequestAttemptId`.
1555
- #
1556
1862
  # * It is possible to retry the `ReceiveMessage` action with the same
1557
1863
  # `ReceiveRequestAttemptId` if none of the messages have been
1558
1864
  # modified (deleted or had their visibility changes).
@@ -1589,7 +1895,7 @@ module Aws::SQS
1589
1895
  # The maximum length of `ReceiveRequestAttemptId` is 128 characters.
1590
1896
  # `ReceiveRequestAttemptId` can contain alphanumeric characters
1591
1897
  # (`a-z`, `A-Z`, `0-9`) and punctuation (``
1592
- # !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~ ``).
1898
+ # !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ ``).
1593
1899
  #
1594
1900
  # For best practices of using `ReceiveRequestAttemptId`, see [Using
1595
1901
  # the ReceiveRequestAttemptId Request Parameter][2] in the *Amazon SQS
@@ -1606,6 +1912,7 @@ module Aws::SQS
1606
1912
  class ReceiveMessageRequest < Struct.new(
1607
1913
  :queue_url,
1608
1914
  :attribute_names,
1915
+ :message_system_attribute_names,
1609
1916
  :message_attribute_names,
1610
1917
  :max_number_of_messages,
1611
1918
  :visibility_timeout,
@@ -1649,11 +1956,42 @@ module Aws::SQS
1649
1956
  include Aws::Structure
1650
1957
  end
1651
1958
 
1959
+ # The request was denied due to request throttling.
1960
+ #
1961
+ # * Exceeds the permitted request rate for the queue or for the
1962
+ # recipient of the request.
1963
+ #
1964
+ # * Ensure that the request rate is within the Amazon SQS limits for
1965
+ # sending messages. For more information, see [Amazon SQS quotas][1]
1966
+ # in the *Amazon SQS Developer Guide*.
1967
+ #
1968
+ #
1969
+ #
1970
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-quotas.html#quotas-requests
1971
+ #
1972
+ # @!attribute [rw] message
1973
+ # @return [String]
1974
+ #
1975
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/RequestThrottled AWS API Documentation
1976
+ #
1977
+ class RequestThrottled < Struct.new(
1978
+ :message)
1979
+ SENSITIVE = []
1980
+ include Aws::Structure
1981
+ end
1982
+
1652
1983
  # One or more specified resources don't exist.
1653
1984
  #
1985
+ # @!attribute [rw] message
1986
+ # @return [String]
1987
+ #
1654
1988
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/ResourceNotFoundException AWS API Documentation
1655
1989
  #
1656
- class ResourceNotFoundException < Aws::EmptyStructure; end
1990
+ class ResourceNotFoundException < Struct.new(
1991
+ :message)
1992
+ SENSITIVE = []
1993
+ include Aws::Structure
1994
+ end
1657
1995
 
1658
1996
  # @!attribute [rw] queue_url
1659
1997
  # The URL of the Amazon SQS queue to which batched messages are sent.
@@ -1755,7 +2093,6 @@ module Aws::SQS
1755
2093
  #
1756
2094
  # * If the queue has `ContentBasedDeduplication` set, your
1757
2095
  # `MessageDeduplicationId` overrides the generated one.
1758
- #
1759
2096
  # * When `ContentBasedDeduplication` is in effect, messages with
1760
2097
  # identical content sent within the deduplication interval are
1761
2098
  # treated as duplicates and only one copy of the message is
@@ -1782,7 +2119,7 @@ module Aws::SQS
1782
2119
  #
1783
2120
  # The length of `MessageDeduplicationId` is 128 characters.
1784
2121
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
1785
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2122
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
1786
2123
  # ``).
1787
2124
  #
1788
2125
  # For best practices of using `MessageDeduplicationId`, see [Using the
@@ -1817,7 +2154,7 @@ module Aws::SQS
1817
2154
  #
1818
2155
  # The length of `MessageGroupId` is 128 characters. Valid values:
1819
2156
  # alphanumeric characters and punctuation ``
1820
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2157
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
1821
2158
  #
1822
2159
  # For best practices of using `MessageGroupId`, see [Using the
1823
2160
  # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
@@ -1946,13 +2283,17 @@ module Aws::SQS
1946
2283
  # size is 256 KiB.
1947
2284
  #
1948
2285
  # A message can include only XML, JSON, and unformatted text. The
1949
- # following Unicode characters are allowed:
2286
+ # following Unicode characters are allowed. For more information, see
2287
+ # the [W3C specification for characters][1].
1950
2288
  #
1951
2289
  # `#x9` \| `#xA` \| `#xD` \| `#x20` to `#xD7FF` \| `#xE000` to
1952
2290
  # `#xFFFD` \| `#x10000` to `#x10FFFF`
1953
2291
  #
1954
- # Any characters not included in this list will be rejected. For more
1955
- # information, see the [W3C specification for characters][1].
2292
+ # Amazon SQS does not throw an exception or completely reject the
2293
+ # message if it contains invalid characters. Instead, it replaces
2294
+ # those invalid characters with `U+FFFD` before storing the message in
2295
+ # the queue, as long as the message body contains at least one valid
2296
+ # character.
1956
2297
  #
1957
2298
  #
1958
2299
  #
@@ -2020,7 +2361,6 @@ module Aws::SQS
2020
2361
  #
2021
2362
  # * If the queue has `ContentBasedDeduplication` set, your
2022
2363
  # `MessageDeduplicationId` overrides the generated one.
2023
- #
2024
2364
  # * When `ContentBasedDeduplication` is in effect, messages with
2025
2365
  # identical content sent within the deduplication interval are
2026
2366
  # treated as duplicates and only one copy of the message is
@@ -2047,7 +2387,7 @@ module Aws::SQS
2047
2387
  #
2048
2388
  # The maximum length of `MessageDeduplicationId` is 128 characters.
2049
2389
  # `MessageDeduplicationId` can contain alphanumeric characters (`a-z`,
2050
- # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~
2390
+ # `A-Z`, `0-9`) and punctuation (`` !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
2051
2391
  # ``).
2052
2392
  #
2053
2393
  # For best practices of using `MessageDeduplicationId`, see [Using the
@@ -2080,9 +2420,9 @@ module Aws::SQS
2080
2420
  # are sorted by time sent. The caller can't specify a
2081
2421
  # `MessageGroupId`.
2082
2422
  #
2083
- # The length of `MessageGroupId` is 128 characters. Valid values:
2084
- # alphanumeric characters and punctuation ``
2085
- # (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
2423
+ # The maximum length of `MessageGroupId` is 128 characters. Valid
2424
+ # values: alphanumeric characters and punctuation ``
2425
+ # (!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~) ``.
2086
2426
  #
2087
2427
  # For best practices of using `MessageGroupId`, see [Using the
2088
2428
  # MessageGroupId Property][1] in the *Amazon SQS Developer Guide*.
@@ -2236,7 +2576,6 @@ module Aws::SQS
2236
2576
  # Default: 10. When the `ReceiveCount` for a message exceeds the
2237
2577
  # `maxReceiveCount` for a queue, Amazon SQS moves the message to
2238
2578
  # the dead-letter-queue.
2239
- #
2240
2579
  # * `RedriveAllowPolicy` – The string that includes the parameters for
2241
2580
  # the permissions for the dead-letter queue redrive permission and
2242
2581
  # which source queues can specify dead-letter queues as a JSON
@@ -2255,7 +2594,6 @@ module Aws::SQS
2255
2594
  #
2256
2595
  # * `byQueue` – Only queues specified by the `sourceQueueArns`
2257
2596
  # parameter can specify this queue as the dead-letter queue.
2258
- #
2259
2597
  # * `sourceQueueArns` – The Amazon Resource Names (ARN)s of the
2260
2598
  # source queues that can specify this queue as the dead-letter
2261
2599
  # queue and redrive messages. You can specify this parameter only
@@ -2317,7 +2655,6 @@ module Aws::SQS
2317
2655
  #
2318
2656
  # * If the queue has `ContentBasedDeduplication` set, your
2319
2657
  # `MessageDeduplicationId` overrides the generated one.
2320
- #
2321
2658
  # * When `ContentBasedDeduplication` is in effect, messages with
2322
2659
  # identical content sent within the deduplication interval are
2323
2660
  # treated as duplicates and only one copy of the message is
@@ -2384,8 +2721,10 @@ module Aws::SQS
2384
2721
 
2385
2722
  # @!attribute [rw] source_arn
2386
2723
  # The ARN of the queue that contains the messages to be moved to
2387
- # another queue. Currently, only dead-letter queue (DLQ) ARNs are
2388
- # accepted.
2724
+ # another queue. Currently, only ARNs of dead-letter queues (DLQs)
2725
+ # whose sources are other Amazon SQS queues are accepted. DLQs whose
2726
+ # sources are non-SQS queues, such as Lambda or Amazon SNS topics, are
2727
+ # not currently supported.
2389
2728
  # @return [String]
2390
2729
  #
2391
2730
  # @!attribute [rw] destination_arn
@@ -2445,17 +2784,40 @@ module Aws::SQS
2445
2784
  include Aws::Structure
2446
2785
  end
2447
2786
 
2448
- # The batch request contains more entries than permissible.
2787
+ # The batch request contains more entries than permissible. For Amazon
2788
+ # SQS, the maximum number of entries you can include in a single
2789
+ # [SendMessageBatch][1], [DeleteMessageBatch][2], or
2790
+ # [ChangeMessageVisibilityBatch][3] request is 10.
2791
+ #
2792
+ #
2793
+ #
2794
+ # [1]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessageBatch.html
2795
+ # [2]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_DeleteMessageBatch.html
2796
+ # [3]: https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ChangeMessageVisibilityBatch.html
2797
+ #
2798
+ # @!attribute [rw] message
2799
+ # @return [String]
2449
2800
  #
2450
2801
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/TooManyEntriesInBatchRequest AWS API Documentation
2451
2802
  #
2452
- class TooManyEntriesInBatchRequest < Aws::EmptyStructure; end
2803
+ class TooManyEntriesInBatchRequest < Struct.new(
2804
+ :message)
2805
+ SENSITIVE = []
2806
+ include Aws::Structure
2807
+ end
2453
2808
 
2454
2809
  # Error code 400. Unsupported operation.
2455
2810
  #
2811
+ # @!attribute [rw] message
2812
+ # @return [String]
2813
+ #
2456
2814
  # @see http://docs.aws.amazon.com/goto/WebAPI/sqs-2012-11-05/UnsupportedOperation AWS API Documentation
2457
2815
  #
2458
- class UnsupportedOperation < Aws::EmptyStructure; end
2816
+ class UnsupportedOperation < Struct.new(
2817
+ :message)
2818
+ SENSITIVE = []
2819
+ include Aws::Structure
2820
+ end
2459
2821
 
2460
2822
  # @!attribute [rw] queue_url
2461
2823
  # The URL of the queue.
@@ -2476,3 +2838,4 @@ module Aws::SQS
2476
2838
 
2477
2839
  end
2478
2840
  end
2841
+