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
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 AWS 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 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, 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 and APNS.
-
#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.
-
#delete_topic(params = {}) ⇒ Struct
Deletes a topic and all its subscriptions.
-
#get_endpoint_attributes(params = {}) ⇒ Types::GetEndpointAttributesResponse
Retrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM 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.
-
#get_sms_attributes(params = {}) ⇒ Types::GetSMSAttributesResponse
Returns the settings for sending SMS messages from your account.
-
#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 and APNS.
-
#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.
-
#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_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 all of a topic’s subscribed endpoints.
-
#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 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.
-
#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 topic 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
Prepares to subscribe an endpoint by sending the endpoint a confirmation message.
-
#unsubscribe(params = {}) ⇒ Struct
Deletes a subscription.
Class Method Summary collapse
- .errors_module ⇒ Object private
Instance Method Summary collapse
- #build_request(operation_name, params = {}) ⇒ Object private
-
#initialize(*args) ⇒ Client
constructor
A new instance of Client.
- #waiter_names ⇒ Object deprecated private Deprecated.
Constructor Details
#initialize(*args) ⇒ Client
Returns a new instance of Client.
142 143 144 |
# File 'lib/aws-sdk-sns/client.rb', line 142 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.
1608 1609 1610 |
# File 'lib/aws-sdk-sns/client.rb', line 1608 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.
1611 1612 1613 |
# File 'lib/aws-sdk-sns/client.rb', line 1611 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 AWS accounts to the specified actions.
182 183 184 185 |
# File 'lib/aws-sdk-sns/client.rb', line 182 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.
1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 |
# File 'lib/aws-sdk-sns/client.rb', line 1586 def build_request(operation_name, params = {}) handlers = @handlers.for(operation_name) context = Seahorse::Client::RequestContext.new( operation_name: operation_name, operation: config.api.operation(operation_name), client: self, params: params, config: config) context[:gem_name] = 'aws-sdk-sns' context[:gem_version] = '1.0.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 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.
215 216 217 218 |
# File 'lib/aws-sdk-sns/client.rb', line 215 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”.
259 260 261 262 |
# File 'lib/aws-sdk-sns/client.rb', line 259 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, to which devices and mobile apps may register. You must specify PlatformPrincipal and PlatformCredential attributes when using the ‘CreatePlatformApplication` action. The PlatformPrincipal is received from the notification service. For APNS/APNS_SANDBOX, PlatformPrincipal is “SSL certificate”. For GCM, PlatformPrincipal is not applicable. For ADM, PlatformPrincipal is “client id”. The PlatformCredential is also received from the notification service. For WNS, PlatformPrincipal is “Package Security Identifier”. For MPNS, PlatformPrincipal is “TLS certificate”. For Baidu, PlatformPrincipal is “API key”.
For APNS/APNS_SANDBOX, PlatformCredential is “private key”. For GCM, PlatformCredential is “API key”. For ADM, PlatformCredential is “client secret”. For WNS, PlatformCredential is “secret key”. For MPNS, PlatformCredential is “private key”. For Baidu, PlatformCredential is “secret key”. The PlatformApplicationArn that is returned when using ‘CreatePlatformApplication` is then used as an attribute for the `CreatePlatformEndpoint` action. For more information, see [Using Amazon SNS Mobile Push Notifications]. For more information about obtaining the PlatformPrincipal and PlatformCredential for each of the supported push notification services, see [Getting Started with Apple Push Notification Service], [Getting Started with Amazon Device Messaging], [Getting Started with Baidu Cloud Push], [Getting Started with Google Cloud Messaging for Android], [Getting Started with MPNS], or [Getting Started with WNS].
[1]: docs.aws.amazon.com/sns/latest/dg/SNSMobilePush.html [2]: docs.aws.amazon.com/sns/latest/dg/mobile-push-apns.html [3]: docs.aws.amazon.com/sns/latest/dg/mobile-push-adm.html [4]: docs.aws.amazon.com/sns/latest/dg/mobile-push-baidu.html [5]: docs.aws.amazon.com/sns/latest/dg/mobile-push-gcm.html [6]: docs.aws.amazon.com/sns/latest/dg/mobile-push-mpns.html [7]: docs.aws.amazon.com/sns/latest/dg/mobile-push-wns.html
342 343 344 345 |
# File 'lib/aws-sdk-sns/client.rb', line 342 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 and APNS. ‘CreatePlatformEndpoint` requires the PlatformApplicationArn that is returned from `CreatePlatformApplication`. The EndpointArn that is returned when using `CreatePlatformEndpoint` can then be used by the `Publish` action 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
415 416 417 418 |
# File 'lib/aws-sdk-sns/client.rb', line 415 def create_platform_endpoint(params = {}, = {}) req = build_request(:create_platform_endpoint, 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 topics. For more information, see [aws.amazon.com/sns][1]. 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]: aws.amazon.com/sns/
455 456 457 458 |
# File 'lib/aws-sdk-sns/client.rb', line 455 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.
486 487 488 489 |
# File 'lib/aws-sdk-sns/client.rb', line 486 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. For more information, see [Using Amazon SNS Mobile Push Notifications].
514 515 516 517 |
# File 'lib/aws-sdk-sns/client.rb', line 514 def delete_platform_application(params = {}, = {}) req = build_request(:delete_platform_application, 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.
539 540 541 542 |
# File 'lib/aws-sdk-sns/client.rb', line 539 def delete_topic(params = {}, = {}) req = build_request(:delete_topic, 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 and APNS. For more information, see [Using Amazon SNS Mobile Push Notifications].
574 575 576 577 |
# File 'lib/aws-sdk-sns/client.rb', line 574 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. For more information, see [Using Amazon SNS Mobile Push Notifications].
609 610 611 612 |
# File 'lib/aws-sdk-sns/client.rb', line 609 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 account.
These settings are set with the ‘SetSMSAttributes` action.
650 651 652 653 |
# File 'lib/aws-sdk-sns/client.rb', line 650 def get_sms_attributes(params = {}, = {}) req = build_request(:get_sms_attributes, params) req.send_request() end |
#get_subscription_attributes(params = {}) ⇒ Types::GetSubscriptionAttributesResponse
Returns all of the properties of a subscription.
679 680 681 682 |
# File 'lib/aws-sdk-sns/client.rb', line 679 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.
709 710 711 712 |
# File 'lib/aws-sdk-sns/client.rb', line 709 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 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].
762 763 764 765 |
# File 'lib/aws-sdk-sns/client.rb', line 762 def list_endpoints_by_platform_application(params = {}, = {}) req = build_request(:list_endpoints_by_platform_application, 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.
804 805 806 807 |
# File 'lib/aws-sdk-sns/client.rb', line 804 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. 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].
851 852 853 854 |
# File 'lib/aws-sdk-sns/client.rb', line 851 def list_platform_applications(params = {}, = {}) req = build_request(:list_platform_applications, 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.
889 890 891 892 |
# File 'lib/aws-sdk-sns/client.rb', line 889 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.
932 933 934 935 |
# File 'lib/aws-sdk-sns/client.rb', line 932 def list_subscriptions_by_topic(params = {}, = {}) req = build_request(:list_subscriptions_by_topic, 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.
966 967 968 969 |
# File 'lib/aws-sdk-sns/client.rb', line 966 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.
991 992 993 994 |
# File 'lib/aws-sdk-sns/client.rb', line 991 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 all of a topic’s subscribed endpoints. When a ‘messageId` is returned, the message has been saved and Amazon SNS will attempt to deliver it to the topic’s subscribers shortly. The format of the outgoing message to each subscribed endpoint depends on the notification protocol.
To use the ‘Publish` action for sending 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].
[1]: docs.aws.amazon.com/sns/latest/dg/mobile-push-send-custommessage.html
1142 1143 1144 1145 |
# File 'lib/aws-sdk-sns/client.rb', line 1142 def publish(params = {}, = {}) req = build_request(:publish, params) req.send_request() end |
#remove_permission(params = {}) ⇒ Struct
Removes a statement from a topic’s access control policy.
1168 1169 1170 1171 |
# File 'lib/aws-sdk-sns/client.rb', line 1168 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 and APNS. For more information, see [Using Amazon SNS Mobile Push Notifications].
1217 1218 1219 1220 |
# File 'lib/aws-sdk-sns/client.rb', line 1217 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. 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
1288 1289 1290 1291 |
# File 'lib/aws-sdk-sns/client.rb', line 1288 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 [Sending an SMS Message] in the *Amazon SNS Developer Guide*.
[1]: docs.aws.amazon.com/sns/latest/dg/sms_publish-to-phone.html
1401 1402 1403 1404 |
# File 'lib/aws-sdk-sns/client.rb', line 1401 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 topic to a new value.
1435 1436 1437 1438 |
# File 'lib/aws-sdk-sns/client.rb', line 1435 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.
1468 1469 1470 1471 |
# File 'lib/aws-sdk-sns/client.rb', line 1468 def set_topic_attributes(params = {}, = {}) req = build_request(:set_topic_attributes, params) req.send_request() end |
#subscribe(params = {}) ⇒ Types::SubscribeResponse
Prepares to subscribe an endpoint by sending the endpoint a confirmation message. To actually create a subscription, the endpoint owner must call the ‘ConfirmSubscription` action with the token from the confirmation message. Confirmation tokens are valid for three days.
1549 1550 1551 1552 |
# File 'lib/aws-sdk-sns/client.rb', line 1549 def subscribe(params = {}, = {}) req = build_request(:subscribe, 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 AWS 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.
1577 1578 1579 1580 |
# File 'lib/aws-sdk-sns/client.rb', line 1577 def unsubscribe(params = {}, = {}) req = build_request(:unsubscribe, 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.
1601 1602 1603 |
# File 'lib/aws-sdk-sns/client.rb', line 1601 def waiter_names [] end |