aws-sdk-sns 1.7.0 → 1.8.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: 2c12e3ecd4f1cc97d2a4b66c166a9d0628dc02fb
4
- data.tar.gz: 8eb764bf6a1f925c807b377b148fd43fa5548ef8
3
+ metadata.gz: bd6a9e2da2f44f69f1eeb824507f58a1c396c2ff
4
+ data.tar.gz: '09e2f9b6171a7b858b99aed1907f80e157aed5c6'
5
5
  SHA512:
6
- metadata.gz: 351fc4c998cb6f621de76749b945b8b0d9b5eec521c0a5fc0bccf35a088e788d36768daeec1b463d3de8141efb3964d829a1effdc7a05bd9c91e8ada4cbeadf8
7
- data.tar.gz: d34fd0b3855faf3fab792d1e016870e44cbe6e94b61e5084c7b33617cdef199012f0e185e88e729c869547f7acf89d593b0d11090e4176f4ae170e2ba996ebe4
6
+ metadata.gz: b427dad3bd827f42b291129cb215e331a350de1a8ab6b00e485a11c105fc4adafddb07344213c2379c7127b755613ec19cd5ecebfe74e19a9ae8eb24b0498bd1
7
+ data.tar.gz: 68bd12562c0057479ca41e72ef081aef65cbc04542db067b4b1ba8a2021d7a00319d97a6a22461e9d96f03d9d6f08188b71c07094419927276319f3e0ccb1ec3
@@ -46,6 +46,6 @@ require_relative 'aws-sdk-sns/customizations'
46
46
  # @service
47
47
  module Aws::SNS
48
48
 
49
- GEM_VERSION = '1.7.0'
49
+ GEM_VERSION = '1.8.0'
50
50
 
51
51
  end
@@ -15,6 +15,7 @@ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
15
  require 'aws-sdk-core/plugins/retry_errors.rb'
16
16
  require 'aws-sdk-core/plugins/global_configuration.rb'
17
17
  require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/endpoint_discovery.rb'
18
19
  require 'aws-sdk-core/plugins/response_paging.rb'
19
20
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
21
  require 'aws-sdk-core/plugins/idempotency_token.rb'
@@ -45,6 +46,7 @@ module Aws::SNS
45
46
  add_plugin(Aws::Plugins::RetryErrors)
46
47
  add_plugin(Aws::Plugins::GlobalConfiguration)
47
48
  add_plugin(Aws::Plugins::RegionalEndpoint)
49
+ add_plugin(Aws::Plugins::EndpointDiscovery)
48
50
  add_plugin(Aws::Plugins::ResponsePaging)
49
51
  add_plugin(Aws::Plugins::StubResponses)
50
52
  add_plugin(Aws::Plugins::IdempotencyToken)
@@ -98,6 +100,10 @@ module Aws::SNS
98
100
  #
99
101
  # @option options [String] :access_key_id
100
102
  #
103
+ # @option options [Boolean] :active_endpoint_cache (false)
104
+ # When set to `true`, a thread polling for endpoints will be running in
105
+ # the background every 60 secs (default). Defaults to `false`.
106
+ #
101
107
  # @option options [Boolean] :client_side_monitoring (false)
102
108
  # When `true`, client-side metrics will be collected for all API requests from
103
109
  # this client.
@@ -123,6 +129,21 @@ module Aws::SNS
123
129
  # option. You should only configure an `:endpoint` when connecting
124
130
  # to test endpoints. This should be avalid HTTP(S) URI.
125
131
  #
132
+ # @option options [Integer] :endpoint_cache_max_entries (1000)
133
+ # Used for the maximum size limit of the LRU cache storing endpoints data
134
+ # for endpoint discovery enabled operations. Defaults to 1000.
135
+ #
136
+ # @option options [Integer] :endpoint_cache_max_threads (10)
137
+ # Used for the maximum threads in use for polling endpoints to be cached, defaults to 10.
138
+ #
139
+ # @option options [Integer] :endpoint_cache_poll_interval (60)
140
+ # When :endpoint_discovery and :active_endpoint_cache is enabled,
141
+ # Use this option to config the time interval in seconds for making
142
+ # requests fetching endpoints information. Defaults to 60 sec.
143
+ #
144
+ # @option options [Boolean] :endpoint_discovery (false)
145
+ # When set to `true`, endpoint discovery will be enabled for operations when available. Defaults to `false`.
146
+ #
126
147
  # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
127
148
  # The log formatter.
128
149
  #
@@ -467,6 +488,21 @@ module Aws::SNS
467
488
  # lowercase ASCII letters, numbers, underscores, and hyphens, and must
468
489
  # be between 1 and 256 characters long.
469
490
  #
491
+ # @option params [Hash<String,String>] :attributes
492
+ # A map of attributes with their corresponding values.
493
+ #
494
+ # The following lists the names, descriptions, and values of the special
495
+ # request parameters that the `CreateTopic` action uses:
496
+ #
497
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
498
+ # failed deliveries to HTTP/S endpoints.
499
+ #
500
+ # * `DisplayName` – The display name to use for a topic with SMS
501
+ # subscriptions.
502
+ #
503
+ # * `Policy` – The policy that defines who can access your topic. By
504
+ # default, only the topic owner can publish or subscribe to the topic.
505
+ #
470
506
  # @return [Types::CreateTopicResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
471
507
  #
472
508
  # * {Types::CreateTopicResponse#topic_arn #topic_arn} => String
@@ -475,6 +511,9 @@ module Aws::SNS
475
511
  #
476
512
  # resp = client.create_topic({
477
513
  # name: "topicName", # required
514
+ # attributes: {
515
+ # "attributeName" => "attributeValue",
516
+ # },
478
517
  # })
479
518
  #
480
519
  # @example Response structure
@@ -1082,6 +1121,10 @@ module Aws::SNS
1082
1121
  # @option params [required, String] :message
1083
1122
  # The message you want to send.
1084
1123
  #
1124
+ # The `Message` parameter is always a string. If you set
1125
+ # `MessageStructure` to `json`, you must string-encode the `Message`
1126
+ # parameter.
1127
+ #
1085
1128
  # If you are publishing to a topic and you want to send the same message
1086
1129
  # to all transport protocols, include the text of the message as a
1087
1130
  # String value. If you want to send different messages for each
@@ -1093,16 +1136,20 @@ module Aws::SNS
1093
1136
  # Constraints:
1094
1137
  #
1095
1138
  # * With the exception of SMS, messages must be UTF-8 encoded strings
1096
- # and at most 256 KB in size (262144 bytes, not 262144 characters).
1139
+ # and at most 256 KB in size (262,144 bytes, not 262,144 characters).
1140
+ #
1141
+ # * For SMS, each message can contain up to 140 characters. This
1142
+ # character limit depends on the encoding schema. For example, an SMS
1143
+ # message can contain 160 GSM characters, 140 ASCII characters, or 70
1144
+ # UCS-2 characters.
1097
1145
  #
1098
- # * For SMS, each message can contain up to 140 bytes, and the character
1099
- # limit depends on the encoding scheme. For example, an SMS message
1100
- # can contain 160 GSM characters, 140 ASCII characters, or 70 UCS-2
1101
- # characters. If you publish a message that exceeds the size limit,
1102
- # Amazon SNS sends it as multiple messages, each fitting within the
1103
- # size limit. Messages are not cut off in the middle of a word but on
1104
- # whole-word boundaries. The total size limit for a single SMS publish
1105
- # action is 1600 bytes.
1146
+ # If you publish a message that exceeds this size limit, Amazon SNS
1147
+ # sends the message as multiple messages, each fitting within the size
1148
+ # limit. Messages aren't truncated mid-word but are cut off at
1149
+ # whole-word boundaries.
1150
+ #
1151
+ # The total size limit for a single SMS `Publish` action is 1,600
1152
+ # characters.
1106
1153
  #
1107
1154
  # JSON-specific constraints:
1108
1155
  #
@@ -1245,16 +1292,16 @@ module Aws::SNS
1245
1292
  # A map of the endpoint attributes. Attributes in this map include the
1246
1293
  # following:
1247
1294
  #
1248
- # * `CustomUserData` -- arbitrary user data to associate with the
1295
+ # * `CustomUserData` arbitrary user data to associate with the
1249
1296
  # endpoint. Amazon SNS does not use this data. The data must be in
1250
1297
  # UTF-8 format and less than 2KB.
1251
1298
  #
1252
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
1299
+ # * `Enabled` flag that enables/disables delivery to the endpoint.
1253
1300
  # Amazon SNS will set this to false when a notification service
1254
1301
  # indicates to Amazon SNS that the endpoint is invalid. Users can set
1255
1302
  # it back to true, typically after updating Token.
1256
1303
  #
1257
- # * `Token` -- device token, also referred to as a registration id, for
1304
+ # * `Token` device token, also referred to as a registration id, for
1258
1305
  # an app and mobile device. This is returned from the notification
1259
1306
  # service when an app and mobile device are registered with the
1260
1307
  # notification service.
@@ -1298,36 +1345,36 @@ module Aws::SNS
1298
1345
  # A map of the platform application attributes. Attributes in this map
1299
1346
  # include the following:
1300
1347
  #
1301
- # * `PlatformCredential` -- The credential received from the
1302
- # notification service. For APNS/APNS\_SANDBOX, PlatformCredential is
1303
- # private key. For GCM, PlatformCredential is "API key". For ADM,
1348
+ # * `PlatformCredential` The credential received from the notification
1349
+ # service. For APNS/APNS\_SANDBOX, PlatformCredential is private key.
1350
+ # For GCM, PlatformCredential is "API key". For ADM,
1304
1351
  # PlatformCredential is "client secret".
1305
1352
  #
1306
- # * `PlatformPrincipal` -- The principal received from the notification
1353
+ # * `PlatformPrincipal` The principal received from the notification
1307
1354
  # service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
1308
1355
  # certificate. For GCM, PlatformPrincipal is not applicable. For ADM,
1309
1356
  # PlatformPrincipal is "client id".
1310
1357
  #
1311
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
1358
+ # * `EventEndpointCreated` Topic ARN to which EndpointCreated event
1312
1359
  # notifications should be sent.
1313
1360
  #
1314
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
1361
+ # * `EventEndpointDeleted` Topic ARN to which EndpointDeleted event
1315
1362
  # notifications should be sent.
1316
1363
  #
1317
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
1364
+ # * `EventEndpointUpdated` Topic ARN to which EndpointUpdate event
1318
1365
  # notifications should be sent.
1319
1366
  #
1320
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
1367
+ # * `EventDeliveryFailure` Topic ARN to which DeliveryFailure event
1321
1368
  # notifications should be sent upon Direct Publish delivery failure
1322
1369
  # (permanent) to one of the application's endpoints.
1323
1370
  #
1324
- # * `SuccessFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1371
+ # * `SuccessFeedbackRoleArn` IAM role ARN used to give Amazon SNS
1325
1372
  # write access to use CloudWatch Logs on your behalf.
1326
1373
  #
1327
- # * `FailureFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1374
+ # * `FailureFeedbackRoleArn` IAM role ARN used to give Amazon SNS
1328
1375
  # write access to use CloudWatch Logs on your behalf.
1329
1376
  #
1330
- # * `SuccessFeedbackSampleRate` -- Sample rate percentage (0-100) of
1377
+ # * `SuccessFeedbackSampleRate` Sample rate percentage (0-100) of
1331
1378
  # successfully delivered messages.
1332
1379
  #
1333
1380
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
@@ -1472,11 +1519,22 @@ module Aws::SNS
1472
1519
  # The ARN of the subscription to modify.
1473
1520
  #
1474
1521
  # @option params [required, String] :attribute_name
1475
- # The name of the attribute you want to set. Only a subset of the
1476
- # subscriptions attributes are mutable.
1522
+ # A map of attributes with their corresponding values.
1523
+ #
1524
+ # The following lists the names, descriptions, and values of the special
1525
+ # request parameters that the `SetTopicAttributes` action uses:
1477
1526
  #
1478
- # Valid values: `DeliveryPolicy` \| `FilterPolicy` \|
1479
- # `RawMessageDelivery`
1527
+ # * `DeliveryPolicy` The policy that defines how Amazon SNS retries
1528
+ # failed deliveries to HTTP/S endpoints.
1529
+ #
1530
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
1531
+ # receive only a subset of messages, rather than receiving every
1532
+ # message published to the topic.
1533
+ #
1534
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
1535
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
1536
+ # for the endpoints to process JSON formatting, which is otherwise
1537
+ # created for Amazon SNS metadata.
1480
1538
  #
1481
1539
  # @option params [String] :attribute_value
1482
1540
  # The new value for the attribute in JSON format.
@@ -1506,10 +1564,19 @@ module Aws::SNS
1506
1564
  # The ARN of the topic to modify.
1507
1565
  #
1508
1566
  # @option params [required, String] :attribute_name
1509
- # The name of the attribute you want to set. Only a subset of the
1510
- # topic's attributes are mutable.
1567
+ # A map of attributes with their corresponding values.
1568
+ #
1569
+ # The following lists the names, descriptions, and values of the special
1570
+ # request parameters that the `SetTopicAttributes` action uses:
1511
1571
  #
1512
- # Valid values: `Policy` \| `DisplayName` \| `DeliveryPolicy`
1572
+ # * `DeliveryPolicy` The policy that defines how Amazon SNS retries
1573
+ # failed deliveries to HTTP/S endpoints.
1574
+ #
1575
+ # * `DisplayName` – The display name to use for a topic with SMS
1576
+ # subscriptions.
1577
+ #
1578
+ # * `Policy` – The policy that defines who can access your topic. By
1579
+ # default, only the topic owner can publish or subscribe to the topic.
1513
1580
  #
1514
1581
  # @option params [String] :attribute_value
1515
1582
  # The new value for the attribute.
@@ -1547,22 +1614,22 @@ module Aws::SNS
1547
1614
  # @option params [required, String] :protocol
1548
1615
  # The protocol you want to use. Supported protocols include:
1549
1616
  #
1550
- # * `http` -- delivery of JSON-encoded message via HTTP POST
1617
+ # * `http` delivery of JSON-encoded message via HTTP POST
1551
1618
  #
1552
- # * `https` -- delivery of JSON-encoded message via HTTPS POST
1619
+ # * `https` delivery of JSON-encoded message via HTTPS POST
1553
1620
  #
1554
- # * `email` -- delivery of message via SMTP
1621
+ # * `email` delivery of message via SMTP
1555
1622
  #
1556
- # * `email-json` -- delivery of JSON-encoded message via SMTP
1623
+ # * `email-json` delivery of JSON-encoded message via SMTP
1557
1624
  #
1558
- # * `sms` -- delivery of message via SMS
1625
+ # * `sms` delivery of message via SMS
1559
1626
  #
1560
- # * `sqs` -- delivery of JSON-encoded message to an Amazon SQS queue
1627
+ # * `sqs` delivery of JSON-encoded message to an Amazon SQS queue
1561
1628
  #
1562
- # * `application` -- delivery of JSON-encoded message to an EndpointArn
1629
+ # * `application` delivery of JSON-encoded message to an EndpointArn
1563
1630
  # for a mobile app and device.
1564
1631
  #
1565
- # * `lambda` -- delivery of JSON-encoded message to an AWS Lambda
1632
+ # * `lambda` delivery of JSON-encoded message to an AWS Lambda
1566
1633
  # function.
1567
1634
  #
1568
1635
  # @option params [String] :endpoint
@@ -1592,9 +1659,22 @@ module Aws::SNS
1592
1659
  # function.
1593
1660
  #
1594
1661
  # @option params [Hash<String,String>] :attributes
1595
- # Assigns attributes to the subscription as a map of key-value pairs.
1596
- # You can assign any attribute that is supported by the
1597
- # `SetSubscriptionAttributes` action.
1662
+ # A map of attributes with their corresponding values.
1663
+ #
1664
+ # The following lists the names, descriptions, and values of the special
1665
+ # request parameters that the `SetTopicAttributes` action uses:
1666
+ #
1667
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
1668
+ # failed deliveries to HTTP/S endpoints.
1669
+ #
1670
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
1671
+ # receive only a subset of messages, rather than receiving every
1672
+ # message published to the topic.
1673
+ #
1674
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
1675
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
1676
+ # for the endpoints to process JSON formatting, which is otherwise
1677
+ # created for Amazon SNS metadata.
1598
1678
  #
1599
1679
  # @option params [Boolean] :return_subscription_arn
1600
1680
  # Sets whether the response from the `Subscribe` request includes the
@@ -1683,7 +1763,7 @@ module Aws::SNS
1683
1763
  params: params,
1684
1764
  config: config)
1685
1765
  context[:gem_name] = 'aws-sdk-sns'
1686
- context[:gem_version] = '1.7.0'
1766
+ context[:gem_version] = '1.8.0'
1687
1767
  Seahorse::Client::Request.new(handlers, context)
1688
1768
  end
1689
1769
 
@@ -45,6 +45,13 @@ module Aws::SNS
45
45
  InternalErrorException = Shapes::StructureShape.new(name: 'InternalErrorException')
46
46
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
47
47
  InvalidParameterValueException = Shapes::StructureShape.new(name: 'InvalidParameterValueException')
48
+ InvalidSecurityException = Shapes::StructureShape.new(name: 'InvalidSecurityException')
49
+ KMSAccessDeniedException = Shapes::StructureShape.new(name: 'KMSAccessDeniedException')
50
+ KMSDisabledException = Shapes::StructureShape.new(name: 'KMSDisabledException')
51
+ KMSInvalidStateException = Shapes::StructureShape.new(name: 'KMSInvalidStateException')
52
+ KMSNotFoundException = Shapes::StructureShape.new(name: 'KMSNotFoundException')
53
+ KMSOptInRequired = Shapes::StructureShape.new(name: 'KMSOptInRequired')
54
+ KMSThrottlingException = Shapes::StructureShape.new(name: 'KMSThrottlingException')
48
55
  ListEndpointsByPlatformApplicationInput = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationInput')
49
56
  ListEndpointsByPlatformApplicationResponse = Shapes::StructureShape.new(name: 'ListEndpointsByPlatformApplicationResponse')
50
57
  ListOfEndpoints = Shapes::ListShape.new(name: 'ListOfEndpoints')
@@ -153,6 +160,7 @@ module Aws::SNS
153
160
  CreatePlatformEndpointInput.struct_class = Types::CreatePlatformEndpointInput
154
161
 
155
162
  CreateTopicInput.add_member(:name, Shapes::ShapeRef.new(shape: topicName, required: true, location_name: "Name"))
163
+ CreateTopicInput.add_member(:attributes, Shapes::ShapeRef.new(shape: TopicAttributesMap, location_name: "Attributes"))
156
164
  CreateTopicInput.struct_class = Types::CreateTopicInput
157
165
 
158
166
  CreateTopicResponse.add_member(:topic_arn, Shapes::ShapeRef.new(shape: topicARN, location_name: "TopicArn"))
@@ -435,6 +443,7 @@ module Aws::SNS
435
443
  o.errors << Shapes::ShapeRef.new(shape: TopicLimitExceededException)
436
444
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
437
445
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
446
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
438
447
  end)
439
448
 
440
449
  api.add_operation(:delete_endpoint, Seahorse::Model::Operation.new.tap do |o|
@@ -529,6 +538,7 @@ module Aws::SNS
529
538
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
530
539
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
531
540
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
541
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
532
542
  end)
533
543
 
534
544
  api.add_operation(:list_endpoints_by_platform_application, Seahorse::Model::Operation.new.tap do |o|
@@ -650,6 +660,13 @@ module Aws::SNS
650
660
  o.errors << Shapes::ShapeRef.new(shape: EndpointDisabledException)
651
661
  o.errors << Shapes::ShapeRef.new(shape: PlatformApplicationDisabledException)
652
662
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
663
+ o.errors << Shapes::ShapeRef.new(shape: KMSDisabledException)
664
+ o.errors << Shapes::ShapeRef.new(shape: KMSInvalidStateException)
665
+ o.errors << Shapes::ShapeRef.new(shape: KMSNotFoundException)
666
+ o.errors << Shapes::ShapeRef.new(shape: KMSOptInRequired)
667
+ o.errors << Shapes::ShapeRef.new(shape: KMSThrottlingException)
668
+ o.errors << Shapes::ShapeRef.new(shape: KMSAccessDeniedException)
669
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
653
670
  end)
654
671
 
655
672
  api.add_operation(:remove_permission, Seahorse::Model::Operation.new.tap do |o|
@@ -723,6 +740,7 @@ module Aws::SNS
723
740
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
724
741
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
725
742
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
743
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
726
744
  end)
727
745
 
728
746
  api.add_operation(:subscribe, Seahorse::Model::Operation.new.tap do |o|
@@ -737,6 +755,7 @@ module Aws::SNS
737
755
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
738
756
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
739
757
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
758
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
740
759
  end)
741
760
 
742
761
  api.add_operation(:unsubscribe, Seahorse::Model::Operation.new.tap do |o|
@@ -749,6 +768,7 @@ module Aws::SNS
749
768
  o.errors << Shapes::ShapeRef.new(shape: InternalErrorException)
750
769
  o.errors << Shapes::ShapeRef.new(shape: AuthorizationErrorException)
751
770
  o.errors << Shapes::ShapeRef.new(shape: NotFoundException)
771
+ o.errors << Shapes::ShapeRef.new(shape: InvalidSecurityException)
752
772
  end)
753
773
  end
754
774
 
@@ -32,16 +32,16 @@ module Aws::SNS
32
32
 
33
33
  # Attributes include the following:
34
34
  #
35
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
35
+ # * `EventEndpointCreated` Topic ARN to which EndpointCreated event
36
36
  # notifications should be sent.
37
37
  #
38
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
38
+ # * `EventEndpointDeleted` Topic ARN to which EndpointDeleted event
39
39
  # notifications should be sent.
40
40
  #
41
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
41
+ # * `EventEndpointUpdated` Topic ARN to which EndpointUpdate event
42
42
  # notifications should be sent.
43
43
  #
44
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
44
+ # * `EventDeliveryFailure` Topic ARN to which DeliveryFailure event
45
45
  # notifications should be sent upon Direct Publish delivery failure
46
46
  # (permanent) to one of the application's endpoints.
47
47
  # @return [Hash<String,String>]
@@ -145,36 +145,36 @@ module Aws::SNS
145
145
  # A map of the platform application attributes. Attributes in this map
146
146
  # include the following:
147
147
  #
148
- # * `PlatformCredential` -- The credential received from the
149
- # notification service. For APNS/APNS\_SANDBOX, PlatformCredential is
150
- # private key. For GCM, PlatformCredential is "API key". For ADM,
148
+ # * `PlatformCredential` The credential received from the notification
149
+ # service. For APNS/APNS\_SANDBOX, PlatformCredential is private key.
150
+ # For GCM, PlatformCredential is "API key". For ADM,
151
151
  # PlatformCredential is "client secret".
152
152
  #
153
- # * `PlatformPrincipal` -- The principal received from the notification
153
+ # * `PlatformPrincipal` The principal received from the notification
154
154
  # service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
155
155
  # certificate. For GCM, PlatformPrincipal is not applicable. For ADM,
156
156
  # PlatformPrincipal is "client id".
157
157
  #
158
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
158
+ # * `EventEndpointCreated` Topic ARN to which EndpointCreated event
159
159
  # notifications should be sent.
160
160
  #
161
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
161
+ # * `EventEndpointDeleted` Topic ARN to which EndpointDeleted event
162
162
  # notifications should be sent.
163
163
  #
164
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
164
+ # * `EventEndpointUpdated` Topic ARN to which EndpointUpdate event
165
165
  # notifications should be sent.
166
166
  #
167
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
167
+ # * `EventDeliveryFailure` Topic ARN to which DeliveryFailure event
168
168
  # notifications should be sent upon Direct Publish delivery failure
169
169
  # (permanent) to one of the application's endpoints.
170
170
  #
171
- # * `SuccessFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
171
+ # * `SuccessFeedbackRoleArn` IAM role ARN used to give Amazon SNS
172
172
  # write access to use CloudWatch Logs on your behalf.
173
173
  #
174
- # * `FailureFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
174
+ # * `FailureFeedbackRoleArn` IAM role ARN used to give Amazon SNS
175
175
  # write access to use CloudWatch Logs on your behalf.
176
176
  #
177
- # * `SuccessFeedbackSampleRate` -- Sample rate percentage (0-100) of
177
+ # * `SuccessFeedbackSampleRate` Sample rate percentage (0-100) of
178
178
  # successfully delivered messages.
179
179
  # @return [EmptyStructure]
180
180
  def set_attributes(options = {})
@@ -32,16 +32,16 @@ module Aws::SNS
32
32
 
33
33
  # Attributes include the following:
34
34
  #
35
- # * `CustomUserData` -- arbitrary user data to associate with the
35
+ # * `CustomUserData` arbitrary user data to associate with the
36
36
  # endpoint. Amazon SNS does not use this data. The data must be in
37
37
  # UTF-8 format and less than 2KB.
38
38
  #
39
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
39
+ # * `Enabled` flag that enables/disables delivery to the endpoint.
40
40
  # Amazon SNS will set this to false when a notification service
41
41
  # indicates to Amazon SNS that the endpoint is invalid. Users can set
42
42
  # it back to true, typically after updating Token.
43
43
  #
44
- # * `Token` -- device token, also referred to as a registration id, for
44
+ # * `Token` device token, also referred to as a registration id, for
45
45
  # an app and mobile device. This is returned from the notification
46
46
  # service when an app and mobile device are registered with the
47
47
  # notification service.
@@ -129,6 +129,10 @@ module Aws::SNS
129
129
  # @option options [required, String] :message
130
130
  # The message you want to send.
131
131
  #
132
+ # The `Message` parameter is always a string. If you set
133
+ # `MessageStructure` to `json`, you must string-encode the `Message`
134
+ # parameter.
135
+ #
132
136
  # If you are publishing to a topic and you want to send the same message
133
137
  # to all transport protocols, include the text of the message as a
134
138
  # String value. If you want to send different messages for each
@@ -140,16 +144,20 @@ module Aws::SNS
140
144
  # Constraints:
141
145
  #
142
146
  # * With the exception of SMS, messages must be UTF-8 encoded strings
143
- # and at most 256 KB in size (262144 bytes, not 262144 characters).
147
+ # and at most 256 KB in size (262,144 bytes, not 262,144 characters).
148
+ #
149
+ # * For SMS, each message can contain up to 140 characters. This
150
+ # character limit depends on the encoding schema. For example, an SMS
151
+ # message can contain 160 GSM characters, 140 ASCII characters, or 70
152
+ # UCS-2 characters.
153
+ #
154
+ # If you publish a message that exceeds this size limit, Amazon SNS
155
+ # sends the message as multiple messages, each fitting within the size
156
+ # limit. Messages aren't truncated mid-word but are cut off at
157
+ # whole-word boundaries.
144
158
  #
145
- # * For SMS, each message can contain up to 140 bytes, and the character
146
- # limit depends on the encoding scheme. For example, an SMS message
147
- # can contain 160 GSM characters, 140 ASCII characters, or 70 UCS-2
148
- # characters. If you publish a message that exceeds the size limit,
149
- # Amazon SNS sends it as multiple messages, each fitting within the
150
- # size limit. Messages are not cut off in the middle of a word but on
151
- # whole-word boundaries. The total size limit for a single SMS publish
152
- # action is 1600 bytes.
159
+ # The total size limit for a single SMS `Publish` action is 1,600
160
+ # characters.
153
161
  #
154
162
  # JSON-specific constraints:
155
163
  #
@@ -231,16 +239,16 @@ module Aws::SNS
231
239
  # A map of the endpoint attributes. Attributes in this map include the
232
240
  # following:
233
241
  #
234
- # * `CustomUserData` -- arbitrary user data to associate with the
242
+ # * `CustomUserData` arbitrary user data to associate with the
235
243
  # endpoint. Amazon SNS does not use this data. The data must be in
236
244
  # UTF-8 format and less than 2KB.
237
245
  #
238
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
246
+ # * `Enabled` flag that enables/disables delivery to the endpoint.
239
247
  # Amazon SNS will set this to false when a notification service
240
248
  # indicates to Amazon SNS that the endpoint is invalid. Users can set
241
249
  # it back to true, typically after updating Token.
242
250
  #
243
- # * `Token` -- device token, also referred to as a registration id, for
251
+ # * `Token` device token, also referred to as a registration id, for
244
252
  # an app and mobile device. This is returned from the notification
245
253
  # service when an app and mobile device are registered with the
246
254
  # notification service.
@@ -58,6 +58,9 @@ module Aws::SNS
58
58
  #
59
59
  # topic = sns.create_topic({
60
60
  # name: "topicName", # required
61
+ # attributes: {
62
+ # "attributeName" => "attributeValue",
63
+ # },
61
64
  # })
62
65
  # @param [Hash] options ({})
63
66
  # @option options [required, String] :name
@@ -66,6 +69,20 @@ module Aws::SNS
66
69
  # Constraints: Topic names must be made up of only uppercase and
67
70
  # lowercase ASCII letters, numbers, underscores, and hyphens, and must
68
71
  # be between 1 and 256 characters long.
72
+ # @option options [Hash<String,String>] :attributes
73
+ # A map of attributes with their corresponding values.
74
+ #
75
+ # The following lists the names, descriptions, and values of the special
76
+ # request parameters that the `CreateTopic` action uses:
77
+ #
78
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
79
+ # failed deliveries to HTTP/S endpoints.
80
+ #
81
+ # * `DisplayName` – The display name to use for a topic with SMS
82
+ # subscriptions.
83
+ #
84
+ # * `Policy` – The policy that defines who can access your topic. By
85
+ # default, only the topic owner can publish or subscribe to the topic.
69
86
  # @return [Topic]
70
87
  def create_topic(options = {})
71
88
  resp = @client.create_topic(options)
@@ -33,33 +33,32 @@ module Aws::SNS
33
33
  # A map of the subscription's attributes. Attributes in this map
34
34
  # include the following:
35
35
  #
36
- # * `ConfirmationWasAuthenticated` -- `true` if the subscription
36
+ # * `ConfirmationWasAuthenticated` `true` if the subscription
37
37
  # confirmation request was authenticated.
38
38
  #
39
- # * `DeliveryPolicy` -- The JSON serialization of the subscription's
39
+ # * `DeliveryPolicy` The JSON serialization of the subscription's
40
40
  # delivery policy.
41
41
  #
42
- # * `EffectiveDeliveryPolicy` -- The JSON serialization of the effective
42
+ # * `EffectiveDeliveryPolicy` The JSON serialization of the effective
43
43
  # delivery policy that takes into account the topic delivery policy
44
44
  # and account system defaults.
45
45
  #
46
- # * `FilterPolicy` -- The filter policy JSON that is assigned to the
46
+ # * `FilterPolicy` The filter policy JSON that is assigned to the
47
47
  # subscription.
48
48
  #
49
- # * `Owner` -- The AWS account ID of the subscription's owner.
49
+ # * `Owner` The AWS account ID of the subscription's owner.
50
50
  #
51
- # * `PendingConfirmation` -- `true` if the subscription hasn't been
51
+ # * `PendingConfirmation` `true` if the subscription hasn't been
52
52
  # confirmed. To confirm a pending subscription, call the
53
53
  # `ConfirmSubscription` action with a confirmation token.
54
54
  #
55
- # * `RawMessageDelivery` -- `true` if raw message delivery is enabled
56
- # for the subscription. Raw messages are free of JSON formatting and
57
- # can be sent to HTTP/S and Amazon SQS endpoints.
55
+ # * `RawMessageDelivery` `true` if raw message delivery is enabled for
56
+ # the subscription. Raw messages are free of JSON formatting and can
57
+ # be sent to HTTP/S and Amazon SQS endpoints.
58
58
  #
59
- # * `SubscriptionArn` -- The subscription's ARN.
59
+ # * `SubscriptionArn` The subscription's ARN.
60
60
  #
61
- # * `TopicArn` -- The topic ARN that the subscription is associated
62
- # with.
61
+ # * `TopicArn` The topic ARN that the subscription is associated with.
63
62
  # @return [Hash<String,String>]
64
63
  def attributes
65
64
  data[:attributes]
@@ -121,11 +120,22 @@ module Aws::SNS
121
120
  # })
122
121
  # @param [Hash] options ({})
123
122
  # @option options [required, String] :attribute_name
124
- # The name of the attribute you want to set. Only a subset of the
125
- # subscriptions attributes are mutable.
123
+ # A map of attributes with their corresponding values.
126
124
  #
127
- # Valid values: `DeliveryPolicy` \| `FilterPolicy` \|
128
- # `RawMessageDelivery`
125
+ # The following lists the names, descriptions, and values of the special
126
+ # request parameters that the `SetTopicAttributes` action uses:
127
+ #
128
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
129
+ # failed deliveries to HTTP/S endpoints.
130
+ #
131
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
132
+ # receive only a subset of messages, rather than receiving every
133
+ # message published to the topic.
134
+ #
135
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
136
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
137
+ # for the endpoints to process JSON formatting, which is otherwise
138
+ # created for Amazon SNS metadata.
129
139
  # @option options [String] :attribute_value
130
140
  # The new value for the attribute in JSON format.
131
141
  # @return [EmptyStructure]
@@ -33,29 +33,29 @@ module Aws::SNS
33
33
  # A map of the topic's attributes. Attributes in this map include the
34
34
  # following:
35
35
  #
36
- # * `TopicArn` -- the topic's ARN
36
+ # * `TopicArn` the topic's ARN
37
37
  #
38
- # * `Owner` -- the AWS account ID of the topic's owner
38
+ # * `Owner` the AWS account ID of the topic's owner
39
39
  #
40
- # * `Policy` -- the JSON serialization of the topic's access control
40
+ # * `Policy` the JSON serialization of the topic's access control
41
41
  # policy
42
42
  #
43
- # * `DisplayName` -- the human-readable name used in the "From" field
43
+ # * `DisplayName` the human-readable name used in the "From" field
44
44
  # for notifications to email and email-json endpoints
45
45
  #
46
- # * `SubscriptionsPending` -- the number of subscriptions pending
46
+ # * `SubscriptionsPending` the number of subscriptions pending
47
47
  # confirmation on this topic
48
48
  #
49
- # * `SubscriptionsConfirmed` -- the number of confirmed subscriptions on
49
+ # * `SubscriptionsConfirmed` the number of confirmed subscriptions on
50
50
  # this topic
51
51
  #
52
- # * `SubscriptionsDeleted` -- the number of deleted subscriptions on
53
- # this topic
52
+ # * `SubscriptionsDeleted` the number of deleted subscriptions on this
53
+ # topic
54
54
  #
55
- # * `DeliveryPolicy` -- the JSON serialization of the topic's delivery
55
+ # * `DeliveryPolicy` the JSON serialization of the topic's delivery
56
56
  # policy
57
57
  #
58
- # * `EffectiveDeliveryPolicy` -- the JSON serialization of the effective
58
+ # * `EffectiveDeliveryPolicy` the JSON serialization of the effective
59
59
  # delivery policy that takes into account system defaults
60
60
  # @return [Hash<String,String>]
61
61
  def attributes
@@ -191,6 +191,10 @@ module Aws::SNS
191
191
  # @option options [required, String] :message
192
192
  # The message you want to send.
193
193
  #
194
+ # The `Message` parameter is always a string. If you set
195
+ # `MessageStructure` to `json`, you must string-encode the `Message`
196
+ # parameter.
197
+ #
194
198
  # If you are publishing to a topic and you want to send the same message
195
199
  # to all transport protocols, include the text of the message as a
196
200
  # String value. If you want to send different messages for each
@@ -202,16 +206,20 @@ module Aws::SNS
202
206
  # Constraints:
203
207
  #
204
208
  # * With the exception of SMS, messages must be UTF-8 encoded strings
205
- # and at most 256 KB in size (262144 bytes, not 262144 characters).
209
+ # and at most 256 KB in size (262,144 bytes, not 262,144 characters).
210
+ #
211
+ # * For SMS, each message can contain up to 140 characters. This
212
+ # character limit depends on the encoding schema. For example, an SMS
213
+ # message can contain 160 GSM characters, 140 ASCII characters, or 70
214
+ # UCS-2 characters.
206
215
  #
207
- # * For SMS, each message can contain up to 140 bytes, and the character
208
- # limit depends on the encoding scheme. For example, an SMS message
209
- # can contain 160 GSM characters, 140 ASCII characters, or 70 UCS-2
210
- # characters. If you publish a message that exceeds the size limit,
211
- # Amazon SNS sends it as multiple messages, each fitting within the
212
- # size limit. Messages are not cut off in the middle of a word but on
213
- # whole-word boundaries. The total size limit for a single SMS publish
214
- # action is 1600 bytes.
216
+ # If you publish a message that exceeds this size limit, Amazon SNS
217
+ # sends the message as multiple messages, each fitting within the size
218
+ # limit. Messages aren't truncated mid-word but are cut off at
219
+ # whole-word boundaries.
220
+ #
221
+ # The total size limit for a single SMS `Publish` action is 1,600
222
+ # characters.
215
223
  #
216
224
  # JSON-specific constraints:
217
225
  #
@@ -304,10 +312,19 @@ module Aws::SNS
304
312
  # })
305
313
  # @param [Hash] options ({})
306
314
  # @option options [required, String] :attribute_name
307
- # The name of the attribute you want to set. Only a subset of the
308
- # topic's attributes are mutable.
315
+ # A map of attributes with their corresponding values.
316
+ #
317
+ # The following lists the names, descriptions, and values of the special
318
+ # request parameters that the `SetTopicAttributes` action uses:
319
+ #
320
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
321
+ # failed deliveries to HTTP/S endpoints.
309
322
  #
310
- # Valid values: `Policy` \| `DisplayName` \| `DeliveryPolicy`
323
+ # * `DisplayName` The display name to use for a topic with SMS
324
+ # subscriptions.
325
+ #
326
+ # * `Policy` – The policy that defines who can access your topic. By
327
+ # default, only the topic owner can publish or subscribe to the topic.
311
328
  # @option options [String] :attribute_value
312
329
  # The new value for the attribute.
313
330
  # @return [EmptyStructure]
@@ -331,22 +348,22 @@ module Aws::SNS
331
348
  # @option options [required, String] :protocol
332
349
  # The protocol you want to use. Supported protocols include:
333
350
  #
334
- # * `http` -- delivery of JSON-encoded message via HTTP POST
351
+ # * `http` delivery of JSON-encoded message via HTTP POST
335
352
  #
336
- # * `https` -- delivery of JSON-encoded message via HTTPS POST
353
+ # * `https` delivery of JSON-encoded message via HTTPS POST
337
354
  #
338
- # * `email` -- delivery of message via SMTP
355
+ # * `email` delivery of message via SMTP
339
356
  #
340
- # * `email-json` -- delivery of JSON-encoded message via SMTP
357
+ # * `email-json` delivery of JSON-encoded message via SMTP
341
358
  #
342
- # * `sms` -- delivery of message via SMS
359
+ # * `sms` delivery of message via SMS
343
360
  #
344
- # * `sqs` -- delivery of JSON-encoded message to an Amazon SQS queue
361
+ # * `sqs` delivery of JSON-encoded message to an Amazon SQS queue
345
362
  #
346
- # * `application` -- delivery of JSON-encoded message to an EndpointArn
363
+ # * `application` delivery of JSON-encoded message to an EndpointArn
347
364
  # for a mobile app and device.
348
365
  #
349
- # * `lambda` -- delivery of JSON-encoded message to an AWS Lambda
366
+ # * `lambda` delivery of JSON-encoded message to an AWS Lambda
350
367
  # function.
351
368
  # @option options [String] :endpoint
352
369
  # The endpoint that you want to receive notifications. Endpoints vary by
@@ -374,9 +391,22 @@ module Aws::SNS
374
391
  # * For the `lambda` protocol, the endpoint is the ARN of an AWS Lambda
375
392
  # function.
376
393
  # @option options [Hash<String,String>] :attributes
377
- # Assigns attributes to the subscription as a map of key-value pairs.
378
- # You can assign any attribute that is supported by the
379
- # `SetSubscriptionAttributes` action.
394
+ # A map of attributes with their corresponding values.
395
+ #
396
+ # The following lists the names, descriptions, and values of the special
397
+ # request parameters that the `SetTopicAttributes` action uses:
398
+ #
399
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
400
+ # failed deliveries to HTTP/S endpoints.
401
+ #
402
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
403
+ # receive only a subset of messages, rather than receiving every
404
+ # message published to the topic.
405
+ #
406
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
407
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need
408
+ # for the endpoints to process JSON formatting, which is otherwise
409
+ # created for Amazon SNS metadata.
380
410
  # @option options [Boolean] :return_subscription_arn
381
411
  # Sets whether the response from the `Subscribe` request includes the
382
412
  # subscription ARN, even if the subscription is not yet confirmed.
@@ -263,6 +263,9 @@ module Aws::SNS
263
263
  #
264
264
  # {
265
265
  # name: "topicName", # required
266
+ # attributes: {
267
+ # "attributeName" => "attributeValue",
268
+ # },
266
269
  # }
267
270
  #
268
271
  # @!attribute [rw] name
@@ -273,10 +276,28 @@ module Aws::SNS
273
276
  # be between 1 and 256 characters long.
274
277
  # @return [String]
275
278
  #
279
+ # @!attribute [rw] attributes
280
+ # A map of attributes with their corresponding values.
281
+ #
282
+ # The following lists the names, descriptions, and values of the
283
+ # special request parameters that the `CreateTopic` action uses:
284
+ #
285
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
286
+ # failed deliveries to HTTP/S endpoints.
287
+ #
288
+ # * `DisplayName` – The display name to use for a topic with SMS
289
+ # subscriptions.
290
+ #
291
+ # * `Policy` – The policy that defines who can access your topic. By
292
+ # default, only the topic owner can publish or subscribe to the
293
+ # topic.
294
+ # @return [Hash<String,String>]
295
+ #
276
296
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/CreateTopicInput AWS API Documentation
277
297
  #
278
298
  class CreateTopicInput < Struct.new(
279
- :name)
299
+ :name,
300
+ :attributes)
280
301
  include Aws::Structure
281
302
  end
282
303
 
@@ -394,19 +415,19 @@ module Aws::SNS
394
415
  # @!attribute [rw] attributes
395
416
  # Attributes include the following:
396
417
  #
397
- # * `CustomUserData` -- arbitrary user data to associate with the
418
+ # * `CustomUserData` arbitrary user data to associate with the
398
419
  # endpoint. Amazon SNS does not use this data. The data must be in
399
420
  # UTF-8 format and less than 2KB.
400
421
  #
401
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
422
+ # * `Enabled` flag that enables/disables delivery to the endpoint.
402
423
  # Amazon SNS will set this to false when a notification service
403
424
  # indicates to Amazon SNS that the endpoint is invalid. Users can
404
425
  # set it back to true, typically after updating Token.
405
426
  #
406
- # * `Token` -- device token, also referred to as a registration id,
407
- # for an app and mobile device. This is returned from the
408
- # notification service when an app and mobile device are registered
409
- # with the notification service.
427
+ # * `Token` device token, also referred to as a registration id, for
428
+ # an app and mobile device. This is returned from the notification
429
+ # service when an app and mobile device are registered with the
430
+ # notification service.
410
431
  # @return [Hash<String,String>]
411
432
  #
412
433
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/GetEndpointAttributesResponse AWS API Documentation
@@ -441,16 +462,16 @@ module Aws::SNS
441
462
  # @!attribute [rw] attributes
442
463
  # Attributes include the following:
443
464
  #
444
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
465
+ # * `EventEndpointCreated` Topic ARN to which EndpointCreated event
445
466
  # notifications should be sent.
446
467
  #
447
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
468
+ # * `EventEndpointDeleted` Topic ARN to which EndpointDeleted event
448
469
  # notifications should be sent.
449
470
  #
450
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
471
+ # * `EventEndpointUpdated` Topic ARN to which EndpointUpdate event
451
472
  # notifications should be sent.
452
473
  #
453
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
474
+ # * `EventDeliveryFailure` Topic ARN to which DeliveryFailure event
454
475
  # notifications should be sent upon Direct Publish delivery failure
455
476
  # (permanent) to one of the application's endpoints.
456
477
  # @return [Hash<String,String>]
@@ -531,32 +552,32 @@ module Aws::SNS
531
552
  # A map of the subscription's attributes. Attributes in this map
532
553
  # include the following:
533
554
  #
534
- # * `ConfirmationWasAuthenticated` -- `true` if the subscription
555
+ # * `ConfirmationWasAuthenticated` `true` if the subscription
535
556
  # confirmation request was authenticated.
536
557
  #
537
- # * `DeliveryPolicy` -- The JSON serialization of the subscription's
558
+ # * `DeliveryPolicy` The JSON serialization of the subscription's
538
559
  # delivery policy.
539
560
  #
540
- # * `EffectiveDeliveryPolicy` -- The JSON serialization of the
561
+ # * `EffectiveDeliveryPolicy` The JSON serialization of the
541
562
  # effective delivery policy that takes into account the topic
542
563
  # delivery policy and account system defaults.
543
564
  #
544
- # * `FilterPolicy` -- The filter policy JSON that is assigned to the
565
+ # * `FilterPolicy` The filter policy JSON that is assigned to the
545
566
  # subscription.
546
567
  #
547
- # * `Owner` -- The AWS account ID of the subscription's owner.
568
+ # * `Owner` The AWS account ID of the subscription's owner.
548
569
  #
549
- # * `PendingConfirmation` -- `true` if the subscription hasn't been
570
+ # * `PendingConfirmation` `true` if the subscription hasn't been
550
571
  # confirmed. To confirm a pending subscription, call the
551
572
  # `ConfirmSubscription` action with a confirmation token.
552
573
  #
553
- # * `RawMessageDelivery` -- `true` if raw message delivery is enabled
574
+ # * `RawMessageDelivery` `true` if raw message delivery is enabled
554
575
  # for the subscription. Raw messages are free of JSON formatting and
555
576
  # can be sent to HTTP/S and Amazon SQS endpoints.
556
577
  #
557
- # * `SubscriptionArn` -- The subscription's ARN.
578
+ # * `SubscriptionArn` The subscription's ARN.
558
579
  #
559
- # * `TopicArn` -- The topic ARN that the subscription is associated
580
+ # * `TopicArn` The topic ARN that the subscription is associated
560
581
  # with.
561
582
  # @return [Hash<String,String>]
562
583
  #
@@ -593,29 +614,29 @@ module Aws::SNS
593
614
  # A map of the topic's attributes. Attributes in this map include the
594
615
  # following:
595
616
  #
596
- # * `TopicArn` -- the topic's ARN
617
+ # * `TopicArn` the topic's ARN
597
618
  #
598
- # * `Owner` -- the AWS account ID of the topic's owner
619
+ # * `Owner` the AWS account ID of the topic's owner
599
620
  #
600
- # * `Policy` -- the JSON serialization of the topic's access control
621
+ # * `Policy` the JSON serialization of the topic's access control
601
622
  # policy
602
623
  #
603
- # * `DisplayName` -- the human-readable name used in the "From"
604
- # field for notifications to email and email-json endpoints
624
+ # * `DisplayName` the human-readable name used in the "From" field
625
+ # for notifications to email and email-json endpoints
605
626
  #
606
- # * `SubscriptionsPending` -- the number of subscriptions pending
627
+ # * `SubscriptionsPending` the number of subscriptions pending
607
628
  # confirmation on this topic
608
629
  #
609
- # * `SubscriptionsConfirmed` -- the number of confirmed subscriptions
630
+ # * `SubscriptionsConfirmed` the number of confirmed subscriptions
610
631
  # on this topic
611
632
  #
612
- # * `SubscriptionsDeleted` -- the number of deleted subscriptions on
633
+ # * `SubscriptionsDeleted` the number of deleted subscriptions on
613
634
  # this topic
614
635
  #
615
- # * `DeliveryPolicy` -- the JSON serialization of the topic's
616
- # delivery policy
636
+ # * `DeliveryPolicy` the JSON serialization of the topic's delivery
637
+ # policy
617
638
  #
618
- # * `EffectiveDeliveryPolicy` -- the JSON serialization of the
639
+ # * `EffectiveDeliveryPolicy` the JSON serialization of the
619
640
  # effective delivery policy that takes into account system defaults
620
641
  # @return [Hash<String,String>]
621
642
  #
@@ -1032,6 +1053,10 @@ module Aws::SNS
1032
1053
  # @!attribute [rw] message
1033
1054
  # The message you want to send.
1034
1055
  #
1056
+ # The `Message` parameter is always a string. If you set
1057
+ # `MessageStructure` to `json`, you must string-encode the `Message`
1058
+ # parameter.
1059
+ #
1035
1060
  # If you are publishing to a topic and you want to send the same
1036
1061
  # message to all transport protocols, include the text of the message
1037
1062
  # as a String value. If you want to send different messages for each
@@ -1044,16 +1069,21 @@ module Aws::SNS
1044
1069
  # Constraints:
1045
1070
  #
1046
1071
  # * With the exception of SMS, messages must be UTF-8 encoded strings
1047
- # and at most 256 KB in size (262144 bytes, not 262144 characters).
1072
+ # and at most 256 KB in size (262,144 bytes, not 262,144
1073
+ # characters).
1048
1074
  #
1049
- # * For SMS, each message can contain up to 140 bytes, and the
1050
- # character limit depends on the encoding scheme. For example, an
1075
+ # * For SMS, each message can contain up to 140 characters. This
1076
+ # character limit depends on the encoding schema. For example, an
1051
1077
  # SMS message can contain 160 GSM characters, 140 ASCII characters,
1052
- # or 70 UCS-2 characters. If you publish a message that exceeds the
1053
- # size limit, Amazon SNS sends it as multiple messages, each fitting
1054
- # within the size limit. Messages are not cut off in the middle of a
1055
- # word but on whole-word boundaries. The total size limit for a
1056
- # single SMS publish action is 1600 bytes.
1078
+ # or 70 UCS-2 characters.
1079
+ #
1080
+ # If you publish a message that exceeds this size limit, Amazon SNS
1081
+ # sends the message as multiple messages, each fitting within the
1082
+ # size limit. Messages aren't truncated mid-word but are cut off at
1083
+ # whole-word boundaries.
1084
+ #
1085
+ # The total size limit for a single SMS `Publish` action is 1,600
1086
+ # characters.
1057
1087
  #
1058
1088
  # JSON-specific constraints:
1059
1089
  #
@@ -1199,19 +1229,19 @@ module Aws::SNS
1199
1229
  # A map of the endpoint attributes. Attributes in this map include the
1200
1230
  # following:
1201
1231
  #
1202
- # * `CustomUserData` -- arbitrary user data to associate with the
1232
+ # * `CustomUserData` arbitrary user data to associate with the
1203
1233
  # endpoint. Amazon SNS does not use this data. The data must be in
1204
1234
  # UTF-8 format and less than 2KB.
1205
1235
  #
1206
- # * `Enabled` -- flag that enables/disables delivery to the endpoint.
1236
+ # * `Enabled` flag that enables/disables delivery to the endpoint.
1207
1237
  # Amazon SNS will set this to false when a notification service
1208
1238
  # indicates to Amazon SNS that the endpoint is invalid. Users can
1209
1239
  # set it back to true, typically after updating Token.
1210
1240
  #
1211
- # * `Token` -- device token, also referred to as a registration id,
1212
- # for an app and mobile device. This is returned from the
1213
- # notification service when an app and mobile device are registered
1214
- # with the notification service.
1241
+ # * `Token` device token, also referred to as a registration id, for
1242
+ # an app and mobile device. This is returned from the notification
1243
+ # service when an app and mobile device are registered with the
1244
+ # notification service.
1215
1245
  # @return [Hash<String,String>]
1216
1246
  #
1217
1247
  # @see http://docs.aws.amazon.com/goto/WebAPI/sns-2010-03-31/SetEndpointAttributesInput AWS API Documentation
@@ -1242,36 +1272,36 @@ module Aws::SNS
1242
1272
  # A map of the platform application attributes. Attributes in this map
1243
1273
  # include the following:
1244
1274
  #
1245
- # * `PlatformCredential` -- The credential received from the
1275
+ # * `PlatformCredential` The credential received from the
1246
1276
  # notification service. For APNS/APNS\_SANDBOX, PlatformCredential
1247
1277
  # is private key. For GCM, PlatformCredential is "API key". For
1248
1278
  # ADM, PlatformCredential is "client secret".
1249
1279
  #
1250
- # * `PlatformPrincipal` -- The principal received from the
1251
- # notification service. For APNS/APNS\_SANDBOX, PlatformPrincipal is
1252
- # SSL certificate. For GCM, PlatformPrincipal is not applicable. For
1280
+ # * `PlatformPrincipal` The principal received from the notification
1281
+ # service. For APNS/APNS\_SANDBOX, PlatformPrincipal is SSL
1282
+ # certificate. For GCM, PlatformPrincipal is not applicable. For
1253
1283
  # ADM, PlatformPrincipal is "client id".
1254
1284
  #
1255
- # * `EventEndpointCreated` -- Topic ARN to which EndpointCreated event
1285
+ # * `EventEndpointCreated` Topic ARN to which EndpointCreated event
1256
1286
  # notifications should be sent.
1257
1287
  #
1258
- # * `EventEndpointDeleted` -- Topic ARN to which EndpointDeleted event
1288
+ # * `EventEndpointDeleted` Topic ARN to which EndpointDeleted event
1259
1289
  # notifications should be sent.
1260
1290
  #
1261
- # * `EventEndpointUpdated` -- Topic ARN to which EndpointUpdate event
1291
+ # * `EventEndpointUpdated` Topic ARN to which EndpointUpdate event
1262
1292
  # notifications should be sent.
1263
1293
  #
1264
- # * `EventDeliveryFailure` -- Topic ARN to which DeliveryFailure event
1294
+ # * `EventDeliveryFailure` Topic ARN to which DeliveryFailure event
1265
1295
  # notifications should be sent upon Direct Publish delivery failure
1266
1296
  # (permanent) to one of the application's endpoints.
1267
1297
  #
1268
- # * `SuccessFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1298
+ # * `SuccessFeedbackRoleArn` IAM role ARN used to give Amazon SNS
1269
1299
  # write access to use CloudWatch Logs on your behalf.
1270
1300
  #
1271
- # * `FailureFeedbackRoleArn` -- IAM role ARN used to give Amazon SNS
1301
+ # * `FailureFeedbackRoleArn` IAM role ARN used to give Amazon SNS
1272
1302
  # write access to use CloudWatch Logs on your behalf.
1273
1303
  #
1274
- # * `SuccessFeedbackSampleRate` -- Sample rate percentage (0-100) of
1304
+ # * `SuccessFeedbackSampleRate` Sample rate percentage (0-100) of
1275
1305
  # successfully delivered messages.
1276
1306
  # @return [Hash<String,String>]
1277
1307
  #
@@ -1408,11 +1438,23 @@ module Aws::SNS
1408
1438
  # @return [String]
1409
1439
  #
1410
1440
  # @!attribute [rw] attribute_name
1411
- # The name of the attribute you want to set. Only a subset of the
1412
- # subscriptions attributes are mutable.
1441
+ # A map of attributes with their corresponding values.
1442
+ #
1443
+ # The following lists the names, descriptions, and values of the
1444
+ # special request parameters that the `SetTopicAttributes` action
1445
+ # uses:
1413
1446
  #
1414
- # Valid values: `DeliveryPolicy` \| `FilterPolicy` \|
1415
- # `RawMessageDelivery`
1447
+ # * `DeliveryPolicy` The policy that defines how Amazon SNS retries
1448
+ # failed deliveries to HTTP/S endpoints.
1449
+ #
1450
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
1451
+ # receive only a subset of messages, rather than receiving every
1452
+ # message published to the topic.
1453
+ #
1454
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
1455
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the
1456
+ # need for the endpoints to process JSON formatting, which is
1457
+ # otherwise created for Amazon SNS metadata.
1416
1458
  # @return [String]
1417
1459
  #
1418
1460
  # @!attribute [rw] attribute_value
@@ -1444,10 +1486,21 @@ module Aws::SNS
1444
1486
  # @return [String]
1445
1487
  #
1446
1488
  # @!attribute [rw] attribute_name
1447
- # The name of the attribute you want to set. Only a subset of the
1448
- # topic's attributes are mutable.
1489
+ # A map of attributes with their corresponding values.
1490
+ #
1491
+ # The following lists the names, descriptions, and values of the
1492
+ # special request parameters that the `SetTopicAttributes` action
1493
+ # uses:
1449
1494
  #
1450
- # Valid values: `Policy` \| `DisplayName` \| `DeliveryPolicy`
1495
+ # * `DeliveryPolicy` The policy that defines how Amazon SNS retries
1496
+ # failed deliveries to HTTP/S endpoints.
1497
+ #
1498
+ # * `DisplayName` – The display name to use for a topic with SMS
1499
+ # subscriptions.
1500
+ #
1501
+ # * `Policy` – The policy that defines who can access your topic. By
1502
+ # default, only the topic owner can publish or subscribe to the
1503
+ # topic.
1451
1504
  # @return [String]
1452
1505
  #
1453
1506
  # @!attribute [rw] attribute_value
@@ -1485,22 +1538,22 @@ module Aws::SNS
1485
1538
  # @!attribute [rw] protocol
1486
1539
  # The protocol you want to use. Supported protocols include:
1487
1540
  #
1488
- # * `http` -- delivery of JSON-encoded message via HTTP POST
1541
+ # * `http` delivery of JSON-encoded message via HTTP POST
1489
1542
  #
1490
- # * `https` -- delivery of JSON-encoded message via HTTPS POST
1543
+ # * `https` delivery of JSON-encoded message via HTTPS POST
1491
1544
  #
1492
- # * `email` -- delivery of message via SMTP
1545
+ # * `email` delivery of message via SMTP
1493
1546
  #
1494
- # * `email-json` -- delivery of JSON-encoded message via SMTP
1547
+ # * `email-json` delivery of JSON-encoded message via SMTP
1495
1548
  #
1496
- # * `sms` -- delivery of message via SMS
1549
+ # * `sms` delivery of message via SMS
1497
1550
  #
1498
- # * `sqs` -- delivery of JSON-encoded message to an Amazon SQS queue
1551
+ # * `sqs` delivery of JSON-encoded message to an Amazon SQS queue
1499
1552
  #
1500
- # * `application` -- delivery of JSON-encoded message to an
1501
- # EndpointArn for a mobile app and device.
1553
+ # * `application` delivery of JSON-encoded message to an EndpointArn
1554
+ # for a mobile app and device.
1502
1555
  #
1503
- # * `lambda` -- delivery of JSON-encoded message to an AWS Lambda
1556
+ # * `lambda` delivery of JSON-encoded message to an AWS Lambda
1504
1557
  # function.
1505
1558
  # @return [String]
1506
1559
  #
@@ -1532,9 +1585,23 @@ module Aws::SNS
1532
1585
  # @return [String]
1533
1586
  #
1534
1587
  # @!attribute [rw] attributes
1535
- # Assigns attributes to the subscription as a map of key-value pairs.
1536
- # You can assign any attribute that is supported by the
1537
- # `SetSubscriptionAttributes` action.
1588
+ # A map of attributes with their corresponding values.
1589
+ #
1590
+ # The following lists the names, descriptions, and values of the
1591
+ # special request parameters that the `SetTopicAttributes` action
1592
+ # uses:
1593
+ #
1594
+ # * `DeliveryPolicy` – The policy that defines how Amazon SNS retries
1595
+ # failed deliveries to HTTP/S endpoints.
1596
+ #
1597
+ # * `FilterPolicy` – The simple JSON object that lets your subscriber
1598
+ # receive only a subset of messages, rather than receiving every
1599
+ # message published to the topic.
1600
+ #
1601
+ # * `RawMessageDelivery` – When set to `true`, enables raw message
1602
+ # delivery to Amazon SQS or HTTP/S endpoints. This eliminates the
1603
+ # need for the endpoints to process JSON formatting, which is
1604
+ # otherwise created for Amazon SNS metadata.
1538
1605
  # @return [Hash<String,String>]
1539
1606
  #
1540
1607
  # @!attribute [rw] return_subscription_arn
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sns
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.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: 2018-10-24 00:00:00.000000000 Z
11
+ date: 2018-11-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core