aws-sdk-sns 1.12.0 → 1.13.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a001b0461ad0d7fefc130068c47d1bb7b1b7c7ef
4
- data.tar.gz: 2ebcae7a839e174abda267c90054baebec86a03e
3
+ metadata.gz: 0173c8b2e9f123c3c9efb4dde64d9545410b0466
4
+ data.tar.gz: 3fe274d7cb01e3fe6741ec6ee1632c2728851fa4
5
5
  SHA512:
6
- metadata.gz: 8d949cfc304f6d010f7e4148c46b134e702b1bb03f2ac371f98411d1d031f6c8d0784dd3d52ab988000a7467a36074ab45fd800cd4ce48fd59d4dcad1aa894b0
7
- data.tar.gz: ec4b7318528a6dae72058381f36bd33e0bbd2dc9680c852ebc4089ea3f0378d5cf62b59388b88cf3182752691e9cd42674bddd1926ea83dced03fd0c1df6cd77
6
+ metadata.gz: eb0dae7bd607475ab016cba6406a98f0b9abc9f70dfb686e17c352f1a1ff2fa3ec1ecca9f59d61e0e28481dd9330ee2ca8f74bfa233cc00a1a9fae82ea63ee47
7
+ data.tar.gz: e44f548847b4483bdaa71a305f58d435ef2f49df3f734d7483ec76b0d1ef93524265b8aef95eea2f5ec89202016b7fdd25b3eaed177ff1f0fd5a6cea000daa11
@@ -46,6 +46,6 @@ require_relative 'aws-sdk-sns/customizations'
46
46
  # @service
47
47
  module Aws::SNS
48
48
 
49
- GEM_VERSION = '1.12.0'
49
+ GEM_VERSION = '1.13.0'
50
50
 
51
51
  end
@@ -199,6 +199,49 @@ module Aws::SNS
199
199
  # When `true`, request parameters are validated before
200
200
  # sending the request.
201
201
  #
202
+ # @option options [URI::HTTP,String] :http_proxy A proxy to send
203
+ # requests through. Formatted like 'http://proxy.com:123'.
204
+ #
205
+ # @option options [Float] :http_open_timeout (15) The number of
206
+ # seconds to wait when opening a HTTP session before rasing a
207
+ # `Timeout::Error`.
208
+ #
209
+ # @option options [Integer] :http_read_timeout (60) The default
210
+ # number of seconds to wait for response data. This value can
211
+ # safely be set
212
+ # per-request on the session yeidled by {#session_for}.
213
+ #
214
+ # @option options [Float] :http_idle_timeout (5) The number of
215
+ # seconds a connection is allowed to sit idble before it is
216
+ # considered stale. Stale connections are closed and removed
217
+ # from the pool before making a request.
218
+ #
219
+ # @option options [Float] :http_continue_timeout (1) The number of
220
+ # seconds to wait for a 100-continue response before sending the
221
+ # request body. This option has no effect unless the request has
222
+ # "Expect" header set to "100-continue". Defaults to `nil` which
223
+ # disables this behaviour. This value can safely be set per
224
+ # request on the session yeidled by {#session_for}.
225
+ #
226
+ # @option options [Boolean] :http_wire_trace (false) When `true`,
227
+ # HTTP debug output will be sent to the `:logger`.
228
+ #
229
+ # @option options [Boolean] :ssl_verify_peer (true) When `true`,
230
+ # SSL peer certificates are verified when establishing a
231
+ # connection.
232
+ #
233
+ # @option options [String] :ssl_ca_bundle Full path to the SSL
234
+ # certificate authority bundle file that should be used when
235
+ # verifying peer certificates. If you do not pass
236
+ # `:ssl_ca_bundle` or `:ssl_ca_directory` the the system default
237
+ # will be used if available.
238
+ #
239
+ # @option options [String] :ssl_ca_directory Full path of the
240
+ # directory that contains the unbundled SSL certificate
241
+ # authority files for verifying peer certificates. If you do
242
+ # not pass `:ssl_ca_bundle` or `:ssl_ca_directory` the the
243
+ # system default will be used if available.
244
+ #
202
245
  def initialize(*args)
203
246
  super
204
247
  end
@@ -322,7 +365,7 @@ module Aws::SNS
322
365
  end
323
366
 
324
367
  # Creates a platform application object for one of the supported push
325
- # notification services, such as APNS and GCM, to which devices and
368
+ # notification services, such as APNS and FCM, to which devices and
326
369
  # mobile apps may register. You must specify PlatformPrincipal and
327
370
  # PlatformCredential attributes when using the
328
371
  # `CreatePlatformApplication` action. The PlatformPrincipal is received
@@ -352,13 +395,13 @@ module Aws::SNS
352
395
  #
353
396
  #
354
397
  #
355
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
356
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html
357
- # [3]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html
358
- # [4]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html
359
- # [5]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html
360
- # [6]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html
361
- # [7]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html
398
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
399
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html
400
+ # [3]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html
401
+ # [4]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html
402
+ # [5]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html
403
+ # [6]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html
404
+ # [7]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html
362
405
  #
363
406
  # @option params [required, String] :name
364
407
  # Application names must be made up of only uppercase and lowercase
@@ -375,7 +418,7 @@ module Aws::SNS
375
418
  #
376
419
  #
377
420
  #
378
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
421
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
379
422
  #
380
423
  # @return [Types::CreatePlatformApplicationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
381
424
  #
@@ -423,8 +466,8 @@ module Aws::SNS
423
466
  #
424
467
  #
425
468
  #
426
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
427
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
469
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
470
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
428
471
  #
429
472
  # @option params [required, String] :platform_application_arn
430
473
  # PlatformApplicationArn returned from CreatePlatformApplication is used
@@ -447,7 +490,7 @@ module Aws::SNS
447
490
  #
448
491
  #
449
492
  #
450
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
493
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
451
494
  #
452
495
  # @return [Types::CreateEndpointResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
453
496
  #
@@ -479,7 +522,7 @@ module Aws::SNS
479
522
 
480
523
  # Creates a topic to which notifications can be published. Users can
481
524
  # create at most 100,000 topics. For more information, see
482
- # [http://aws.amazon.com/sns][1]. This action is idempotent, so if the
525
+ # [https://aws.amazon.com/sns][1]. This action is idempotent, so if the
483
526
  # requester already owns a topic with the specified name, that topic's
484
527
  # ARN is returned without creating a new topic.
485
528
  #
@@ -509,6 +552,24 @@ module Aws::SNS
509
552
  # * `Policy` – The policy that defines who can access your topic. By
510
553
  # default, only the topic owner can publish or subscribe to the topic.
511
554
  #
555
+ # The following attribute applies only to [server-side-encryption][1]\:
556
+ #
557
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
558
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
559
+ # Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
560
+ # Management Service API Reference*.
561
+ #
562
+ # ^
563
+ #
564
+ #
565
+ #
566
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
567
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
568
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
569
+ #
570
+ # @option params [Array<Types::Tag>] :tags
571
+ # The list of tags to add to a new topic.
572
+ #
512
573
  # @return [Types::CreateTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
513
574
  #
514
575
  # * {Types::CreateTopicResponse#topic_arn #topic_arn} => String
@@ -520,6 +581,12 @@ module Aws::SNS
520
581
  # attributes: {
521
582
  # "attributeName" => "attributeValue",
522
583
  # },
584
+ # tags: [
585
+ # {
586
+ # key: "TagKey", # required
587
+ # value: "TagValue", # required
588
+ # },
589
+ # ],
523
590
  # })
524
591
  #
525
592
  # @example Response structure
@@ -544,7 +611,7 @@ module Aws::SNS
544
611
  #
545
612
  #
546
613
  #
547
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
614
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
548
615
  #
549
616
  # @option params [required, String] :endpoint_arn
550
617
  # EndpointArn of endpoint to delete.
@@ -572,7 +639,7 @@ module Aws::SNS
572
639
  #
573
640
  #
574
641
  #
575
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
642
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
576
643
  #
577
644
  # @option params [required, String] :platform_application_arn
578
645
  # PlatformApplicationArn of platform application object to delete.
@@ -625,7 +692,7 @@ module Aws::SNS
625
692
  #
626
693
  #
627
694
  #
628
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
695
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
629
696
  #
630
697
  # @option params [required, String] :endpoint_arn
631
698
  # EndpointArn for GetEndpointAttributes input.
@@ -660,7 +727,7 @@ module Aws::SNS
660
727
  #
661
728
  #
662
729
  #
663
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
730
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
664
731
  #
665
732
  # @option params [required, String] :platform_application_arn
666
733
  # PlatformApplicationArn for GetPlatformApplicationAttributesInput.
@@ -704,7 +771,7 @@ module Aws::SNS
704
771
  #
705
772
  #
706
773
  #
707
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
774
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
708
775
  #
709
776
  # @return [Types::GetSMSAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
710
777
  #
@@ -804,7 +871,7 @@ module Aws::SNS
804
871
  #
805
872
  #
806
873
  #
807
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
874
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
808
875
  #
809
876
  # @option params [required, String] :platform_application_arn
810
877
  # PlatformApplicationArn for ListEndpointsByPlatformApplicationInput
@@ -900,7 +967,7 @@ module Aws::SNS
900
967
  #
901
968
  #
902
969
  #
903
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
970
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
904
971
  #
905
972
  # @option params [String] :next_token
906
973
  # NextToken string is used when calling ListPlatformApplications action
@@ -1020,6 +1087,42 @@ module Aws::SNS
1020
1087
  req.send_request(options)
1021
1088
  end
1022
1089
 
1090
+ # List all tags added to the specified Amazon SNS topic. For an
1091
+ # overview, see [Amazon SNS Tags][1] in the *Amazon Simple Notification
1092
+ # Service Developer Guide*.
1093
+ #
1094
+ #
1095
+ #
1096
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-tags.html
1097
+ #
1098
+ # @option params [required, String] :resource_arn
1099
+ # The ARN of the topic for which to list tags.
1100
+ #
1101
+ # @return [Types::ListTagsForResourceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1102
+ #
1103
+ # * {Types::ListTagsForResourceResponse#tags #tags} => Array&lt;Types::Tag&gt;
1104
+ #
1105
+ # @example Request syntax with placeholder values
1106
+ #
1107
+ # resp = client.list_tags_for_resource({
1108
+ # resource_arn: "AmazonResourceName", # required
1109
+ # })
1110
+ #
1111
+ # @example Response structure
1112
+ #
1113
+ # resp.tags #=> Array
1114
+ # resp.tags[0].key #=> String
1115
+ # resp.tags[0].value #=> String
1116
+ #
1117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListTagsForResource AWS API Documentation
1118
+ #
1119
+ # @overload list_tags_for_resource(params = {})
1120
+ # @param [Hash] params ({})
1121
+ def list_tags_for_resource(params = {}, options = {})
1122
+ req = build_request(:list_tags_for_resource, params)
1123
+ req.send_request(options)
1124
+ end
1125
+
1023
1126
  # Returns a list of the requester's topics. Each call returns a limited
1024
1127
  # list of topics, up to 100. If there are more topics, a `NextToken` is
1025
1128
  # also returned. Use the `NextToken` parameter in a new `ListTopics`
@@ -1103,7 +1206,7 @@ module Aws::SNS
1103
1206
  #
1104
1207
  #
1105
1208
  #
1106
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
1209
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
1107
1210
  #
1108
1211
  # @option params [String] :topic_arn
1109
1212
  # The topic you want to publish to.
@@ -1112,8 +1215,6 @@ module Aws::SNS
1112
1215
  # specify a value for the `PhoneNumber` or `TargetArn` parameters.
1113
1216
  #
1114
1217
  # @option params [String] :target_arn
1115
- # Either TopicArn or EndpointArn, but not both.
1116
- #
1117
1218
  # If you don't specify a value for the `TargetArn` parameter, you must
1118
1219
  # specify a value for the `PhoneNumber` or `TopicArn` parameters.
1119
1220
  #
@@ -1217,7 +1318,7 @@ module Aws::SNS
1217
1318
  #
1218
1319
  #
1219
1320
  #
1220
- # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
1321
+ # [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
1221
1322
  #
1222
1323
  # @option params [Hash<String,Types::MessageAttributeValue>] :message_attributes
1223
1324
  # Message attributes for Publish action.
@@ -1289,7 +1390,7 @@ module Aws::SNS
1289
1390
  #
1290
1391
  #
1291
1392
  #
1292
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1393
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1293
1394
  #
1294
1395
  # @option params [required, String] :endpoint_arn
1295
1396
  # EndpointArn used for SetEndpointAttributes action.
@@ -1341,8 +1442,8 @@ module Aws::SNS
1341
1442
  #
1342
1443
  #
1343
1444
  #
1344
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1345
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
1445
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
1446
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
1346
1447
  #
1347
1448
  # @option params [required, String] :platform_application_arn
1348
1449
  # PlatformApplicationArn for SetPlatformApplicationAttributes action.
@@ -1413,7 +1514,7 @@ module Aws::SNS
1413
1514
  #
1414
1515
  #
1415
1516
  #
1416
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1517
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1417
1518
  #
1418
1519
  # @option params [required, Hash<String,String>] :attributes
1419
1520
  # The default settings for sending SMS messages from your account. You
@@ -1497,7 +1598,7 @@ module Aws::SNS
1497
1598
  #
1498
1599
  #
1499
1600
  # [1]: https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&amp;limitType=service-code-sns
1500
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1601
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1501
1602
  #
1502
1603
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1503
1604
  #
@@ -1584,6 +1685,21 @@ module Aws::SNS
1584
1685
  # * `Policy` – The policy that defines who can access your topic. By
1585
1686
  # default, only the topic owner can publish or subscribe to the topic.
1586
1687
  #
1688
+ # The following attribute applies only to [server-side-encryption][1]\:
1689
+ #
1690
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
1691
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
1692
+ # Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
1693
+ # Management Service API Reference*.
1694
+ #
1695
+ # ^
1696
+ #
1697
+ #
1698
+ #
1699
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
1700
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
1701
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
1702
+ #
1587
1703
  # @option params [String] :attribute_value
1588
1704
  # The new value for the attribute.
1589
1705
  #
@@ -1643,7 +1759,7 @@ module Aws::SNS
1643
1759
  # protocol:
1644
1760
  #
1645
1761
  # * For the `http` protocol, the endpoint is an URL beginning with
1646
- # "http://"
1762
+ # "https://"
1647
1763
  #
1648
1764
  # * For the `https` protocol, the endpoint is a URL beginning with
1649
1765
  # "https://"
@@ -1726,6 +1842,64 @@ module Aws::SNS
1726
1842
  req.send_request(options)
1727
1843
  end
1728
1844
 
1845
+ # Add tags to the specified Amazon SNS topic. For an overview, see
1846
+ # [Amazon SNS Tags][1] in the *Amazon SNS Developer Guide*.
1847
+ #
1848
+ # When you use topic tags, keep the following guidelines in mind:
1849
+ #
1850
+ # * Adding more than 50 tags to a topic isn't recommended.
1851
+ #
1852
+ # * Tags don't have any semantic meaning. Amazon SNS interprets tags as
1853
+ # character strings.
1854
+ #
1855
+ # * Tags are case-sensitive.
1856
+ #
1857
+ # * A new tag with a key identical to that of an existing tag overwrites
1858
+ # the existing tag.
1859
+ #
1860
+ # * Tagging actions are limited to 10 TPS per AWS account. If your
1861
+ # application requires a higher throughput, file a [technical support
1862
+ # request][2].
1863
+ #
1864
+ # For a full list of tag restrictions, see [Limits Related to Topics][3]
1865
+ # in the *Amazon SNS Developer Guide*.
1866
+ #
1867
+ #
1868
+ #
1869
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-tags.html
1870
+ # [2]: https://console.aws.amazon.com/support/home#/case/create?issueType=technical
1871
+ # [3]: https://docs.aws.amazon.com/sns/latest/dg/sns-limits.html#limits-topics
1872
+ #
1873
+ # @option params [required, String] :resource_arn
1874
+ # The ARN of the topic to which to add tags.
1875
+ #
1876
+ # @option params [required, Array<Types::Tag>] :tags
1877
+ # The tags to be added to the specified topic. A tag consists of a
1878
+ # required key and an optional value.
1879
+ #
1880
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1881
+ #
1882
+ # @example Request syntax with placeholder values
1883
+ #
1884
+ # resp = client.tag_resource({
1885
+ # resource_arn: "AmazonResourceName", # required
1886
+ # tags: [ # required
1887
+ # {
1888
+ # key: "TagKey", # required
1889
+ # value: "TagValue", # required
1890
+ # },
1891
+ # ],
1892
+ # })
1893
+ #
1894
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/TagResource AWS API Documentation
1895
+ #
1896
+ # @overload tag_resource(params = {})
1897
+ # @param [Hash] params ({})
1898
+ def tag_resource(params = {}, options = {})
1899
+ req = build_request(:tag_resource, params)
1900
+ req.send_request(options)
1901
+ end
1902
+
1729
1903
  # Deletes a subscription. If the subscription requires authentication
1730
1904
  # for deletion, only the owner of the subscription or the topic's owner
1731
1905
  # can unsubscribe, and an AWS signature is required. If the
@@ -1756,6 +1930,37 @@ module Aws::SNS
1756
1930
  req.send_request(options)
1757
1931
  end
1758
1932
 
1933
+ # Remove tags from the specified Amazon SNS topic. For an overview, see
1934
+ # [Amazon SNS Tags][1] in the *Amazon SNS Developer Guide*.
1935
+ #
1936
+ #
1937
+ #
1938
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-tags.html
1939
+ #
1940
+ # @option params [required, String] :resource_arn
1941
+ # The ARN of the topic from which to remove tags.
1942
+ #
1943
+ # @option params [required, Array<String>] :tag_keys
1944
+ # The list of tag keys to remove from the specified topic.
1945
+ #
1946
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1947
+ #
1948
+ # @example Request syntax with placeholder values
1949
+ #
1950
+ # resp = client.untag_resource({
1951
+ # resource_arn: "AmazonResourceName", # required
1952
+ # tag_keys: ["TagKey"], # required
1953
+ # })
1954
+ #
1955
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/UntagResource AWS API Documentation
1956
+ #
1957
+ # @overload untag_resource(params = {})
1958
+ # @param [Hash] params ({})
1959
+ def untag_resource(params = {}, options = {})
1960
+ req = build_request(:untag_resource, params)
1961
+ req.send_request(options)
1962
+ end
1963
+
1759
1964
  # @!endgroup
1760
1965
 
1761
1966
  # @param params ({})
@@ -1769,7 +1974,7 @@ module Aws::SNS
1769
1974
  params: params,
1770
1975
  config: config)
1771
1976
  context[:gem_name] = 'aws-sdk-sns'
1772
- context[:gem_version] = '1.12.0'
1977
+ context[:gem_version] = '1.13.0'
1773
1978
  Seahorse::Client::Request.new(handlers, context)
1774
1979
  end
1775
1980
 
@@ -13,10 +13,12 @@ module Aws::SNS
13
13
 
14
14
  ActionsList = Shapes::ListShape.new(name: 'ActionsList')
15
15
  AddPermissionInput = Shapes::StructureShape.new(name: 'AddPermissionInput')
16
+ AmazonResourceName = Shapes::StringShape.new(name: 'AmazonResourceName')
16
17
  AuthorizationErrorException = Shapes::StructureShape.new(name: 'AuthorizationErrorException')
17
18
  Binary = Shapes::BlobShape.new(name: 'Binary')
18
19
  CheckIfPhoneNumberIsOptedOutInput = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutInput')
19
20
  CheckIfPhoneNumberIsOptedOutResponse = Shapes::StructureShape.new(name: 'CheckIfPhoneNumberIsOptedOutResponse')
21
+ ConcurrentAccessException = Shapes::StructureShape.new(name: 'ConcurrentAccessException')
20
22
  ConfirmSubscriptionInput = Shapes::StructureShape.new(name: 'ConfirmSubscriptionInput')
21
23
  ConfirmSubscriptionResponse = Shapes::StructureShape.new(name: 'ConfirmSubscriptionResponse')
22
24
  CreateEndpointResponse = Shapes::StructureShape.new(name: 'CreateEndpointResponse')
@@ -65,6 +67,8 @@ module Aws::SNS
65
67
  ListSubscriptionsByTopicResponse = Shapes::StructureShape.new(name: 'ListSubscriptionsByTopicResponse')
66
68
  ListSubscriptionsInput = Shapes::StructureShape.new(name: 'ListSubscriptionsInput')
67
69
  ListSubscriptionsResponse = Shapes::StructureShape.new(name: 'ListSubscriptionsResponse')
70
+ ListTagsForResourceRequest = Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
71
+ ListTagsForResourceResponse = Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
68
72
  ListTopicsInput = Shapes::StructureShape.new(name: 'ListTopicsInput')
69
73
  ListTopicsResponse = Shapes::StructureShape.new(name: 'ListTopicsResponse')
70
74
  MapStringToString = Shapes::MapShape.new(name: 'MapStringToString')
@@ -80,12 +84,14 @@ module Aws::SNS
80
84
  PublishInput = Shapes::StructureShape.new(name: 'PublishInput')
81
85
  PublishResponse = Shapes::StructureShape.new(name: 'PublishResponse')
82
86
  RemovePermissionInput = Shapes::StructureShape.new(name: 'RemovePermissionInput')
87
+ ResourceNotFoundException = Shapes::StructureShape.new(name: 'ResourceNotFoundException')
83
88
  SetEndpointAttributesInput = Shapes::StructureShape.new(name: 'SetEndpointAttributesInput')
84
89
  SetPlatformApplicationAttributesInput = Shapes::StructureShape.new(name: 'SetPlatformApplicationAttributesInput')
85
90
  SetSMSAttributesInput = Shapes::StructureShape.new(name: 'SetSMSAttributesInput')
86
91
  SetSMSAttributesResponse = Shapes::StructureShape.new(name: 'SetSMSAttributesResponse')
87
92
  SetSubscriptionAttributesInput = Shapes::StructureShape.new(name: 'SetSubscriptionAttributesInput')
88
93
  SetTopicAttributesInput = Shapes::StructureShape.new(name: 'SetTopicAttributesInput')
94
+ StaleTagException = Shapes::StructureShape.new(name: 'StaleTagException')
89
95
  String = Shapes::StringShape.new(name: 'String')
90
96
  SubscribeInput = Shapes::StructureShape.new(name: 'SubscribeInput')
91
97
  SubscribeResponse = Shapes::StructureShape.new(name: 'SubscribeResponse')
@@ -93,12 +99,23 @@ module Aws::SNS
93
99
  SubscriptionAttributesMap = Shapes::MapShape.new(name: 'SubscriptionAttributesMap')
94
100
  SubscriptionLimitExceededException = Shapes::StructureShape.new(name: 'SubscriptionLimitExceededException')
95
101
  SubscriptionsList = Shapes::ListShape.new(name: 'SubscriptionsList')
102
+ Tag = Shapes::StructureShape.new(name: 'Tag')
103
+ TagKey = Shapes::StringShape.new(name: 'TagKey')
104
+ TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
105
+ TagLimitExceededException = Shapes::StructureShape.new(name: 'TagLimitExceededException')
106
+ TagList = Shapes::ListShape.new(name: 'TagList')
107
+ TagPolicyException = Shapes::StructureShape.new(name: 'TagPolicyException')
108
+ TagResourceRequest = Shapes::StructureShape.new(name: 'TagResourceRequest')
109
+ TagResourceResponse = Shapes::StructureShape.new(name: 'TagResourceResponse')
110
+ TagValue = Shapes::StringShape.new(name: 'TagValue')
96
111
  ThrottledException = Shapes::StructureShape.new(name: 'ThrottledException')
97
112
  Topic = Shapes::StructureShape.new(name: 'Topic')
98
113
  TopicAttributesMap = Shapes::MapShape.new(name: 'TopicAttributesMap')
99
114
  TopicLimitExceededException = Shapes::StructureShape.new(name: 'TopicLimitExceededException')
100
115
  TopicsList = Shapes::ListShape.new(name: 'TopicsList')
101
116
  UnsubscribeInput = Shapes::StructureShape.new(name: 'UnsubscribeInput')
117
+ UntagResourceRequest = Shapes::StructureShape.new(name: 'UntagResourceRequest')
118
+ UntagResourceResponse = Shapes::StructureShape.new(name: 'UntagResourceResponse')
102
119
  account = Shapes::StringShape.new(name: 'account')
103
120
  action = Shapes::StringShape.new(name: 'action')
104
121
  attributeName = Shapes::StringShape.new(name: 'attributeName')
@@ -161,6 +178,7 @@ module Aws::SNS
161
178
 
162
179
  CreateTopicInput.add_member(:name, Shapes::ShapeRef.new(shape: topicName, required: true, location_name: "Name"))
163
180
  CreateTopicInput.add_member(:attributes, Shapes::ShapeRef.new(shape: TopicAttributesMap, location_name: "Attributes"))
181
+ CreateTopicInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
164
182
  CreateTopicInput.struct_class = Types::CreateTopicInput
165
183
 
166
184
  CreateTopicResponse.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
@@ -254,6 +272,12 @@ module Aws::SNS
254
272
  ListSubscriptionsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: nextToken, location_name: "NextToken"))
255
273
  ListSubscriptionsResponse.struct_class = Types::ListSubscriptionsResponse
256
274
 
275
+ ListTagsForResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceArn"))
276
+ ListTagsForResourceRequest.struct_class = Types::ListTagsForResourceRequest
277
+
278
+ ListTagsForResourceResponse.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "Tags"))
279
+ ListTagsForResourceResponse.struct_class = Types::ListTagsForResourceResponse
280
+
257
281
  ListTopicsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: nextToken, location_name: "NextToken"))
258
282
  ListTopicsInput.struct_class = Types::ListTopicsInput
259
283
 
@@ -344,6 +368,20 @@ module Aws::SNS
344
368
 
345
369
  SubscriptionsList.member = Shapes::ShapeRef.new(shape: Subscription)
346
370
 
371
+ Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
372
+ Tag.add_member(:value, Shapes::ShapeRef.new(shape: TagValue, required: true, location_name: "Value"))
373
+ Tag.struct_class = Types::Tag
374
+
375
+ TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
376
+
377
+ TagList.member = Shapes::ShapeRef.new(shape: Tag)
378
+
379
+ TagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceArn"))
380
+ TagResourceRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "Tags"))
381
+ TagResourceRequest.struct_class = Types::TagResourceRequest
382
+
383
+ TagResourceResponse.struct_class = Types::TagResourceResponse
384
+
347
385
  Topic.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
348
386
  Topic.struct_class = Types::Topic
349
387
 
@@ -355,6 +393,12 @@ module Aws::SNS
355
393
  UnsubscribeInput.add_member(:subscription_arn, Shapes::ShapeRef.new(shape: subscriptionARN, required: true, location_name: "SubscriptionArn"))
356
394
  UnsubscribeInput.struct_class = Types::UnsubscribeInput
357
395
 
396
+ UntagResourceRequest.add_member(:resource_arn, Shapes::ShapeRef.new(shape: AmazonResourceName, required: true, location_name: "ResourceArn"))
397
+ UntagResourceRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeyList, required: true, location_name: "TagKeys"))
398
+ UntagResourceRequest.struct_class = Types::UntagResourceRequest
399
+
400
+ UntagResourceResponse.struct_class = Types::UntagResourceResponse
401
+
358
402
 
359
403
  # @api private
360
404
  API = Seahorse::Model::Api.new.tap do |api|
@@ -408,6 +452,7 @@ module Aws::SNS
408
452
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
409
453
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
410
454
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
455
+ o.errors << Shapes::ShapeRef.new(shape: FilterPolicyLimitExceededException)
411
456
  end)
412
457
 
413
458
  api.add_operation(:create_platform_application, Seahorse::Model::Operation.new.tap do |o|
@@ -444,6 +489,10 @@ module Aws::SNS
444
489
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
445
490
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
446
491
  o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
492
+ o.errors << Shapes::ShapeRef.new(shape: TagLimitExceededException)
493
+ o.errors << Shapes::ShapeRef.new(shape: StaleTagException)
494
+ o.errors << Shapes::ShapeRef.new(shape: TagPolicyException)
495
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
447
496
  end)
448
497
 
449
498
  api.add_operation(:delete_endpoint, Seahorse::Model::Operation.new.tap do |o|
@@ -478,6 +527,9 @@ module Aws::SNS
478
527
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
479
528
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
480
529
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
530
+ o.errors << Shapes::ShapeRef.new(shape: StaleTagException)
531
+ o.errors << Shapes::ShapeRef.new(shape: TagPolicyException)
532
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
481
533
  end)
482
534
 
483
535
  api.add_operation(:get_endpoint_attributes, Seahorse::Model::Operation.new.tap do |o|
@@ -619,6 +671,19 @@ module Aws::SNS
619
671
  )
620
672
  end)
621
673
 
674
+ api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
675
+ o.name = "ListTagsForResource"
676
+ o.http_method = "POST"
677
+ o.http_request_uri = "/"
678
+ o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
679
+ o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
680
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
681
+ o.errors << Shapes::ShapeRef.new(shape: TagPolicyException)
682
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
683
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
684
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
685
+ end)
686
+
622
687
  api.add_operation(:list_topics, Seahorse::Model::Operation.new.tap do |o|
623
688
  o.name = "ListTopics"
624
689
  o.http_method = "POST"
@@ -758,6 +823,21 @@ module Aws::SNS
758
823
  o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
759
824
  end)
760
825
 
826
+ api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
827
+ o.name = "TagResource"
828
+ o.http_method = "POST"
829
+ o.http_request_uri = "/"
830
+ o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
831
+ o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
832
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
833
+ o.errors << Shapes::ShapeRef.new(shape: TagLimitExceededException)
834
+ o.errors << Shapes::ShapeRef.new(shape: StaleTagException)
835
+ o.errors << Shapes::ShapeRef.new(shape: TagPolicyException)
836
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
837
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
838
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
839
+ end)
840
+
761
841
  api.add_operation(:unsubscribe, Seahorse::Model::Operation.new.tap do |o|
762
842
  o.name = "Unsubscribe"
763
843
  o.http_method = "POST"
@@ -770,6 +850,21 @@ module Aws::SNS
770
850
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
771
851
  o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
772
852
  end)
853
+
854
+ api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
855
+ o.name = "UntagResource"
856
+ o.http_method = "POST"
857
+ o.http_request_uri = "/"
858
+ o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
859
+ o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
860
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
861
+ o.errors << Shapes::ShapeRef.new(shape: TagLimitExceededException)
862
+ o.errors << Shapes::ShapeRef.new(shape: StaleTagException)
863
+ o.errors << Shapes::ShapeRef.new(shape: TagPolicyException)
864
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
865
+ o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
866
+ o.errors << Shapes::ShapeRef.new(shape: ConcurrentAccessException)
867
+ end)
773
868
  end
774
869
 
775
870
  end
@@ -111,7 +111,7 @@ module Aws::SNS
111
111
  #
112
112
  #
113
113
  #
114
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
114
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
115
115
  # @return [PlatformEndpoint]
116
116
  def create_platform_endpoint(options = {})
117
117
  options = options.merge(platform_application_arn: @arn)
@@ -217,7 +217,7 @@ module Aws::SNS
217
217
  #
218
218
  #
219
219
  #
220
- # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
220
+ # [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
221
221
  # @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
222
222
  # Message attributes for Publish action.
223
223
  # @return [Types::PublishResponse]
@@ -44,7 +44,7 @@ module Aws::SNS
44
44
  #
45
45
  #
46
46
  #
47
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
47
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
48
48
  # @return [PlatformApplication]
49
49
  def create_platform_application(options = {})
50
50
  resp = @client.create_platform_application(options)
@@ -61,6 +61,12 @@ module Aws::SNS
61
61
  # attributes: {
62
62
  # "attributeName" => "attributeValue",
63
63
  # },
64
+ # tags: [
65
+ # {
66
+ # key: "TagKey", # required
67
+ # value: "TagValue", # required
68
+ # },
69
+ # ],
64
70
  # })
65
71
  # @param [Hash] options ({})
66
72
  # @option options [required, String] :name
@@ -83,6 +89,23 @@ module Aws::SNS
83
89
  #
84
90
  # * `Policy` – The policy that defines who can access your topic. By
85
91
  # default, only the topic owner can publish or subscribe to the topic.
92
+ #
93
+ # The following attribute applies only to [server-side-encryption][1]\:
94
+ #
95
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
96
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
97
+ # Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
98
+ # Management Service API Reference*.
99
+ #
100
+ # ^
101
+ #
102
+ #
103
+ #
104
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
105
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
106
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
107
+ # @option options [Array<Types::Tag>] :tags
108
+ # The list of tags to add to a new topic.
86
109
  # @return [Topic]
87
110
  def create_topic(options = {})
88
111
  resp = @client.create_topic(options)
@@ -178,8 +178,6 @@ module Aws::SNS
178
178
  # })
179
179
  # @param [Hash] options ({})
180
180
  # @option options [String] :target_arn
181
- # Either TopicArn or EndpointArn, but not both.
182
- #
183
181
  # If you don't specify a value for the `TargetArn` parameter, you must
184
182
  # specify a value for the `PhoneNumber` or `TopicArn` parameters.
185
183
  # @option options [String] :phone_number
@@ -279,7 +277,7 @@ module Aws::SNS
279
277
  #
280
278
  #
281
279
  #
282
- # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
280
+ # [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
283
281
  # @option options [Hash<String,Types::MessageAttributeValue>] :message_attributes
284
282
  # Message attributes for Publish action.
285
283
  # @return [Types::PublishResponse]
@@ -325,6 +323,21 @@ module Aws::SNS
325
323
  #
326
324
  # * `Policy` – The policy that defines who can access your topic. By
327
325
  # default, only the topic owner can publish or subscribe to the topic.
326
+ #
327
+ # The following attribute applies only to [server-side-encryption][1]\:
328
+ #
329
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
330
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see [Key
331
+ # Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
332
+ # Management Service API Reference*.
333
+ #
334
+ # ^
335
+ #
336
+ #
337
+ #
338
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
339
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
340
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
328
341
  # @option options [String] :attribute_value
329
342
  # The new value for the attribute.
330
343
  # @return [EmptyStructure]
@@ -370,7 +383,7 @@ module Aws::SNS
370
383
  # protocol:
371
384
  #
372
385
  # * For the `http` protocol, the endpoint is an URL beginning with
373
- # "http://"
386
+ # "https://"
374
387
  #
375
388
  # * For the `https` protocol, the endpoint is a URL beginning with
376
389
  # "https://"
@@ -179,7 +179,7 @@ module Aws::SNS
179
179
  #
180
180
  #
181
181
  #
182
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
182
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetPlatformApplicationAttributes.html
183
183
  # @return [Hash<String,String>]
184
184
  #
185
185
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreatePlatformApplicationInput AWS API Documentation
@@ -243,7 +243,7 @@ module Aws::SNS
243
243
  #
244
244
  #
245
245
  #
246
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
246
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetEndpointAttributes.html
247
247
  # @return [Hash<String,String>]
248
248
  #
249
249
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreatePlatformEndpointInput AWS API Documentation
@@ -266,6 +266,12 @@ module Aws::SNS
266
266
  # attributes: {
267
267
  # "attributeName" => "attributeValue",
268
268
  # },
269
+ # tags: [
270
+ # {
271
+ # key: "TagKey", # required
272
+ # value: "TagValue", # required
273
+ # },
274
+ # ],
269
275
  # }
270
276
  #
271
277
  # @!attribute [rw] name
@@ -291,13 +297,34 @@ module Aws::SNS
291
297
  # * `Policy` – The policy that defines who can access your topic. By
292
298
  # default, only the topic owner can publish or subscribe to the
293
299
  # topic.
300
+ #
301
+ # The following attribute applies only to
302
+ # [server-side-encryption][1]\:
303
+ #
304
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
305
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see
306
+ # [Key Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
307
+ # Management Service API Reference*.
308
+ #
309
+ # ^
310
+ #
311
+ #
312
+ #
313
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
314
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
315
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
294
316
  # @return [Hash<String,String>]
295
317
  #
318
+ # @!attribute [rw] tags
319
+ # The list of tags to add to a new topic.
320
+ # @return [Array<Types::Tag>]
321
+ #
296
322
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreateTopicInput AWS API Documentation
297
323
  #
298
324
  class CreateTopicInput < Struct.new(
299
325
  :name,
300
- :attributes)
326
+ :attributes,
327
+ :tags)
301
328
  include Aws::Structure
302
329
  end
303
330
 
@@ -503,7 +530,7 @@ module Aws::SNS
503
530
  #
504
531
  #
505
532
  #
506
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
533
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_SetSMSAttributes.html
507
534
  # @return [Array<String>]
508
535
  #
509
536
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetSMSAttributesInput AWS API Documentation
@@ -868,6 +895,35 @@ module Aws::SNS
868
895
  include Aws::Structure
869
896
  end
870
897
 
898
+ # @note When making an API call, you may pass ListTagsForResourceRequest
899
+ # data as a hash:
900
+ #
901
+ # {
902
+ # resource_arn: "AmazonResourceName", # required
903
+ # }
904
+ #
905
+ # @!attribute [rw] resource_arn
906
+ # The ARN of the topic for which to list tags.
907
+ # @return [String]
908
+ #
909
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListTagsForResourceRequest AWS API Documentation
910
+ #
911
+ class ListTagsForResourceRequest < Struct.new(
912
+ :resource_arn)
913
+ include Aws::Structure
914
+ end
915
+
916
+ # @!attribute [rw] tags
917
+ # The tags associated with the specified topic.
918
+ # @return [Array<Types::Tag>]
919
+ #
920
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/ListTagsForResourceResponse AWS API Documentation
921
+ #
922
+ class ListTagsForResourceResponse < Struct.new(
923
+ :tags)
924
+ include Aws::Structure
925
+ end
926
+
871
927
  # @note When making an API call, you may pass ListTopicsInput
872
928
  # data as a hash:
873
929
  #
@@ -917,8 +973,8 @@ module Aws::SNS
917
973
  #
918
974
  #
919
975
  #
920
- # [1]: http://docs.aws.amazon.com/sns/latest/api/API_Publish.html
921
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html
976
+ # [1]: https://docs.aws.amazon.com/sns/latest/api/API_Publish.html
977
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html
922
978
  #
923
979
  # @note When making an API call, you may pass MessageAttributeValue
924
980
  # data as a hash:
@@ -936,17 +992,16 @@ module Aws::SNS
936
992
  #
937
993
  #
938
994
  #
939
- # [1]: http://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html#SNSMessageAttributes.DataTypes
995
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/SNSMessageAttributes.html#SNSMessageAttributes.DataTypes
940
996
  # @return [String]
941
997
  #
942
998
  # @!attribute [rw] string_value
943
999
  # Strings are Unicode with UTF8 binary encoding. For a list of code
944
- # values, see
945
- # [http://en.wikipedia.org/wiki/ASCII#ASCII\_printable\_characters][1].
1000
+ # values, see [ASCII Printable Characters][1].
946
1001
  #
947
1002
  #
948
1003
  #
949
- # [1]: http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
1004
+ # [1]: https://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters
950
1005
  # @return [String]
951
1006
  #
952
1007
  # @!attribute [rw] binary_value
@@ -1036,8 +1091,6 @@ module Aws::SNS
1036
1091
  # @return [String]
1037
1092
  #
1038
1093
  # @!attribute [rw] target_arn
1039
- # Either TopicArn or EndpointArn, but not both.
1040
- #
1041
1094
  # If you don't specify a value for the `TargetArn` parameter, you
1042
1095
  # must specify a value for the `PhoneNumber` or `TopicArn` parameters.
1043
1096
  # @return [String]
@@ -1148,7 +1201,7 @@ module Aws::SNS
1148
1201
  #
1149
1202
  #
1150
1203
  #
1151
- # [1]: http://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
1204
+ # [1]: https://docs.aws.amazon.com/sns/latest/gsg/Publish.html#sns-message-formatting-by-protocol
1152
1205
  # @return [String]
1153
1206
  #
1154
1207
  # @!attribute [rw] message_attributes
@@ -1406,7 +1459,7 @@ module Aws::SNS
1406
1459
  #
1407
1460
  #
1408
1461
  # [1]: https://console.aws.amazon.com/support/home#/case/create?issueType=service-limit-increase&amp;limitType=service-code-sns
1409
- # [2]: http://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1462
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sms_stats.html
1410
1463
  # @return [Hash<String,String>]
1411
1464
  #
1412
1465
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetSMSAttributesInput AWS API Documentation
@@ -1501,6 +1554,22 @@ module Aws::SNS
1501
1554
  # * `Policy` – The policy that defines who can access your topic. By
1502
1555
  # default, only the topic owner can publish or subscribe to the
1503
1556
  # topic.
1557
+ #
1558
+ # The following attribute applies only to
1559
+ # [server-side-encryption][1]\:
1560
+ #
1561
+ # * `KmsMasterKeyId` - The ID of an AWS-managed customer master key
1562
+ # (CMK) for Amazon SNS or a custom CMK. For more information, see
1563
+ # [Key Terms][2]. For more examples, see [KeyId][3] in the *AWS Key
1564
+ # Management Service API Reference*.
1565
+ #
1566
+ # ^
1567
+ #
1568
+ #
1569
+ #
1570
+ # [1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html
1571
+ # [2]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html#sse-key-terms
1572
+ # [3]: https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html#API_DescribeKey_RequestParameters
1504
1573
  # @return [String]
1505
1574
  #
1506
1575
  # @!attribute [rw] attribute_value
@@ -1562,7 +1631,7 @@ module Aws::SNS
1562
1631
  # by protocol:
1563
1632
  #
1564
1633
  # * For the `http` protocol, the endpoint is an URL beginning with
1565
- # "http://"
1634
+ # "https://"
1566
1635
  #
1567
1636
  # * For the `https` protocol, the endpoint is a URL beginning with
1568
1637
  # "https://"
@@ -1681,6 +1750,66 @@ module Aws::SNS
1681
1750
  include Aws::Structure
1682
1751
  end
1683
1752
 
1753
+ # The list of tags to be added to the specified topic.
1754
+ #
1755
+ # @note When making an API call, you may pass Tag
1756
+ # data as a hash:
1757
+ #
1758
+ # {
1759
+ # key: "TagKey", # required
1760
+ # value: "TagValue", # required
1761
+ # }
1762
+ #
1763
+ # @!attribute [rw] key
1764
+ # The required key portion of the tag.
1765
+ # @return [String]
1766
+ #
1767
+ # @!attribute [rw] value
1768
+ # The optional value portion of the tag.
1769
+ # @return [String]
1770
+ #
1771
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/Tag AWS API Documentation
1772
+ #
1773
+ class Tag < Struct.new(
1774
+ :key,
1775
+ :value)
1776
+ include Aws::Structure
1777
+ end
1778
+
1779
+ # @note When making an API call, you may pass TagResourceRequest
1780
+ # data as a hash:
1781
+ #
1782
+ # {
1783
+ # resource_arn: "AmazonResourceName", # required
1784
+ # tags: [ # required
1785
+ # {
1786
+ # key: "TagKey", # required
1787
+ # value: "TagValue", # required
1788
+ # },
1789
+ # ],
1790
+ # }
1791
+ #
1792
+ # @!attribute [rw] resource_arn
1793
+ # The ARN of the topic to which to add tags.
1794
+ # @return [String]
1795
+ #
1796
+ # @!attribute [rw] tags
1797
+ # The tags to be added to the specified topic. A tag consists of a
1798
+ # required key and an optional value.
1799
+ # @return [Array<Types::Tag>]
1800
+ #
1801
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/TagResourceRequest AWS API Documentation
1802
+ #
1803
+ class TagResourceRequest < Struct.new(
1804
+ :resource_arn,
1805
+ :tags)
1806
+ include Aws::Structure
1807
+ end
1808
+
1809
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/TagResourceResponse AWS API Documentation
1810
+ #
1811
+ class TagResourceResponse < Aws::EmptyStructure; end
1812
+
1684
1813
  # A wrapper type for the topic's Amazon Resource Name (ARN). To
1685
1814
  # retrieve a topic's attributes, use `GetTopicAttributes`.
1686
1815
  #
@@ -1715,5 +1844,33 @@ module Aws::SNS
1715
1844
  include Aws::Structure
1716
1845
  end
1717
1846
 
1847
+ # @note When making an API call, you may pass UntagResourceRequest
1848
+ # data as a hash:
1849
+ #
1850
+ # {
1851
+ # resource_arn: "AmazonResourceName", # required
1852
+ # tag_keys: ["TagKey"], # required
1853
+ # }
1854
+ #
1855
+ # @!attribute [rw] resource_arn
1856
+ # The ARN of the topic from which to remove tags.
1857
+ # @return [String]
1858
+ #
1859
+ # @!attribute [rw] tag_keys
1860
+ # The list of tag keys to remove from the specified topic.
1861
+ # @return [Array<String>]
1862
+ #
1863
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/UntagResourceRequest AWS API Documentation
1864
+ #
1865
+ class UntagResourceRequest < Struct.new(
1866
+ :resource_arn,
1867
+ :tag_keys)
1868
+ include Aws::Structure
1869
+ end
1870
+
1871
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/UntagResourceResponse AWS API Documentation
1872
+ #
1873
+ class UntagResourceResponse < Aws::EmptyStructure; end
1874
+
1718
1875
  end
1719
1876
  end
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.12.0
4
+ version: 1.13.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: 2019-03-21 00:00:00.000000000 Z
11
+ date: 2019-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -64,7 +64,7 @@ files:
64
64
  - lib/aws-sdk-sns/subscription.rb
65
65
  - lib/aws-sdk-sns/topic.rb
66
66
  - lib/aws-sdk-sns/types.rb
67
- homepage: http://github.com/aws/aws-sdk-ruby
67
+ homepage: https://github.com/aws/aws-sdk-ruby
68
68
  licenses:
69
69
  - Apache-2.0
70
70
  metadata: