aws-sdk-sns 1.33.0 → 1.38.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.
- 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
|