aws-sdk-sns 1.12.0 → 1.13.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 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: