Class: Aws::SNS::Client
- Inherits:
-
Seahorse::Client::Base
- Object
- Seahorse::Client::Base
- Aws::SNS::Client
- Includes:
- ClientStubs
- Defined in:
- lib/aws-sdk-sns/client.rb
Overview
An API client for SNS. To construct a client, you need to configure a ‘:region` and `:credentials`.
client = Aws::SNS::Client.new(
region: region_name,
credentials: credentials,
# ...
)
For details on configuring region and credentials see the [developer guide](/sdk-for-ruby/v3/developer-guide/setup-config.html).
See #initialize for a full list of supported configuration options.
Class Attribute Summary collapse
- .identifier ⇒ Object readonly private
API Operations collapse
-
#add_permission(params = {}) ⇒ Struct
Adds a statement to a topic’s access control policy, granting access for the specified Amazon Web Services accounts to the specified actions.
-
#check_if_phone_number_is_opted_out(params = {}) ⇒ Types::CheckIfPhoneNumberIsOptedOutResponse
Accepts a phone number and indicates whether the phone holder has opted out of receiving SMS messages from your Amazon Web Services account.
-
#confirm_subscription(params = {}) ⇒ Types::ConfirmSubscriptionResponse
Verifies an endpoint owner’s intent to receive messages by validating the token sent to the endpoint by an earlier ‘Subscribe` action.
-
#create_platform_application(params = {}) ⇒ Types::CreatePlatformApplicationResponse
Creates a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging), to which devices and mobile apps may register.
-
#create_platform_endpoint(params = {}) ⇒ Types::CreateEndpointResponse
Creates an endpoint for a device and mobile app on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS.
-
#create_sms_sandbox_phone_number(params = {}) ⇒ Struct
Adds a destination phone number to an Amazon Web Services account in the SMS sandbox and sends a one-time password (OTP) to that phone number.
-
#create_topic(params = {}) ⇒ Types::CreateTopicResponse
Creates a topic to which notifications can be published.
-
#delete_endpoint(params = {}) ⇒ Struct
Deletes the endpoint for a device and mobile app from Amazon SNS.
-
#delete_platform_application(params = {}) ⇒ Struct
Deletes a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging).
-
#delete_sms_sandbox_phone_number(params = {}) ⇒ Struct
Deletes an Amazon Web Services account’s verified or pending phone number from the SMS sandbox.
-
#delete_topic(params = {}) ⇒ Struct
Deletes a topic and all its subscriptions.
-
#get_data_protection_policy(params = {}) ⇒ Types::GetDataProtectionPolicyResponse
Retrieves the specified inline ‘DataProtectionPolicy` document that is stored in the specified Amazon SNS topic.
-
#get_endpoint_attributes(params = {}) ⇒ Types::GetEndpointAttributesResponse
Retrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS.
-
#get_platform_application_attributes(params = {}) ⇒ Types::GetPlatformApplicationAttributesResponse
Retrieves the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging).
-
#get_sms_attributes(params = {}) ⇒ Types::GetSMSAttributesResponse
Returns the settings for sending SMS messages from your Amazon Web Services account.
-
#get_sms_sandbox_account_status(params = {}) ⇒ Types::GetSMSSandboxAccountStatusResult
Retrieves the SMS sandbox status for the calling Amazon Web Services account in the target Amazon Web Services Region.
-
#get_subscription_attributes(params = {}) ⇒ Types::GetSubscriptionAttributesResponse
Returns all of the properties of a subscription.
-
#get_topic_attributes(params = {}) ⇒ Types::GetTopicAttributesResponse
Returns all of the properties of a topic.
-
#list_endpoints_by_platform_application(params = {}) ⇒ Types::ListEndpointsByPlatformApplicationResponse
Lists the endpoints and endpoint attributes for devices in a supported push notification service, such as GCM (Firebase Cloud Messaging) and APNS.
-
#list_origination_numbers(params = {}) ⇒ Types::ListOriginationNumbersResult
Lists the calling Amazon Web Services account’s dedicated origination numbers and their metadata.
-
#list_phone_numbers_opted_out(params = {}) ⇒ Types::ListPhoneNumbersOptedOutResponse
Returns a list of phone numbers that are opted out, meaning you cannot send SMS messages to them.
-
#list_platform_applications(params = {}) ⇒ Types::ListPlatformApplicationsResponse
Lists the platform application objects for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging).
-
#list_sms_sandbox_phone_numbers(params = {}) ⇒ Types::ListSMSSandboxPhoneNumbersResult
Lists the calling Amazon Web Services account’s current verified and pending destination phone numbers in the SMS sandbox.
-
#list_subscriptions(params = {}) ⇒ Types::ListSubscriptionsResponse
Returns a list of the requester’s subscriptions.
-
#list_subscriptions_by_topic(params = {}) ⇒ Types::ListSubscriptionsByTopicResponse
Returns a list of the subscriptions to a specific topic.
-
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
List all tags added to the specified Amazon SNS topic.
-
#list_topics(params = {}) ⇒ Types::ListTopicsResponse
Returns a list of the requester’s topics.
-
#opt_in_phone_number(params = {}) ⇒ Struct
Use this request to opt in a phone number that is opted out, which enables you to resume sending SMS messages to the number.
-
#publish(params = {}) ⇒ Types::PublishResponse
Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the ‘TargetArn`).
-
#publish_batch(params = {}) ⇒ Types::PublishBatchResponse
Publishes up to 10 messages to the specified topic in a single batch.
-
#put_data_protection_policy(params = {}) ⇒ Struct
Adds or updates an inline policy document that is stored in the specified Amazon SNS topic.
-
#remove_permission(params = {}) ⇒ Struct
Removes a statement from a topic’s access control policy.
-
#set_endpoint_attributes(params = {}) ⇒ Struct
Sets the attributes for an endpoint for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS.
-
#set_platform_application_attributes(params = {}) ⇒ Struct
Sets the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging).
-
#set_sms_attributes(params = {}) ⇒ Struct
Use this request to set the default settings for sending SMS messages and receiving daily SMS usage reports.
-
#set_subscription_attributes(params = {}) ⇒ Struct
Allows a subscription owner to set an attribute of the subscription to a new value.
-
#set_topic_attributes(params = {}) ⇒ Struct
Allows a topic owner to set an attribute of the topic to a new value.
-
#subscribe(params = {}) ⇒ Types::SubscribeResponse
Subscribes an endpoint to an Amazon SNS topic.
-
#tag_resource(params = {}) ⇒ Struct
Add tags to the specified Amazon SNS topic.
-
#unsubscribe(params = {}) ⇒ Struct
Deletes a subscription.
-
#untag_resource(params = {}) ⇒ Struct
Remove tags from the specified Amazon SNS topic.
-
#verify_sms_sandbox_phone_number(params = {}) ⇒ Struct
Verifies a destination phone number with a one-time password (OTP) for the calling Amazon Web Services account.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(options) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(options) ⇒ Client
Returns a new instance of Client.
471 472 473 |
# File 'lib/aws-sdk-sns/client.rb', line 471 def initialize(*args) super end |
Class Attribute Details
.identifier ⇒ Object (readonly)
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
3185 3186 3187 |
# File 'lib/aws-sdk-sns/client.rb', line 3185 def identifier @identifier end |
Class Method Details
.errors_module ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
3188 3189 3190 |
# File 'lib/aws-sdk-sns/client.rb', line 3188 def errors_module Errors end |
Instance Method Details
#add_permission(params = {}) ⇒ Struct
Adds a statement to a topic’s access control policy, granting access for the specified Amazon Web Services accounts to the specified actions.
<note markdown=“1”> To remove the ability to change topic permissions, you must deny permissions to the ‘AddPermission`, `RemovePermission`, and `SetTopicAttributes` actions in your IAM policy.
</note>
519 520 521 522 |
# File 'lib/aws-sdk-sns/client.rb', line 519 def (params = {}, = {}) req = build_request(:add_permission, params) req.send_request() end |
#build_request(operation_name, params = {}) ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 |
# File 'lib/aws-sdk-sns/client.rb', line 3158 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) tracer = config.telemetry_provider.tracer_provider.tracer( Aws::Telemetry.module_to_tracer_name('Aws::SNS') ) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config, tracer: tracer ) context[:gem_name] = 'aws-sdk-sns' context[:gem_version] = '1.116.0' Seahorse::Client::Request.new(handlers, context) end |
#check_if_phone_number_is_opted_out(params = {}) ⇒ Types::CheckIfPhoneNumberIsOptedOutResponse
Accepts a phone number and indicates whether the phone holder has opted out of receiving SMS messages from your Amazon Web Services account. You cannot send SMS messages to a number that is opted out.
To resume sending messages, you can opt in the number by using the ‘OptInPhoneNumber` action.
552 553 554 555 |
# File 'lib/aws-sdk-sns/client.rb', line 552 def check_if_phone_number_is_opted_out(params = {}, = {}) req = build_request(:check_if_phone_number_is_opted_out, params) req.send_request() end |
#confirm_subscription(params = {}) ⇒ Types::ConfirmSubscriptionResponse
Verifies an endpoint owner’s intent to receive messages by validating the token sent to the endpoint by an earlier ‘Subscribe` action. If the token is valid, the action creates a new subscription and returns its Amazon Resource Name (ARN). This call requires an AWS signature only when the `AuthenticateOnUnsubscribe` flag is set to “true”.
596 597 598 599 |
# File 'lib/aws-sdk-sns/client.rb', line 596 def confirm_subscription(params = {}, = {}) req = build_request(:confirm_subscription, params) req.send_request() end |
#create_platform_application(params = {}) ⇒ Types::CreatePlatformApplicationResponse
Creates a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging), to which devices and mobile apps may register. You must specify ‘PlatformPrincipal` and `PlatformCredential` attributes when using the `CreatePlatformApplication` action.
‘PlatformPrincipal` and `PlatformCredential` are received from the notification service.
-
For ADM, ‘PlatformPrincipal` is `client id` and `PlatformCredential` is `client secret`.
-
For APNS and ‘APNS_SANDBOX` using certificate credentials, `PlatformPrincipal` is `SSL certificate` and `PlatformCredential` is `private key`.
-
For APNS and ‘APNS_SANDBOX` using token credentials, `PlatformPrincipal` is `signing key ID` and `PlatformCredential` is `signing key`.
-
For Baidu, ‘PlatformPrincipal` is `API key` and `PlatformCredential` is `secret key`.
-
For GCM (Firebase Cloud Messaging) using key credentials, there is no ‘PlatformPrincipal`. The `PlatformCredential` is `API key`.
-
For GCM (Firebase Cloud Messaging) using token credentials, there is no ‘PlatformPrincipal`. The `PlatformCredential` is a JSON formatted private key file. When using the Amazon Web Services CLI or Amazon Web Services SDKs, the file must be in string format and special characters must be ignored. To format the file correctly, Amazon SNS recommends using the following command: `SERVICE_JSON=$(jq @json < service.json)`.
-
For MPNS, ‘PlatformPrincipal` is `TLS certificate` and `PlatformCredential` is `private key`.
-
For WNS, ‘PlatformPrincipal` is `Package Security Identifier` and `PlatformCredential` is `secret key`.
You can use the returned ‘PlatformApplicationArn` as an attribute for the `CreatePlatformEndpoint` action.
684 685 686 687 |
# File 'lib/aws-sdk-sns/client.rb', line 684 def create_platform_application(params = {}, = {}) req = build_request(:create_platform_application, params) req.send_request() end |
#create_platform_endpoint(params = {}) ⇒ Types::CreateEndpointResponse
Creates an endpoint for a device and mobile app on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS. ‘CreatePlatformEndpoint` requires the `PlatformApplicationArn` that is returned from `CreatePlatformApplication`. You can use the returned `EndpointArn` to send a message to a mobile app or by the `Subscribe` action for subscription to a topic. The `CreatePlatformEndpoint` action is idempotent, so if the requester already owns an endpoint with the same device token and attributes, that endpoint’s ARN is returned without creating a new endpoint. For more information, see [Using Amazon SNS Mobile Push Notifications].
When using ‘CreatePlatformEndpoint` with Baidu, two attributes must be provided: ChannelId and UserId. The token field must also contain the ChannelId. For more information, see [Creating an Amazon SNS Endpoint for Baidu].
[1]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html [2]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePushBaiduEndpoint.html
757 758 759 760 |
# File 'lib/aws-sdk-sns/client.rb', line 757 def create_platform_endpoint(params = {}, = {}) req = build_request(:create_platform_endpoint, params) req.send_request() end |
#create_sms_sandbox_phone_number(params = {}) ⇒ Struct
Adds a destination phone number to an Amazon Web Services account in the SMS sandbox and sends a one-time password (OTP) to that phone number.
When you start using Amazon SNS to send SMS messages, your Amazon Web Services account is in the *SMS sandbox*. The SMS sandbox provides a safe environment for you to try Amazon SNS features without risking your reputation as an SMS sender. While your Amazon Web Services account is in the SMS sandbox, you can use all of the features of Amazon SNS. However, you can send SMS messages only to verified destination phone numbers. For more information, including how to move out of the sandbox to send messages without restrictions, see [SMS sandbox] in the *Amazon SNS Developer Guide*.
801 802 803 804 |
# File 'lib/aws-sdk-sns/client.rb', line 801 def create_sms_sandbox_phone_number(params = {}, = {}) req = build_request(:create_sms_sandbox_phone_number, params) req.send_request() end |
#create_topic(params = {}) ⇒ Types::CreateTopicResponse
Creates a topic to which notifications can be published. Users can create at most 100,000 standard topics (at most 1,000 FIFO topics). For more information, see [Creating an Amazon SNS topic] in the *Amazon SNS Developer Guide*. This action is idempotent, so if the requester already owns a topic with the specified name, that topic’s ARN is returned without creating a new topic.
[1]: docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html
1038 1039 1040 1041 |
# File 'lib/aws-sdk-sns/client.rb', line 1038 def create_topic(params = {}, = {}) req = build_request(:create_topic, params) req.send_request() end |
#delete_endpoint(params = {}) ⇒ Struct
Deletes the endpoint for a device and mobile app from Amazon SNS. This action is idempotent. For more information, see [Using Amazon SNS Mobile Push Notifications].
When you delete an endpoint that is also subscribed to a topic, then you must also unsubscribe the endpoint from the topic.
1069 1070 1071 1072 |
# File 'lib/aws-sdk-sns/client.rb', line 1069 def delete_endpoint(params = {}, = {}) req = build_request(:delete_endpoint, params) req.send_request() end |
#delete_platform_application(params = {}) ⇒ Struct
Deletes a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see [Using Amazon SNS Mobile Push Notifications].
1098 1099 1100 1101 |
# File 'lib/aws-sdk-sns/client.rb', line 1098 def delete_platform_application(params = {}, = {}) req = build_request(:delete_platform_application, params) req.send_request() end |
#delete_sms_sandbox_phone_number(params = {}) ⇒ Struct
Deletes an Amazon Web Services account’s verified or pending phone number from the SMS sandbox.
When you start using Amazon SNS to send SMS messages, your Amazon Web Services account is in the *SMS sandbox*. The SMS sandbox provides a safe environment for you to try Amazon SNS features without risking your reputation as an SMS sender. While your Amazon Web Services account is in the SMS sandbox, you can use all of the features of Amazon SNS. However, you can send SMS messages only to verified destination phone numbers. For more information, including how to move out of the sandbox to send messages without restrictions, see [SMS sandbox] in the *Amazon SNS Developer Guide*.
1135 1136 1137 1138 |
# File 'lib/aws-sdk-sns/client.rb', line 1135 def delete_sms_sandbox_phone_number(params = {}, = {}) req = build_request(:delete_sms_sandbox_phone_number, params) req.send_request() end |
#delete_topic(params = {}) ⇒ Struct
Deletes a topic and all its subscriptions. Deleting a topic might prevent some messages previously sent to the topic from being delivered to subscribers. This action is idempotent, so deleting a topic that does not exist does not result in an error.
1160 1161 1162 1163 |
# File 'lib/aws-sdk-sns/client.rb', line 1160 def delete_topic(params = {}, = {}) req = build_request(:delete_topic, params) req.send_request() end |
#get_data_protection_policy(params = {}) ⇒ Types::GetDataProtectionPolicyResponse
Retrieves the specified inline ‘DataProtectionPolicy` document that is stored in the specified Amazon SNS topic.
1196 1197 1198 1199 |
# File 'lib/aws-sdk-sns/client.rb', line 1196 def get_data_protection_policy(params = {}, = {}) req = build_request(:get_data_protection_policy, params) req.send_request() end |
#get_endpoint_attributes(params = {}) ⇒ Types::GetEndpointAttributesResponse
Retrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS. For more information, see [Using Amazon SNS Mobile Push Notifications].
1232 1233 1234 1235 |
# File 'lib/aws-sdk-sns/client.rb', line 1232 def get_endpoint_attributes(params = {}, = {}) req = build_request(:get_endpoint_attributes, params) req.send_request() end |
#get_platform_application_attributes(params = {}) ⇒ Types::GetPlatformApplicationAttributesResponse
Retrieves the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see [Using Amazon SNS Mobile Push Notifications].
1268 1269 1270 1271 |
# File 'lib/aws-sdk-sns/client.rb', line 1268 def get_platform_application_attributes(params = {}, = {}) req = build_request(:get_platform_application_attributes, params) req.send_request() end |
#get_sms_attributes(params = {}) ⇒ Types::GetSMSAttributesResponse
Returns the settings for sending SMS messages from your Amazon Web Services account.
These settings are set with the ‘SetSMSAttributes` action.
1310 1311 1312 1313 |
# File 'lib/aws-sdk-sns/client.rb', line 1310 def get_sms_attributes(params = {}, = {}) req = build_request(:get_sms_attributes, params) req.send_request() end |
#get_sms_sandbox_account_status(params = {}) ⇒ Types::GetSMSSandboxAccountStatusResult
Retrieves the SMS sandbox status for the calling Amazon Web Services account in the target Amazon Web Services Region.
When you start using Amazon SNS to send SMS messages, your Amazon Web Services account is in the *SMS sandbox*. The SMS sandbox provides a safe environment for you to try Amazon SNS features without risking your reputation as an SMS sender. While your Amazon Web Services account is in the SMS sandbox, you can use all of the features of Amazon SNS. However, you can send SMS messages only to verified destination phone numbers. For more information, including how to move out of the sandbox to send messages without restrictions, see [SMS sandbox] in the *Amazon SNS Developer Guide*.
1344 1345 1346 1347 |
# File 'lib/aws-sdk-sns/client.rb', line 1344 def get_sms_sandbox_account_status(params = {}, = {}) req = build_request(:get_sms_sandbox_account_status, params) req.send_request() end |
#get_subscription_attributes(params = {}) ⇒ Types::GetSubscriptionAttributesResponse
Returns all of the properties of a subscription.
1373 1374 1375 1376 |
# File 'lib/aws-sdk-sns/client.rb', line 1373 def get_subscription_attributes(params = {}, = {}) req = build_request(:get_subscription_attributes, params) req.send_request() end |
#get_topic_attributes(params = {}) ⇒ Types::GetTopicAttributesResponse
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
1403 1404 1405 1406 |
# File 'lib/aws-sdk-sns/client.rb', line 1403 def get_topic_attributes(params = {}, = {}) req = build_request(:get_topic_attributes, params) req.send_request() end |
#list_endpoints_by_platform_application(params = {}) ⇒ Types::ListEndpointsByPlatformApplicationResponse
Lists the endpoints and endpoint attributes for devices in a supported push notification service, such as GCM (Firebase Cloud Messaging) and APNS. The results for ‘ListEndpointsByPlatformApplication` are paginated and return a limited list of endpoints, up to 100. If additional records are available after the first page results, then a NextToken string will be returned. To receive the next page, you call `ListEndpointsByPlatformApplication` again using the NextToken string received from the previous call. When there are no more records to return, NextToken will be null. For more information, see [Using Amazon SNS Mobile Push Notifications].
This action is throttled at 30 transactions per second (TPS).
[1]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1460 1461 1462 1463 |
# File 'lib/aws-sdk-sns/client.rb', line 1460 def list_endpoints_by_platform_application(params = {}, = {}) req = build_request(:list_endpoints_by_platform_application, params) req.send_request() end |
#list_origination_numbers(params = {}) ⇒ Types::ListOriginationNumbersResult
Lists the calling Amazon Web Services account’s dedicated origination numbers and their metadata. For more information about origination numbers, see [Origination numbers] in the *Amazon SNS Developer Guide*.
[1]: docs.aws.amazon.com/sns/latest/dg/channels-sms-originating-identities-origination-numbers.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1510 1511 1512 1513 |
# File 'lib/aws-sdk-sns/client.rb', line 1510 def list_origination_numbers(params = {}, = {}) req = build_request(:list_origination_numbers, params) req.send_request() end |
#list_phone_numbers_opted_out(params = {}) ⇒ Types::ListPhoneNumbersOptedOutResponse
Returns a list of phone numbers that are opted out, meaning you cannot send SMS messages to them.
The results for ‘ListPhoneNumbersOptedOut` are paginated, and each page returns up to 100 phone numbers. If additional phone numbers are available after the first page of results, then a `NextToken` string will be returned. To receive the next page, you call `ListPhoneNumbersOptedOut` again using the `NextToken` string received from the previous call. When there are no more records to return, `NextToken` will be null.
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1554 1555 1556 1557 |
# File 'lib/aws-sdk-sns/client.rb', line 1554 def list_phone_numbers_opted_out(params = {}, = {}) req = build_request(:list_phone_numbers_opted_out, params) req.send_request() end |
#list_platform_applications(params = {}) ⇒ Types::ListPlatformApplicationsResponse
Lists the platform application objects for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). The results for ‘ListPlatformApplications` are paginated and return a limited list of applications, up to 100. If additional records are available after the first page results, then a NextToken string will be returned. To receive the next page, you call `ListPlatformApplications` using the NextToken string received from the previous call. When there are no more records to return, `NextToken` will be null. For more information, see [Using Amazon SNS Mobile Push Notifications].
This action is throttled at 15 transactions per second (TPS).
[1]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1606 1607 1608 1609 |
# File 'lib/aws-sdk-sns/client.rb', line 1606 def list_platform_applications(params = {}, = {}) req = build_request(:list_platform_applications, params) req.send_request() end |
#list_sms_sandbox_phone_numbers(params = {}) ⇒ Types::ListSMSSandboxPhoneNumbersResult
Lists the calling Amazon Web Services account’s current verified and pending destination phone numbers in the SMS sandbox.
When you start using Amazon SNS to send SMS messages, your Amazon Web Services account is in the *SMS sandbox*. The SMS sandbox provides a safe environment for you to try Amazon SNS features without risking your reputation as an SMS sender. While your Amazon Web Services account is in the SMS sandbox, you can use all of the features of Amazon SNS. However, you can send SMS messages only to verified destination phone numbers. For more information, including how to move out of the sandbox to send messages without restrictions, see [SMS sandbox] in the *Amazon SNS Developer Guide*.
[1]: docs.aws.amazon.com/sns/latest/dg/sns-sms-sandbox.html
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1660 1661 1662 1663 |
# File 'lib/aws-sdk-sns/client.rb', line 1660 def list_sms_sandbox_phone_numbers(params = {}, = {}) req = build_request(:list_sms_sandbox_phone_numbers, params) req.send_request() end |
#list_subscriptions(params = {}) ⇒ Types::ListSubscriptionsResponse
Returns a list of the requester’s subscriptions. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a ‘NextToken` is also returned. Use the `NextToken` parameter in a new `ListSubscriptions` call to get further results.
This action is throttled at 30 transactions per second (TPS).
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1702 1703 1704 1705 |
# File 'lib/aws-sdk-sns/client.rb', line 1702 def list_subscriptions(params = {}, = {}) req = build_request(:list_subscriptions, params) req.send_request() end |
#list_subscriptions_by_topic(params = {}) ⇒ Types::ListSubscriptionsByTopicResponse
Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a ‘NextToken` is also returned. Use the `NextToken` parameter in a new `ListSubscriptionsByTopic` call to get further results.
This action is throttled at 30 transactions per second (TPS).
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1749 1750 1751 1752 |
# File 'lib/aws-sdk-sns/client.rb', line 1749 def list_subscriptions_by_topic(params = {}, = {}) req = build_request(:list_subscriptions_by_topic, params) req.send_request() end |
#list_tags_for_resource(params = {}) ⇒ Types::ListTagsForResourceResponse
List all tags added to the specified Amazon SNS topic. For an overview, see [Amazon SNS Tags] in the *Amazon Simple Notification Service Developer Guide*.
1785 1786 1787 1788 |
# File 'lib/aws-sdk-sns/client.rb', line 1785 def (params = {}, = {}) req = build_request(:list_tags_for_resource, params) req.send_request() end |
#list_topics(params = {}) ⇒ Types::ListTopicsResponse
Returns a list of the requester’s topics. Each call returns a limited list of topics, up to 100. If there are more topics, a ‘NextToken` is also returned. Use the `NextToken` parameter in a new `ListTopics` call to get further results.
This action is throttled at 30 transactions per second (TPS).
The returned response is a pageable response and is Enumerable. For details on usage see PageableResponse.
1823 1824 1825 1826 |
# File 'lib/aws-sdk-sns/client.rb', line 1823 def list_topics(params = {}, = {}) req = build_request(:list_topics, params) req.send_request() end |
#opt_in_phone_number(params = {}) ⇒ Struct
Use this request to opt in a phone number that is opted out, which enables you to resume sending SMS messages to the number.
You can opt in a phone number only once every 30 days.
1848 1849 1850 1851 |
# File 'lib/aws-sdk-sns/client.rb', line 1848 def opt_in_phone_number(params = {}, = {}) req = build_request(:opt_in_phone_number, params) req.send_request() end |
#publish(params = {}) ⇒ Types::PublishResponse
Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the ‘TargetArn`).
If you send a message to a topic, Amazon SNS delivers the message to each endpoint that is subscribed to the topic. The format of the message depends on the notification protocol for each subscribed endpoint.
When a ‘messageId` is returned, the message is saved and Amazon SNS immediately delivers it to subscribers.
To use the ‘Publish` action for publishing a message to a mobile endpoint, such as an app on a Kindle device or mobile phone, you must specify the EndpointArn for the TargetArn parameter. The EndpointArn is returned when making a call with the `CreatePlatformEndpoint` action.
For more information about formatting messages, see [Send Custom Platform-Specific Payloads in Messages to Mobile Devices].
You can publish messages only to topics and endpoints in the same Amazon Web Services Region.
[1]: docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
2083 2084 2085 2086 |
# File 'lib/aws-sdk-sns/client.rb', line 2083 def publish(params = {}, = {}) req = build_request(:publish, params) req.send_request() end |
#publish_batch(params = {}) ⇒ Types::PublishBatchResponse
Publishes up to 10 messages to the specified topic in a single batch. This is a batch version of the ‘Publish` API. If you try to send more than 10 messages in a single batch request, you will receive a `TooManyEntriesInBatchRequest` exception.
For FIFO topics, multiple messages within a single batch are published in the order they are sent, and messages are deduplicated within the batch and across batches for five minutes.
The result of publishing each message is reported individually in the response. Because the batch request can result in a combination of successful and unsuccessful actions, you should check for batch errors even when the call returns an HTTP status code of 200.
The maximum allowed individual message size and the maximum total payload size (the sum of the individual lengths of all of the batched messages) are both 256 KB (262,144 bytes).
The ‘PublishBatch` API can send up to 10 messages at a time. If you attempt to send more than 10 messages in one request, you will encounter a `TooManyEntriesInBatchRequest` exception. In such cases, split your messages into multiple requests, each containing no more than 10 messages.
Some actions take lists of parameters. These lists are specified using the ‘param.n` notation. Values of `n` are integers starting from 1. For example, a parameter list with two elements looks like this:
‘&AttributeName.1=first`
‘&AttributeName.2=second`
If you send a batch message to a topic, Amazon SNS publishes the batch message to each endpoint that is subscribed to the topic. The format of the batch message depends on the notification protocol for each subscribed endpoint.
When a ‘messageId` is returned, the batch message is saved, and Amazon SNS immediately delivers the message to subscribers.
2180 2181 2182 2183 |
# File 'lib/aws-sdk-sns/client.rb', line 2180 def publish_batch(params = {}, = {}) req = build_request(:publish_batch, params) req.send_request() end |
#put_data_protection_policy(params = {}) ⇒ Struct
Adds or updates an inline policy document that is stored in the specified Amazon SNS topic.
2219 2220 2221 2222 |
# File 'lib/aws-sdk-sns/client.rb', line 2219 def put_data_protection_policy(params = {}, = {}) req = build_request(:put_data_protection_policy, params) req.send_request() end |
#remove_permission(params = {}) ⇒ Struct
Removes a statement from a topic’s access control policy.
<note markdown=“1”> To remove the ability to change topic permissions, you must deny permissions to the ‘AddPermission`, `RemovePermission`, and `SetTopicAttributes` actions in your IAM policy.
</note>
2251 2252 2253 2254 |
# File 'lib/aws-sdk-sns/client.rb', line 2251 def (params = {}, = {}) req = build_request(:remove_permission, params) req.send_request() end |
#set_endpoint_attributes(params = {}) ⇒ Struct
Sets the attributes for an endpoint for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS. For more information, see [Using Amazon SNS Mobile Push Notifications].
2301 2302 2303 2304 |
# File 'lib/aws-sdk-sns/client.rb', line 2301 def set_endpoint_attributes(params = {}, = {}) req = build_request(:set_endpoint_attributes, params) req.send_request() end |
#set_platform_application_attributes(params = {}) ⇒ Struct
Sets the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see [Using Amazon SNS Mobile Push Notifications]. For information on configuring attributes for message delivery status, see [Using Amazon SNS Application Attributes for Message Delivery Status].
[1]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html [2]: docs.aws.amazon.com/sns/latest/dg/sns-msg-status.html
2410 2411 2412 2413 |
# File 'lib/aws-sdk-sns/client.rb', line 2410 def set_platform_application_attributes(params = {}, = {}) req = build_request(:set_platform_application_attributes, params) req.send_request() end |
#set_sms_attributes(params = {}) ⇒ Struct
Use this request to set the default settings for sending SMS messages and receiving daily SMS usage reports.
You can override some of these settings for a single message when you use the ‘Publish` action with the `MessageAttributes.entry.N` parameter. For more information, see [Publishing to a mobile phone] in the *Amazon SNS Developer Guide*.
<note markdown=“1”> To use this operation, you must grant the Amazon SNS service principal (‘sns.amazonaws.com`) permission to perform the `s3:ListBucket` action.
</note>
[1]: docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
2532 2533 2534 2535 |
# File 'lib/aws-sdk-sns/client.rb', line 2532 def set_sms_attributes(params = {}, = {}) req = build_request(:set_sms_attributes, params) req.send_request() end |
#set_subscription_attributes(params = {}) ⇒ Struct
Allows a subscription owner to set an attribute of the subscription to a new value.
2609 2610 2611 2612 |
# File 'lib/aws-sdk-sns/client.rb', line 2609 def set_subscription_attributes(params = {}, = {}) req = build_request(:set_subscription_attributes, params) req.send_request() end |
#set_topic_attributes(params = {}) ⇒ Struct
Allows a topic owner to set an attribute of the topic to a new value.
<note markdown=“1”> To remove the ability to change topic permissions, you must deny permissions to the ‘AddPermission`, `RemovePermission`, and `SetTopicAttributes` actions in your IAM policy.
</note>
2812 2813 2814 2815 |
# File 'lib/aws-sdk-sns/client.rb', line 2812 def set_topic_attributes(params = {}, = {}) req = build_request(:set_topic_attributes, params) req.send_request() end |
#subscribe(params = {}) ⇒ Types::SubscribeResponse
Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same Amazon Web Services account, the endpoint owner must run the ‘ConfirmSubscription` action to confirm the subscription.
You call the ‘ConfirmSubscription` action with the token from the subscription response. Confirmation tokens are valid for two days.
This action is throttled at 100 transactions per second (TPS).
2992 2993 2994 2995 |
# File 'lib/aws-sdk-sns/client.rb', line 2992 def subscribe(params = {}, = {}) req = build_request(:subscribe, params) req.send_request() end |
#tag_resource(params = {}) ⇒ Struct
Add tags to the specified Amazon SNS topic. For an overview, see
- Amazon SNS Tags][1
-
in the *Amazon SNS Developer Guide*.
When you use topic tags, keep the following guidelines in mind:
-
Adding more than 50 tags to a topic isn’t recommended.
-
Tags don’t have any semantic meaning. Amazon SNS interprets tags as character strings.
-
Tags are case-sensitive.
-
A new tag with a key identical to that of an existing tag overwrites the existing tag.
-
Tagging actions are limited to 10 TPS per Amazon Web Services account, per Amazon Web Services Region. If your application requires a higher throughput, file a [technical support request].
[1]: docs.aws.amazon.com/sns/latest/dg/sns-tags.html [2]: console.aws.amazon.com/support/home#/case/create?issueType=technical
3046 3047 3048 3049 |
# File 'lib/aws-sdk-sns/client.rb', line 3046 def tag_resource(params = {}, = {}) req = build_request(:tag_resource, params) req.send_request() end |
#unsubscribe(params = {}) ⇒ Struct
Deletes a subscription. If the subscription requires authentication for deletion, only the owner of the subscription or the topic’s owner can unsubscribe, and an Amazon Web Services signature is required. If the ‘Unsubscribe` call does not require authentication and the requester is not the subscription owner, a final cancellation message is delivered to the endpoint, so that the endpoint owner can easily resubscribe to the topic if the `Unsubscribe` request was unintended.
This action is throttled at 100 transactions per second (TPS).
3076 3077 3078 3079 |
# File 'lib/aws-sdk-sns/client.rb', line 3076 def unsubscribe(params = {}, = {}) req = build_request(:unsubscribe, params) req.send_request() end |
#untag_resource(params = {}) ⇒ Struct
Remove tags from the specified Amazon SNS topic. For an overview, see
- Amazon SNS Tags][1
-
in the *Amazon SNS Developer Guide*.
3107 3108 3109 3110 |
# File 'lib/aws-sdk-sns/client.rb', line 3107 def untag_resource(params = {}, = {}) req = build_request(:untag_resource, params) req.send_request() end |
#verify_sms_sandbox_phone_number(params = {}) ⇒ Struct
Verifies a destination phone number with a one-time password (OTP) for the calling Amazon Web Services account.
When you start using Amazon SNS to send SMS messages, your Amazon Web Services account is in the *SMS sandbox*. The SMS sandbox provides a safe environment for you to try Amazon SNS features without risking your reputation as an SMS sender. While your Amazon Web Services account is in the SMS sandbox, you can use all of the features of Amazon SNS. However, you can send SMS messages only to verified destination phone numbers. For more information, including how to move out of the sandbox to send messages without restrictions, see [SMS sandbox] in the *Amazon SNS Developer Guide*.
3149 3150 3151 3152 |
# File 'lib/aws-sdk-sns/client.rb', line 3149 def verify_sms_sandbox_phone_number(params = {}, = {}) req = build_request(:verify_sms_sandbox_phone_number, params) req.send_request() end |
#waiter_names ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
3178 3179 3180 |
# File 'lib/aws-sdk-sns/client.rb', line 3178 def waiter_names [] end |