aws-sdk-sns 1.33.0 → 1.38.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/aws-sdk-sns.rb +1 -1
- data/lib/aws-sdk-sns/client.rb +153 -24
- data/lib/aws-sdk-sns/client_api.rb +3 -0
- data/lib/aws-sdk-sns/platform_endpoint.rb +27 -0
- data/lib/aws-sdk-sns/resource.rb +28 -1
- data/lib/aws-sdk-sns/subscription.rb +36 -1
- data/lib/aws-sdk-sns/topic.rb +107 -13
- data/lib/aws-sdk-sns/types.rb +196 -18
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fb4083c544c356daa44e6569fe2b5bc063969636bf38bd4e338934e1b4b04c4e
|
4
|
+
data.tar.gz: 9757945b73520d1ea5aa121e7e9d184f5e191771d40fe3e0f53a7a97eeee6134
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '086e902937fcd6927e216ff0553abfd684617548f68ab317ad6137d3bb47fac11e45276e632a2f08d3d8965954cd4c34ee53c979153a1b5ce1122fa568eac5f0'
|
7
|
+
data.tar.gz: 965625e08f1c24aba6fa990121a37c72e3bcffbf49197295572d28347a5ff3c5e955deb4535538e0e33eb358c25982e4a8844b3cb9b0fa2b38c64f2699304c72
|
data/lib/aws-sdk-sns.rb
CHANGED
data/lib/aws-sdk-sns/client.rb
CHANGED
@@ -591,10 +591,11 @@ module Aws::SNS
|
|
591
591
|
end
|
592
592
|
|
593
593
|
# Creates a topic to which notifications can be published. Users can
|
594
|
-
# create at most 100,000 topics
|
595
|
-
# [https://aws.amazon.com/sns][1]. This action
|
596
|
-
# requester already owns a topic with the
|
597
|
-
# ARN is returned without creating a new
|
594
|
+
# create at most 100,000 standard topics (at most 1,000 FIFO topics).
|
595
|
+
# For more information, see [https://aws.amazon.com/sns][1]. This action
|
596
|
+
# is idempotent, so if the requester already owns a topic with the
|
597
|
+
# specified name, that topic's ARN is returned without creating a new
|
598
|
+
# topic.
|
598
599
|
#
|
599
600
|
#
|
600
601
|
#
|
@@ -607,6 +608,9 @@ module Aws::SNS
|
|
607
608
|
# lowercase ASCII letters, numbers, underscores, and hyphens, and must
|
608
609
|
# be between 1 and 256 characters long.
|
609
610
|
#
|
611
|
+
# For a FIFO (first-in-first-out) topic, the name must end with the
|
612
|
+
# `.fifo` suffix.
|
613
|
+
#
|
610
614
|
# @option params [Hash<String,String>] :attributes
|
611
615
|
# A map of attributes with their corresponding values.
|
612
616
|
#
|
@@ -619,23 +623,47 @@ module Aws::SNS
|
|
619
623
|
# * `DisplayName` – The display name to use for a topic with SMS
|
620
624
|
# subscriptions.
|
621
625
|
#
|
626
|
+
# * `FifoTopic` – Set to true to create a FIFO topic.
|
627
|
+
#
|
622
628
|
# * `Policy` – The policy that defines who can access your topic. By
|
623
629
|
# default, only the topic owner can publish or subscribe to the topic.
|
624
630
|
#
|
625
631
|
# The following attribute applies only to [server-side-encryption][1]\:
|
626
632
|
#
|
627
|
-
# * `KmsMasterKeyId`
|
633
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
628
634
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
|
629
635
|
# Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
630
636
|
# Management Service API Reference*.
|
631
637
|
#
|
632
638
|
# ^
|
633
639
|
#
|
640
|
+
# The following attributes apply only to [FIFO topics][4]\:
|
641
|
+
#
|
642
|
+
# * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
|
643
|
+
#
|
644
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
645
|
+
# for FIFO topics.
|
646
|
+
#
|
647
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
648
|
+
# create a FIFO topic and this attribute is `false`, you must
|
649
|
+
# specify a value for the `MessageDeduplicationId` parameter for the
|
650
|
+
# [Publish][5] action.
|
651
|
+
#
|
652
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
653
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
654
|
+
# the body of the message (but not the attributes of the message).
|
655
|
+
#
|
656
|
+
# (Optional) To override the generated value, you can specify a
|
657
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
658
|
+
# `Publish` action.
|
659
|
+
#
|
634
660
|
#
|
635
661
|
#
|
636
662
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
637
663
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
638
664
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
665
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
666
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
639
667
|
#
|
640
668
|
# @option params [Array<Types::Tag>] :tags
|
641
669
|
# The list of tags to add to a new topic.
|
@@ -1403,9 +1431,37 @@ module Aws::SNS
|
|
1403
1431
|
# @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
|
1404
1432
|
# Message attributes for Publish action.
|
1405
1433
|
#
|
1434
|
+
# @option params [String] :message_deduplication_id
|
1435
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
1436
|
+
# `MessageDeduplicationId` can contain up to 128 alphanumeric characters
|
1437
|
+
# (a-z, A-Z, 0-9) and punctuation ``
|
1438
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
1439
|
+
#
|
1440
|
+
# Every message must have a unique `MessageDeduplicationId`, which is a
|
1441
|
+
# token used for deduplication of sent messages. If a message with a
|
1442
|
+
# particular `MessageDeduplicationId` is sent successfully, any message
|
1443
|
+
# sent with the same `MessageDeduplicationId` during the 5-minute
|
1444
|
+
# deduplication interval is treated as a duplicate.
|
1445
|
+
#
|
1446
|
+
# If the topic has `ContentBasedDeduplication` set, the system generates
|
1447
|
+
# a `MessageDeduplicationId` based on the contents of the message. Your
|
1448
|
+
# `MessageDeduplicationId` overrides the generated one.
|
1449
|
+
#
|
1450
|
+
# @option params [String] :message_group_id
|
1451
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
1452
|
+
# `MessageGroupId` can contain up to 128 alphanumeric characters (a-z,
|
1453
|
+
# A-Z, 0-9) and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
1454
|
+
#
|
1455
|
+
# The `MessageGroupId` is a tag that specifies that a message belongs to
|
1456
|
+
# a specific message group. Messages that belong to the same message
|
1457
|
+
# group are processed in a FIFO manner (however, messages in different
|
1458
|
+
# message groups might be processed out of order). Every message must
|
1459
|
+
# include a `MessageGroupId`.
|
1460
|
+
#
|
1406
1461
|
# @return [Types::PublishResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
1407
1462
|
#
|
1408
1463
|
# * {Types::PublishResponse#message_id #message_id} => String
|
1464
|
+
# * {Types::PublishResponse#sequence_number #sequence_number} => String
|
1409
1465
|
#
|
1410
1466
|
# @example Request syntax with placeholder values
|
1411
1467
|
#
|
@@ -1423,11 +1479,14 @@ module Aws::SNS
|
|
1423
1479
|
# binary_value: "data",
|
1424
1480
|
# },
|
1425
1481
|
# },
|
1482
|
+
# message_deduplication_id: "String",
|
1483
|
+
# message_group_id: "String",
|
1426
1484
|
# })
|
1427
1485
|
#
|
1428
1486
|
# @example Response structure
|
1429
1487
|
#
|
1430
1488
|
# resp.message_id #=> String
|
1489
|
+
# resp.sequence_number #=> String
|
1431
1490
|
#
|
1432
1491
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/Publish AWS API Documentation
|
1433
1492
|
#
|
@@ -1591,8 +1650,14 @@ module Aws::SNS
|
|
1591
1650
|
#
|
1592
1651
|
# You can override some of these settings for a single message when you
|
1593
1652
|
# use the `Publish` action with the `MessageAttributes.entry.N`
|
1594
|
-
# parameter. For more information, see [
|
1595
|
-
# the *Amazon SNS Developer Guide*.
|
1653
|
+
# parameter. For more information, see [Publishing to a mobile phone][1]
|
1654
|
+
# in the *Amazon SNS Developer Guide*.
|
1655
|
+
#
|
1656
|
+
# <note markdown="1"> To use this operation, you must grant the Amazon SNS service principal
|
1657
|
+
# (`sns.amazonaws.com`) permission to perform the `s3:ListBucket`
|
1658
|
+
# action.
|
1659
|
+
#
|
1660
|
+
# </note>
|
1596
1661
|
#
|
1597
1662
|
#
|
1598
1663
|
#
|
@@ -1711,7 +1776,7 @@ module Aws::SNS
|
|
1711
1776
|
# A map of attributes with their corresponding values.
|
1712
1777
|
#
|
1713
1778
|
# The following lists the names, descriptions, and values of the special
|
1714
|
-
# request parameters that
|
1779
|
+
# request parameters that this action uses:
|
1715
1780
|
#
|
1716
1781
|
# * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
|
1717
1782
|
# failed deliveries to HTTP/S endpoints.
|
@@ -1732,6 +1797,25 @@ module Aws::SNS
|
|
1732
1797
|
# service that powers the subscribed endpoint becomes unavailable) are
|
1733
1798
|
# held in the dead-letter queue for further analysis or reprocessing.
|
1734
1799
|
#
|
1800
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
1801
|
+
# delivery stream subscriptions:
|
1802
|
+
#
|
1803
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
1804
|
+
# following:
|
1805
|
+
#
|
1806
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
1807
|
+
#
|
1808
|
+
# * Amazon SNS listed as a trusted entity
|
1809
|
+
#
|
1810
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
1811
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
1812
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
1813
|
+
# *Amazon SNS Developer Guide*.
|
1814
|
+
#
|
1815
|
+
#
|
1816
|
+
#
|
1817
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
1818
|
+
#
|
1735
1819
|
# @option params [String] :attribute_value
|
1736
1820
|
# The new value for the attribute in JSON format.
|
1737
1821
|
#
|
@@ -1776,18 +1860,38 @@ module Aws::SNS
|
|
1776
1860
|
#
|
1777
1861
|
# The following attribute applies only to [server-side-encryption][1]\:
|
1778
1862
|
#
|
1779
|
-
# * `KmsMasterKeyId`
|
1863
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
1780
1864
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
|
1781
1865
|
# Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
1782
1866
|
# Management Service API Reference*.
|
1783
1867
|
#
|
1784
1868
|
# ^
|
1785
1869
|
#
|
1870
|
+
# The following attribute applies only to [FIFO topics][4]\:
|
1871
|
+
#
|
1872
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
1873
|
+
# for FIFO topics.
|
1874
|
+
#
|
1875
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
1876
|
+
# create a FIFO topic and this attribute is `false`, you must
|
1877
|
+
# specify a value for the `MessageDeduplicationId` parameter for the
|
1878
|
+
# [Publish][5] action.
|
1879
|
+
#
|
1880
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
1881
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
1882
|
+
# the body of the message (but not the attributes of the message).
|
1883
|
+
#
|
1884
|
+
# (Optional) To override the generated value, you can specify a
|
1885
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
1886
|
+
# `Publish` action.
|
1887
|
+
#
|
1786
1888
|
#
|
1787
1889
|
#
|
1788
1890
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
1789
1891
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
1790
1892
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
1893
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
1894
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
1791
1895
|
#
|
1792
1896
|
# @option params [String] :attribute_value
|
1793
1897
|
# The new value for the attribute.
|
@@ -1813,8 +1917,8 @@ module Aws::SNS
|
|
1813
1917
|
|
1814
1918
|
# Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is
|
1815
1919
|
# HTTP/S or email, or if the endpoint and the topic are not in the same
|
1816
|
-
# AWS account, the endpoint owner must the `ConfirmSubscription`
|
1817
|
-
# to confirm the subscription.
|
1920
|
+
# AWS account, the endpoint owner must run the `ConfirmSubscription`
|
1921
|
+
# action to confirm the subscription.
|
1818
1922
|
#
|
1819
1923
|
# You call the `ConfirmSubscription` action with the token from the
|
1820
1924
|
# subscription response. Confirmation tokens are valid for three days.
|
@@ -1825,7 +1929,7 @@ module Aws::SNS
|
|
1825
1929
|
# The ARN of the topic you want to subscribe to.
|
1826
1930
|
#
|
1827
1931
|
# @option params [required, String] :protocol
|
1828
|
-
# The protocol you want to use. Supported protocols include:
|
1932
|
+
# The protocol that you want to use. Supported protocols include:
|
1829
1933
|
#
|
1830
1934
|
# * `http` – delivery of JSON-encoded message via HTTP POST
|
1831
1935
|
#
|
@@ -1840,36 +1944,42 @@ module Aws::SNS
|
|
1840
1944
|
# * `sqs` – delivery of JSON-encoded message to an Amazon SQS queue
|
1841
1945
|
#
|
1842
1946
|
# * `application` – delivery of JSON-encoded message to an EndpointArn
|
1843
|
-
# for a mobile app and device
|
1947
|
+
# for a mobile app and device
|
1844
1948
|
#
|
1845
|
-
# * `lambda` – delivery of JSON-encoded message to an
|
1846
|
-
# function
|
1949
|
+
# * `lambda` – delivery of JSON-encoded message to an AWS Lambda
|
1950
|
+
# function
|
1951
|
+
#
|
1952
|
+
# * `firehose` – delivery of JSON-encoded message to an Amazon Kinesis
|
1953
|
+
# Data Firehose delivery stream.
|
1847
1954
|
#
|
1848
1955
|
# @option params [String] :endpoint
|
1849
1956
|
# The endpoint that you want to receive notifications. Endpoints vary by
|
1850
1957
|
# protocol:
|
1851
1958
|
#
|
1852
1959
|
# * For the `http` protocol, the (public) endpoint is a URL beginning
|
1853
|
-
# with `http
|
1960
|
+
# with `http://`.
|
1854
1961
|
#
|
1855
1962
|
# * For the `https` protocol, the (public) endpoint is a URL beginning
|
1856
|
-
# with `https
|
1963
|
+
# with `https://`.
|
1857
1964
|
#
|
1858
|
-
# * For the `email` protocol, the endpoint is an email address
|
1965
|
+
# * For the `email` protocol, the endpoint is an email address.
|
1859
1966
|
#
|
1860
|
-
# * For the `email-json` protocol, the endpoint is an email address
|
1967
|
+
# * For the `email-json` protocol, the endpoint is an email address.
|
1861
1968
|
#
|
1862
1969
|
# * For the `sms` protocol, the endpoint is a phone number of an
|
1863
|
-
# SMS-enabled device
|
1970
|
+
# SMS-enabled device.
|
1864
1971
|
#
|
1865
1972
|
# * For the `sqs` protocol, the endpoint is the ARN of an Amazon SQS
|
1866
|
-
# queue
|
1973
|
+
# queue.
|
1867
1974
|
#
|
1868
1975
|
# * For the `application` protocol, the endpoint is the EndpointArn of a
|
1869
1976
|
# mobile app and device.
|
1870
1977
|
#
|
1871
|
-
# * For the `lambda` protocol, the endpoint is the ARN of an
|
1872
|
-
#
|
1978
|
+
# * For the `lambda` protocol, the endpoint is the ARN of an AWS Lambda
|
1979
|
+
# function.
|
1980
|
+
#
|
1981
|
+
# * For the `firehose` protocol, the endpoint is the ARN of an Amazon
|
1982
|
+
# Kinesis Data Firehose delivery stream.
|
1873
1983
|
#
|
1874
1984
|
# @option params [Hash<String,String>] :attributes
|
1875
1985
|
# A map of attributes with their corresponding values.
|
@@ -1896,6 +2006,25 @@ module Aws::SNS
|
|
1896
2006
|
# service that powers the subscribed endpoint becomes unavailable) are
|
1897
2007
|
# held in the dead-letter queue for further analysis or reprocessing.
|
1898
2008
|
#
|
2009
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
2010
|
+
# delivery stream subscriptions:
|
2011
|
+
#
|
2012
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
2013
|
+
# following:
|
2014
|
+
#
|
2015
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
2016
|
+
#
|
2017
|
+
# * Amazon SNS listed as a trusted entity
|
2018
|
+
#
|
2019
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
2020
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
2021
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
2022
|
+
# *Amazon SNS Developer Guide*.
|
2023
|
+
#
|
2024
|
+
#
|
2025
|
+
#
|
2026
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
2027
|
+
#
|
1899
2028
|
# @option params [Boolean] :return_subscription_arn
|
1900
2029
|
# Sets whether the response from the `Subscribe` request includes the
|
1901
2030
|
# subscription ARN, even if the subscription is not yet confirmed.
|
@@ -2068,7 +2197,7 @@ module Aws::SNS
|
|
2068
2197
|
params: params,
|
2069
2198
|
config: config)
|
2070
2199
|
context[:gem_name] = 'aws-sdk-sns'
|
2071
|
-
context[:gem_version] = '1.
|
2200
|
+
context[:gem_version] = '1.38.0'
|
2072
2201
|
Seahorse::Client::Request.new(handlers, context)
|
2073
2202
|
end
|
2074
2203
|
|
@@ -364,9 +364,12 @@ module Aws::SNS
|
|
364
364
|
PublishInput.add_member(:subject, Shapes::ShapeRef.new(shape: subject, location_name: "Subject"))
|
365
365
|
PublishInput.add_member(:message_structure, Shapes::ShapeRef.new(shape: messageStructure, location_name: "MessageStructure"))
|
366
366
|
PublishInput.add_member(:message_attributes, Shapes::ShapeRef.new(shape: MessageAttributeMap, location_name: "MessageAttributes"))
|
367
|
+
PublishInput.add_member(:message_deduplication_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageDeduplicationId"))
|
368
|
+
PublishInput.add_member(:message_group_id, Shapes::ShapeRef.new(shape: String, location_name: "MessageGroupId"))
|
367
369
|
PublishInput.struct_class = Types::PublishInput
|
368
370
|
|
369
371
|
PublishResponse.add_member(:message_id, Shapes::ShapeRef.new(shape: messageId, location_name: "MessageId"))
|
372
|
+
PublishResponse.add_member(:sequence_number, Shapes::ShapeRef.new(shape: String, location_name: "SequenceNumber"))
|
370
373
|
PublishResponse.struct_class = Types::PublishResponse
|
371
374
|
|
372
375
|
RemovePermissionInput.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, required: true, location_name: "TopicArn"))
|
@@ -121,6 +121,8 @@ module Aws::SNS
|
|
121
121
|
# binary_value: "data",
|
122
122
|
# },
|
123
123
|
# },
|
124
|
+
# message_deduplication_id: "String",
|
125
|
+
# message_group_id: "String",
|
124
126
|
# })
|
125
127
|
# @param [Hash] options ({})
|
126
128
|
# @option options [String] :topic_arn
|
@@ -215,6 +217,31 @@ module Aws::SNS
|
|
215
217
|
# Valid value: `json`
|
216
218
|
# @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
|
217
219
|
# Message attributes for Publish action.
|
220
|
+
# @option options [String] :message_deduplication_id
|
221
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
222
|
+
# `MessageDeduplicationId` can contain up to 128 alphanumeric characters
|
223
|
+
# (a-z, A-Z, 0-9) and punctuation ``
|
224
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
225
|
+
#
|
226
|
+
# Every message must have a unique `MessageDeduplicationId`, which is a
|
227
|
+
# token used for deduplication of sent messages. If a message with a
|
228
|
+
# particular `MessageDeduplicationId` is sent successfully, any message
|
229
|
+
# sent with the same `MessageDeduplicationId` during the 5-minute
|
230
|
+
# deduplication interval is treated as a duplicate.
|
231
|
+
#
|
232
|
+
# If the topic has `ContentBasedDeduplication` set, the system generates
|
233
|
+
# a `MessageDeduplicationId` based on the contents of the message. Your
|
234
|
+
# `MessageDeduplicationId` overrides the generated one.
|
235
|
+
# @option options [String] :message_group_id
|
236
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
237
|
+
# `MessageGroupId` can contain up to 128 alphanumeric characters (a-z,
|
238
|
+
# A-Z, 0-9) and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
239
|
+
#
|
240
|
+
# The `MessageGroupId` is a tag that specifies that a message belongs to
|
241
|
+
# a specific message group. Messages that belong to the same message
|
242
|
+
# group are processed in a FIFO manner (however, messages in different
|
243
|
+
# message groups might be processed out of order). Every message must
|
244
|
+
# include a `MessageGroupId`.
|
218
245
|
# @return [Types::PublishResponse]
|
219
246
|
def publish(options = {})
|
220
247
|
options = options.merge(target_arn: @arn)
|
data/lib/aws-sdk-sns/resource.rb
CHANGED
@@ -89,6 +89,9 @@ module Aws::SNS
|
|
89
89
|
# Constraints: Topic names must be made up of only uppercase and
|
90
90
|
# lowercase ASCII letters, numbers, underscores, and hyphens, and must
|
91
91
|
# be between 1 and 256 characters long.
|
92
|
+
#
|
93
|
+
# For a FIFO (first-in-first-out) topic, the name must end with the
|
94
|
+
# `.fifo` suffix.
|
92
95
|
# @option options [Hash<String,String>] :attributes
|
93
96
|
# A map of attributes with their corresponding values.
|
94
97
|
#
|
@@ -101,23 +104,47 @@ module Aws::SNS
|
|
101
104
|
# * `DisplayName` – The display name to use for a topic with SMS
|
102
105
|
# subscriptions.
|
103
106
|
#
|
107
|
+
# * `FifoTopic` – Set to true to create a FIFO topic.
|
108
|
+
#
|
104
109
|
# * `Policy` – The policy that defines who can access your topic. By
|
105
110
|
# default, only the topic owner can publish or subscribe to the topic.
|
106
111
|
#
|
107
112
|
# The following attribute applies only to [server-side-encryption][1]\:
|
108
113
|
#
|
109
|
-
# * `KmsMasterKeyId`
|
114
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
110
115
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
|
111
116
|
# Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
112
117
|
# Management Service API Reference*.
|
113
118
|
#
|
114
119
|
# ^
|
115
120
|
#
|
121
|
+
# The following attributes apply only to [FIFO topics][4]\:
|
122
|
+
#
|
123
|
+
# * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
|
124
|
+
#
|
125
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
126
|
+
# for FIFO topics.
|
127
|
+
#
|
128
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
129
|
+
# create a FIFO topic and this attribute is `false`, you must
|
130
|
+
# specify a value for the `MessageDeduplicationId` parameter for the
|
131
|
+
# [Publish][5] action.
|
132
|
+
#
|
133
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
134
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
135
|
+
# the body of the message (but not the attributes of the message).
|
136
|
+
#
|
137
|
+
# (Optional) To override the generated value, you can specify a
|
138
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
139
|
+
# `Publish` action.
|
140
|
+
#
|
116
141
|
#
|
117
142
|
#
|
118
143
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
119
144
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
120
145
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
146
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
147
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
121
148
|
# @option options [Array<Types::Tag>] :tags
|
122
149
|
# The list of tags to add to a new topic.
|
123
150
|
#
|
@@ -72,9 +72,25 @@ module Aws::SNS
|
|
72
72
|
#
|
73
73
|
# * `TopicArn` – The topic ARN that the subscription is associated with.
|
74
74
|
#
|
75
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
76
|
+
# delivery stream subscriptions:
|
77
|
+
#
|
78
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
79
|
+
# following:
|
80
|
+
#
|
81
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
82
|
+
#
|
83
|
+
# * Amazon SNS listed as a trusted entity
|
84
|
+
#
|
85
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
86
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
87
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][2] in the
|
88
|
+
# *Amazon SNS Developer Guide*.
|
89
|
+
#
|
75
90
|
#
|
76
91
|
#
|
77
92
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-message-filtering.html
|
93
|
+
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
78
94
|
# @return [Hash<String,String>]
|
79
95
|
def attributes
|
80
96
|
data[:attributes]
|
@@ -139,7 +155,7 @@ module Aws::SNS
|
|
139
155
|
# A map of attributes with their corresponding values.
|
140
156
|
#
|
141
157
|
# The following lists the names, descriptions, and values of the special
|
142
|
-
# request parameters that
|
158
|
+
# request parameters that this action uses:
|
143
159
|
#
|
144
160
|
# * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
|
145
161
|
# failed deliveries to HTTP/S endpoints.
|
@@ -159,6 +175,25 @@ module Aws::SNS
|
|
159
175
|
# endpoint is unreachable) or server errors (for example, when the
|
160
176
|
# service that powers the subscribed endpoint becomes unavailable) are
|
161
177
|
# held in the dead-letter queue for further analysis or reprocessing.
|
178
|
+
#
|
179
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
180
|
+
# delivery stream subscriptions:
|
181
|
+
#
|
182
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
183
|
+
# following:
|
184
|
+
#
|
185
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
186
|
+
#
|
187
|
+
# * Amazon SNS listed as a trusted entity
|
188
|
+
#
|
189
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
190
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
191
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
192
|
+
# *Amazon SNS Developer Guide*.
|
193
|
+
#
|
194
|
+
#
|
195
|
+
#
|
196
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
162
197
|
# @option options [String] :attribute_value
|
163
198
|
# The new value for the attribute in JSON format.
|
164
199
|
# @return [EmptyStructure]
|
data/lib/aws-sdk-sns/topic.rb
CHANGED
@@ -71,11 +71,33 @@ module Aws::SNS
|
|
71
71
|
#
|
72
72
|
# ^
|
73
73
|
#
|
74
|
+
# The following attributes apply only to [FIFO topics][4]\:
|
75
|
+
#
|
76
|
+
# * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
|
77
|
+
#
|
78
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
79
|
+
# for FIFO topics.
|
80
|
+
#
|
81
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
82
|
+
# create a FIFO topic and this attribute is `false`, you must
|
83
|
+
# specify a value for the `MessageDeduplicationId` parameter for the
|
84
|
+
# [Publish][5] action.
|
85
|
+
#
|
86
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
87
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
88
|
+
# the body of the message (but not the attributes of the message).
|
89
|
+
#
|
90
|
+
# (Optional) To override the generated value, you can specify a
|
91
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
92
|
+
# `Publish` action.
|
93
|
+
#
|
74
94
|
#
|
75
95
|
#
|
76
96
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
77
97
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
78
98
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
99
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
100
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
79
101
|
# @return [Hash<String,String>]
|
80
102
|
def attributes
|
81
103
|
data[:attributes]
|
@@ -194,6 +216,8 @@ module Aws::SNS
|
|
194
216
|
# binary_value: "data",
|
195
217
|
# },
|
196
218
|
# },
|
219
|
+
# message_deduplication_id: "String",
|
220
|
+
# message_group_id: "String",
|
197
221
|
# })
|
198
222
|
# @param [Hash] options ({})
|
199
223
|
# @option options [String] :target_arn
|
@@ -286,6 +310,31 @@ module Aws::SNS
|
|
286
310
|
# Valid value: `json`
|
287
311
|
# @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
|
288
312
|
# Message attributes for Publish action.
|
313
|
+
# @option options [String] :message_deduplication_id
|
314
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
315
|
+
# `MessageDeduplicationId` can contain up to 128 alphanumeric characters
|
316
|
+
# (a-z, A-Z, 0-9) and punctuation ``
|
317
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
318
|
+
#
|
319
|
+
# Every message must have a unique `MessageDeduplicationId`, which is a
|
320
|
+
# token used for deduplication of sent messages. If a message with a
|
321
|
+
# particular `MessageDeduplicationId` is sent successfully, any message
|
322
|
+
# sent with the same `MessageDeduplicationId` during the 5-minute
|
323
|
+
# deduplication interval is treated as a duplicate.
|
324
|
+
#
|
325
|
+
# If the topic has `ContentBasedDeduplication` set, the system generates
|
326
|
+
# a `MessageDeduplicationId` based on the contents of the message. Your
|
327
|
+
# `MessageDeduplicationId` overrides the generated one.
|
328
|
+
# @option options [String] :message_group_id
|
329
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
330
|
+
# `MessageGroupId` can contain up to 128 alphanumeric characters (a-z,
|
331
|
+
# A-Z, 0-9) and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
332
|
+
#
|
333
|
+
# The `MessageGroupId` is a tag that specifies that a message belongs to
|
334
|
+
# a specific message group. Messages that belong to the same message
|
335
|
+
# group are processed in a FIFO manner (however, messages in different
|
336
|
+
# message groups might be processed out of order). Every message must
|
337
|
+
# include a `MessageGroupId`.
|
289
338
|
# @return [Types::PublishResponse]
|
290
339
|
def publish(options = {})
|
291
340
|
options = options.merge(topic_arn: @arn)
|
@@ -332,18 +381,38 @@ module Aws::SNS
|
|
332
381
|
#
|
333
382
|
# The following attribute applies only to [server-side-encryption][1]\:
|
334
383
|
#
|
335
|
-
# * `KmsMasterKeyId`
|
384
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
336
385
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
|
337
386
|
# Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
338
387
|
# Management Service API Reference*.
|
339
388
|
#
|
340
389
|
# ^
|
341
390
|
#
|
391
|
+
# The following attribute applies only to [FIFO topics][4]\:
|
392
|
+
#
|
393
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
394
|
+
# for FIFO topics.
|
395
|
+
#
|
396
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If you
|
397
|
+
# create a FIFO topic and this attribute is `false`, you must
|
398
|
+
# specify a value for the `MessageDeduplicationId` parameter for the
|
399
|
+
# [Publish][5] action.
|
400
|
+
#
|
401
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
402
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId` using
|
403
|
+
# the body of the message (but not the attributes of the message).
|
404
|
+
#
|
405
|
+
# (Optional) To override the generated value, you can specify a
|
406
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
407
|
+
# `Publish` action.
|
408
|
+
#
|
342
409
|
#
|
343
410
|
#
|
344
411
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
345
412
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
346
413
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
414
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
415
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
347
416
|
# @option options [String] :attribute_value
|
348
417
|
# The new value for the attribute.
|
349
418
|
# @return [EmptyStructure]
|
@@ -365,7 +434,7 @@ module Aws::SNS
|
|
365
434
|
# })
|
366
435
|
# @param [Hash] options ({})
|
367
436
|
# @option options [required, String] :protocol
|
368
|
-
# The protocol you want to use. Supported protocols include:
|
437
|
+
# The protocol that you want to use. Supported protocols include:
|
369
438
|
#
|
370
439
|
# * `http` – delivery of JSON-encoded message via HTTP POST
|
371
440
|
#
|
@@ -380,35 +449,41 @@ module Aws::SNS
|
|
380
449
|
# * `sqs` – delivery of JSON-encoded message to an Amazon SQS queue
|
381
450
|
#
|
382
451
|
# * `application` – delivery of JSON-encoded message to an EndpointArn
|
383
|
-
# for a mobile app and device
|
452
|
+
# for a mobile app and device
|
384
453
|
#
|
385
|
-
# * `lambda` – delivery of JSON-encoded message to an
|
386
|
-
# function
|
454
|
+
# * `lambda` – delivery of JSON-encoded message to an AWS Lambda
|
455
|
+
# function
|
456
|
+
#
|
457
|
+
# * `firehose` – delivery of JSON-encoded message to an Amazon Kinesis
|
458
|
+
# Data Firehose delivery stream.
|
387
459
|
# @option options [String] :endpoint
|
388
460
|
# The endpoint that you want to receive notifications. Endpoints vary by
|
389
461
|
# protocol:
|
390
462
|
#
|
391
463
|
# * For the `http` protocol, the (public) endpoint is a URL beginning
|
392
|
-
# with `http
|
464
|
+
# with `http://`.
|
393
465
|
#
|
394
466
|
# * For the `https` protocol, the (public) endpoint is a URL beginning
|
395
|
-
# with `https
|
467
|
+
# with `https://`.
|
396
468
|
#
|
397
|
-
# * For the `email` protocol, the endpoint is an email address
|
469
|
+
# * For the `email` protocol, the endpoint is an email address.
|
398
470
|
#
|
399
|
-
# * For the `email-json` protocol, the endpoint is an email address
|
471
|
+
# * For the `email-json` protocol, the endpoint is an email address.
|
400
472
|
#
|
401
473
|
# * For the `sms` protocol, the endpoint is a phone number of an
|
402
|
-
# SMS-enabled device
|
474
|
+
# SMS-enabled device.
|
403
475
|
#
|
404
476
|
# * For the `sqs` protocol, the endpoint is the ARN of an Amazon SQS
|
405
|
-
# queue
|
477
|
+
# queue.
|
406
478
|
#
|
407
479
|
# * For the `application` protocol, the endpoint is the EndpointArn of a
|
408
480
|
# mobile app and device.
|
409
481
|
#
|
410
|
-
# * For the `lambda` protocol, the endpoint is the ARN of an
|
411
|
-
#
|
482
|
+
# * For the `lambda` protocol, the endpoint is the ARN of an AWS Lambda
|
483
|
+
# function.
|
484
|
+
#
|
485
|
+
# * For the `firehose` protocol, the endpoint is the ARN of an Amazon
|
486
|
+
# Kinesis Data Firehose delivery stream.
|
412
487
|
# @option options [Hash<String,String>] :attributes
|
413
488
|
# A map of attributes with their corresponding values.
|
414
489
|
#
|
@@ -433,6 +508,25 @@ module Aws::SNS
|
|
433
508
|
# endpoint is unreachable) or server errors (for example, when the
|
434
509
|
# service that powers the subscribed endpoint becomes unavailable) are
|
435
510
|
# held in the dead-letter queue for further analysis or reprocessing.
|
511
|
+
#
|
512
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
513
|
+
# delivery stream subscriptions:
|
514
|
+
#
|
515
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
516
|
+
# following:
|
517
|
+
#
|
518
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
519
|
+
#
|
520
|
+
# * Amazon SNS listed as a trusted entity
|
521
|
+
#
|
522
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
523
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
524
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
525
|
+
# *Amazon SNS Developer Guide*.
|
526
|
+
#
|
527
|
+
#
|
528
|
+
#
|
529
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
436
530
|
# @option options [Boolean] :return_subscription_arn
|
437
531
|
# Sets whether the response from the `Subscribe` request includes the
|
438
532
|
# subscription ARN, even if the subscription is not yet confirmed.
|
data/lib/aws-sdk-sns/types.rb
CHANGED
@@ -319,6 +319,9 @@ module Aws::SNS
|
|
319
319
|
# Constraints: Topic names must be made up of only uppercase and
|
320
320
|
# lowercase ASCII letters, numbers, underscores, and hyphens, and must
|
321
321
|
# be between 1 and 256 characters long.
|
322
|
+
#
|
323
|
+
# For a FIFO (first-in-first-out) topic, the name must end with the
|
324
|
+
# `.fifo` suffix.
|
322
325
|
# @return [String]
|
323
326
|
#
|
324
327
|
# @!attribute [rw] attributes
|
@@ -333,6 +336,8 @@ module Aws::SNS
|
|
333
336
|
# * `DisplayName` – The display name to use for a topic with SMS
|
334
337
|
# subscriptions.
|
335
338
|
#
|
339
|
+
# * `FifoTopic` – Set to true to create a FIFO topic.
|
340
|
+
#
|
336
341
|
# * `Policy` – The policy that defines who can access your topic. By
|
337
342
|
# default, only the topic owner can publish or subscribe to the
|
338
343
|
# topic.
|
@@ -340,18 +345,41 @@ module Aws::SNS
|
|
340
345
|
# The following attribute applies only to
|
341
346
|
# [server-side-encryption][1]\:
|
342
347
|
#
|
343
|
-
# * `KmsMasterKeyId`
|
348
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
344
349
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see
|
345
350
|
# [Key Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
346
351
|
# Management Service API Reference*.
|
347
352
|
#
|
348
353
|
# ^
|
349
354
|
#
|
355
|
+
# The following attributes apply only to [FIFO topics][4]\:
|
356
|
+
#
|
357
|
+
# * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
|
358
|
+
#
|
359
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
360
|
+
# for FIFO topics.
|
361
|
+
#
|
362
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If
|
363
|
+
# you create a FIFO topic and this attribute is `false`, you must
|
364
|
+
# specify a value for the `MessageDeduplicationId` parameter for
|
365
|
+
# the [Publish][5] action.
|
366
|
+
#
|
367
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
368
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId`
|
369
|
+
# using the body of the message (but not the attributes of the
|
370
|
+
# message).
|
371
|
+
#
|
372
|
+
# (Optional) To override the generated value, you can specify a
|
373
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
374
|
+
# `Publish` action.
|
375
|
+
#
|
350
376
|
#
|
351
377
|
#
|
352
378
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
353
379
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
354
380
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
381
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
382
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
355
383
|
# @return [Hash<String,String>]
|
356
384
|
#
|
357
385
|
# @!attribute [rw] tags
|
@@ -706,9 +734,25 @@ module Aws::SNS
|
|
706
734
|
# * `TopicArn` – The topic ARN that the subscription is associated
|
707
735
|
# with.
|
708
736
|
#
|
737
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
738
|
+
# delivery stream subscriptions:
|
739
|
+
#
|
740
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
741
|
+
# following:
|
742
|
+
#
|
743
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
744
|
+
#
|
745
|
+
# * Amazon SNS listed as a trusted entity
|
746
|
+
#
|
747
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
748
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
749
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][2] in the
|
750
|
+
# *Amazon SNS Developer Guide*.
|
751
|
+
#
|
709
752
|
#
|
710
753
|
#
|
711
754
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-message-filtering.html
|
755
|
+
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
712
756
|
# @return [Hash<String,String>]
|
713
757
|
#
|
714
758
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetSubscriptionAttributesResponse AWS API Documentation
|
@@ -781,11 +825,34 @@ module Aws::SNS
|
|
781
825
|
#
|
782
826
|
# ^
|
783
827
|
#
|
828
|
+
# The following attributes apply only to [FIFO topics][4]\:
|
829
|
+
#
|
830
|
+
# * `FifoTopic` – When this is set to `true`, a FIFO topic is created.
|
831
|
+
#
|
832
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
833
|
+
# for FIFO topics.
|
834
|
+
#
|
835
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If
|
836
|
+
# you create a FIFO topic and this attribute is `false`, you must
|
837
|
+
# specify a value for the `MessageDeduplicationId` parameter for
|
838
|
+
# the [Publish][5] action.
|
839
|
+
#
|
840
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
841
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId`
|
842
|
+
# using the body of the message (but not the attributes of the
|
843
|
+
# message).
|
844
|
+
#
|
845
|
+
# (Optional) To override the generated value, you can specify a
|
846
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
847
|
+
# `Publish` action.
|
848
|
+
#
|
784
849
|
#
|
785
850
|
#
|
786
851
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
787
852
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
788
853
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
854
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
855
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
789
856
|
# @return [Hash<String,String>]
|
790
857
|
#
|
791
858
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetTopicAttributesResponse AWS API Documentation
|
@@ -1255,12 +1322,14 @@ module Aws::SNS
|
|
1255
1322
|
# message body should not be empty or null. All parts of the message
|
1256
1323
|
# attribute, including name, type, and value, are included in the
|
1257
1324
|
# message size restriction, which is currently 256 KB (262,144 bytes).
|
1258
|
-
# For more information, see [
|
1325
|
+
# For more information, see [Amazon SNS message attributes][2] and
|
1326
|
+
# [Publishing to a mobile phone][3] in the *Amazon SNS Developer Guide.*
|
1259
1327
|
#
|
1260
1328
|
#
|
1261
1329
|
#
|
1262
1330
|
# [1]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
1263
1331
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html
|
1332
|
+
# [3]: https://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
|
1264
1333
|
#
|
1265
1334
|
# @note When making an API call, you may pass MessageAttributeValue
|
1266
1335
|
# data as a hash:
|
@@ -1397,6 +1466,8 @@ module Aws::SNS
|
|
1397
1466
|
# binary_value: "data",
|
1398
1467
|
# },
|
1399
1468
|
# },
|
1469
|
+
# message_deduplication_id: "String",
|
1470
|
+
# message_group_id: "String",
|
1400
1471
|
# }
|
1401
1472
|
#
|
1402
1473
|
# @!attribute [rw] topic_arn
|
@@ -1511,6 +1582,36 @@ module Aws::SNS
|
|
1511
1582
|
# Message attributes for Publish action.
|
1512
1583
|
# @return [Hash<String,Types::MessageAttributeValue>]
|
1513
1584
|
#
|
1585
|
+
# @!attribute [rw] message_deduplication_id
|
1586
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
1587
|
+
# `MessageDeduplicationId` can contain up to 128 alphanumeric
|
1588
|
+
# characters (a-z, A-Z, 0-9) and punctuation ``
|
1589
|
+
# (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~) ``.
|
1590
|
+
#
|
1591
|
+
# Every message must have a unique `MessageDeduplicationId`, which is
|
1592
|
+
# a token used for deduplication of sent messages. If a message with a
|
1593
|
+
# particular `MessageDeduplicationId` is sent successfully, any
|
1594
|
+
# message sent with the same `MessageDeduplicationId` during the
|
1595
|
+
# 5-minute deduplication interval is treated as a duplicate.
|
1596
|
+
#
|
1597
|
+
# If the topic has `ContentBasedDeduplication` set, the system
|
1598
|
+
# generates a `MessageDeduplicationId` based on the contents of the
|
1599
|
+
# message. Your `MessageDeduplicationId` overrides the generated one.
|
1600
|
+
# @return [String]
|
1601
|
+
#
|
1602
|
+
# @!attribute [rw] message_group_id
|
1603
|
+
# This parameter applies only to FIFO (first-in-first-out) topics. The
|
1604
|
+
# `MessageGroupId` can contain up to 128 alphanumeric characters (a-z,
|
1605
|
+
# A-Z, 0-9) and punctuation `` (!"#$%&'()*+,-./:;<=>?@[\]^_`\{|\}~)
|
1606
|
+
# ``.
|
1607
|
+
#
|
1608
|
+
# The `MessageGroupId` is a tag that specifies that a message belongs
|
1609
|
+
# to a specific message group. Messages that belong to the same
|
1610
|
+
# message group are processed in a FIFO manner (however, messages in
|
1611
|
+
# different message groups might be processed out of order). Every
|
1612
|
+
# message must include a `MessageGroupId`.
|
1613
|
+
# @return [String]
|
1614
|
+
#
|
1514
1615
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishInput AWS API Documentation
|
1515
1616
|
#
|
1516
1617
|
class PublishInput < Struct.new(
|
@@ -1520,7 +1621,9 @@ module Aws::SNS
|
|
1520
1621
|
:message,
|
1521
1622
|
:subject,
|
1522
1623
|
:message_structure,
|
1523
|
-
:message_attributes
|
1624
|
+
:message_attributes,
|
1625
|
+
:message_deduplication_id,
|
1626
|
+
:message_group_id)
|
1524
1627
|
SENSITIVE = []
|
1525
1628
|
include Aws::Structure
|
1526
1629
|
end
|
@@ -1533,10 +1636,21 @@ module Aws::SNS
|
|
1533
1636
|
# Length Constraint: Maximum 100 characters
|
1534
1637
|
# @return [String]
|
1535
1638
|
#
|
1639
|
+
# @!attribute [rw] sequence_number
|
1640
|
+
# This response element applies only to FIFO (first-in-first-out)
|
1641
|
+
# topics.
|
1642
|
+
#
|
1643
|
+
# The sequence number is a large, non-consecutive number that Amazon
|
1644
|
+
# SNS assigns to each message. The length of `SequenceNumber` is 128
|
1645
|
+
# bits. `SequenceNumber` continues to increase for each
|
1646
|
+
# `MessageGroupId`.
|
1647
|
+
# @return [String]
|
1648
|
+
#
|
1536
1649
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/PublishResponse AWS API Documentation
|
1537
1650
|
#
|
1538
1651
|
class PublishResponse < Struct.new(
|
1539
|
-
:message_id
|
1652
|
+
:message_id,
|
1653
|
+
:sequence_number)
|
1540
1654
|
SENSITIVE = []
|
1541
1655
|
include Aws::Structure
|
1542
1656
|
end
|
@@ -1818,8 +1932,7 @@ module Aws::SNS
|
|
1818
1932
|
# A map of attributes with their corresponding values.
|
1819
1933
|
#
|
1820
1934
|
# The following lists the names, descriptions, and values of the
|
1821
|
-
# special request parameters that
|
1822
|
-
# uses:
|
1935
|
+
# special request parameters that this action uses:
|
1823
1936
|
#
|
1824
1937
|
# * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
|
1825
1938
|
# failed deliveries to HTTP/S endpoints.
|
@@ -1840,6 +1953,25 @@ module Aws::SNS
|
|
1840
1953
|
# when the service that powers the subscribed endpoint becomes
|
1841
1954
|
# unavailable) are held in the dead-letter queue for further
|
1842
1955
|
# analysis or reprocessing.
|
1956
|
+
#
|
1957
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
1958
|
+
# delivery stream subscriptions:
|
1959
|
+
#
|
1960
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
1961
|
+
# following:
|
1962
|
+
#
|
1963
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
1964
|
+
#
|
1965
|
+
# * Amazon SNS listed as a trusted entity
|
1966
|
+
#
|
1967
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
1968
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
1969
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
1970
|
+
# *Amazon SNS Developer Guide*.
|
1971
|
+
#
|
1972
|
+
#
|
1973
|
+
#
|
1974
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
1843
1975
|
# @return [String]
|
1844
1976
|
#
|
1845
1977
|
# @!attribute [rw] attribute_value
|
@@ -1891,18 +2023,39 @@ module Aws::SNS
|
|
1891
2023
|
# The following attribute applies only to
|
1892
2024
|
# [server-side-encryption][1]\:
|
1893
2025
|
#
|
1894
|
-
# * `KmsMasterKeyId`
|
2026
|
+
# * `KmsMasterKeyId` – The ID of an AWS-managed customer master key
|
1895
2027
|
# (CMK) for Amazon SNS or a custom CMK. For more information, see
|
1896
2028
|
# [Key Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
|
1897
2029
|
# Management Service API Reference*.
|
1898
2030
|
#
|
1899
2031
|
# ^
|
1900
2032
|
#
|
2033
|
+
# The following attribute applies only to [FIFO topics][4]\:
|
2034
|
+
#
|
2035
|
+
# * `ContentBasedDeduplication` – Enables content-based deduplication
|
2036
|
+
# for FIFO topics.
|
2037
|
+
#
|
2038
|
+
# * By default, `ContentBasedDeduplication` is set to `false`. If
|
2039
|
+
# you create a FIFO topic and this attribute is `false`, you must
|
2040
|
+
# specify a value for the `MessageDeduplicationId` parameter for
|
2041
|
+
# the [Publish][5] action.
|
2042
|
+
#
|
2043
|
+
# * When you set `ContentBasedDeduplication` to `true`, Amazon SNS
|
2044
|
+
# uses a SHA-256 hash to generate the `MessageDeduplicationId`
|
2045
|
+
# using the body of the message (but not the attributes of the
|
2046
|
+
# message).
|
2047
|
+
#
|
2048
|
+
# (Optional) To override the generated value, you can specify a
|
2049
|
+
# value for the the `MessageDeduplicationId` parameter for the
|
2050
|
+
# `Publish` action.
|
2051
|
+
#
|
1901
2052
|
#
|
1902
2053
|
#
|
1903
2054
|
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
|
1904
2055
|
# [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
|
1905
2056
|
# [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
|
2057
|
+
# [4]: https://docs.aws.amazon.com/sns/latest/dg/sns-fifo-topics.html
|
2058
|
+
# [5]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
|
1906
2059
|
# @return [String]
|
1907
2060
|
#
|
1908
2061
|
# @!attribute [rw] attribute_value
|
@@ -1953,7 +2106,7 @@ module Aws::SNS
|
|
1953
2106
|
# @return [String]
|
1954
2107
|
#
|
1955
2108
|
# @!attribute [rw] protocol
|
1956
|
-
# The protocol you want to use. Supported protocols include:
|
2109
|
+
# The protocol that you want to use. Supported protocols include:
|
1957
2110
|
#
|
1958
2111
|
# * `http` – delivery of JSON-encoded message via HTTP POST
|
1959
2112
|
#
|
@@ -1968,10 +2121,13 @@ module Aws::SNS
|
|
1968
2121
|
# * `sqs` – delivery of JSON-encoded message to an Amazon SQS queue
|
1969
2122
|
#
|
1970
2123
|
# * `application` – delivery of JSON-encoded message to an EndpointArn
|
1971
|
-
# for a mobile app and device
|
2124
|
+
# for a mobile app and device
|
1972
2125
|
#
|
1973
|
-
# * `lambda` – delivery of JSON-encoded message to an
|
1974
|
-
# function
|
2126
|
+
# * `lambda` – delivery of JSON-encoded message to an AWS Lambda
|
2127
|
+
# function
|
2128
|
+
#
|
2129
|
+
# * `firehose` – delivery of JSON-encoded message to an Amazon Kinesis
|
2130
|
+
# Data Firehose delivery stream.
|
1975
2131
|
# @return [String]
|
1976
2132
|
#
|
1977
2133
|
# @!attribute [rw] endpoint
|
@@ -1979,26 +2135,29 @@ module Aws::SNS
|
|
1979
2135
|
# by protocol:
|
1980
2136
|
#
|
1981
2137
|
# * For the `http` protocol, the (public) endpoint is a URL beginning
|
1982
|
-
# with `http
|
2138
|
+
# with `http://`.
|
1983
2139
|
#
|
1984
2140
|
# * For the `https` protocol, the (public) endpoint is a URL beginning
|
1985
|
-
# with `https
|
2141
|
+
# with `https://`.
|
1986
2142
|
#
|
1987
|
-
# * For the `email` protocol, the endpoint is an email address
|
2143
|
+
# * For the `email` protocol, the endpoint is an email address.
|
1988
2144
|
#
|
1989
|
-
# * For the `email-json` protocol, the endpoint is an email address
|
2145
|
+
# * For the `email-json` protocol, the endpoint is an email address.
|
1990
2146
|
#
|
1991
2147
|
# * For the `sms` protocol, the endpoint is a phone number of an
|
1992
|
-
# SMS-enabled device
|
2148
|
+
# SMS-enabled device.
|
1993
2149
|
#
|
1994
2150
|
# * For the `sqs` protocol, the endpoint is the ARN of an Amazon SQS
|
1995
|
-
# queue
|
2151
|
+
# queue.
|
1996
2152
|
#
|
1997
2153
|
# * For the `application` protocol, the endpoint is the EndpointArn of
|
1998
2154
|
# a mobile app and device.
|
1999
2155
|
#
|
2000
|
-
# * For the `lambda` protocol, the endpoint is the ARN of an
|
2156
|
+
# * For the `lambda` protocol, the endpoint is the ARN of an AWS
|
2001
2157
|
# Lambda function.
|
2158
|
+
#
|
2159
|
+
# * For the `firehose` protocol, the endpoint is the ARN of an Amazon
|
2160
|
+
# Kinesis Data Firehose delivery stream.
|
2002
2161
|
# @return [String]
|
2003
2162
|
#
|
2004
2163
|
# @!attribute [rw] attributes
|
@@ -2027,6 +2186,25 @@ module Aws::SNS
|
|
2027
2186
|
# when the service that powers the subscribed endpoint becomes
|
2028
2187
|
# unavailable) are held in the dead-letter queue for further
|
2029
2188
|
# analysis or reprocessing.
|
2189
|
+
#
|
2190
|
+
# The following attribute applies only to Amazon Kinesis Data Firehose
|
2191
|
+
# delivery stream subscriptions:
|
2192
|
+
#
|
2193
|
+
# * `SubscriptionRoleArn` – The ARN of the IAM role that has the
|
2194
|
+
# following:
|
2195
|
+
#
|
2196
|
+
# * Permission to write to the Kinesis Data Firehose delivery stream
|
2197
|
+
#
|
2198
|
+
# * Amazon SNS listed as a trusted entity
|
2199
|
+
#
|
2200
|
+
# Specifying a valid ARN for this attribute is required for Kinesis
|
2201
|
+
# Data Firehose delivery stream subscriptions. For more information,
|
2202
|
+
# see [Fanout to Kinesis Data Firehose delivery streams][1] in the
|
2203
|
+
# *Amazon SNS Developer Guide*.
|
2204
|
+
#
|
2205
|
+
#
|
2206
|
+
#
|
2207
|
+
# [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-kinesis-subscriber.html
|
2030
2208
|
# @return [Hash<String,String>]
|
2031
2209
|
#
|
2032
2210
|
# @!attribute [rw] return_subscription_arn
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-sns
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.38.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-sdk-core
|
@@ -19,7 +19,7 @@ dependencies:
|
|
19
19
|
version: '3'
|
20
20
|
- - ">="
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 3.
|
22
|
+
version: 3.112.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -29,7 +29,7 @@ dependencies:
|
|
29
29
|
version: '3'
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 3.
|
32
|
+
version: 3.112.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: aws-sigv4
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|