public interface AmazonSNS
Amazon Simple Notification Service (Amazon SNS) is a web service that enables you to build distributed web-enabled applications. Applications can use Amazon SNS to easily push real-time notification messages to interested subscribers over multiple delivery protocols. For more information about this product see http://aws.amazon.com/sns. For detailed information about Amazon SNS features and their associated API calls, see the Amazon SNS Developer Guide.
We also provide SDKs that enable you to access Amazon SNS from your preferred programming language. The SDKs contain functionality that automatically takes care of tasks such as: cryptographically signing your service requests, retrying requests, and handling error responses. For a list of available SDKs, go to Tools for Amazon Web Services.
Modifier and Type | Method and Description |
---|---|
void |
addPermission(AddPermissionRequest addPermissionRequest)
Adds a statement to a topic's access control policy, granting access for
the specified AWS accounts to the specified actions.
|
void |
addPermission(java.lang.String topicArn,
java.lang.String label,
java.util.List<java.lang.String> aWSAccountIds,
java.util.List<java.lang.String> actionNames)
Adds a statement to a topic's access control policy, granting access for
the specified AWS accounts to the specified actions.
|
CheckIfPhoneNumberIsOptedOutResult |
checkIfPhoneNumberIsOptedOut(CheckIfPhoneNumberIsOptedOutRequest checkIfPhoneNumberIsOptedOutRequest)
Accepts a phone number and indicates whether the phone holder has opted
out of receiving SMS messages from your account.
|
ConfirmSubscriptionResult |
confirmSubscription(ConfirmSubscriptionRequest confirmSubscriptionRequest)
Verifies an endpoint owner's intent to receive messages by validating the
token sent to the endpoint by an earlier
Subscribe action. |
ConfirmSubscriptionResult |
confirmSubscription(java.lang.String topicArn,
java.lang.String token)
Verifies an endpoint owner's intent to receive messages by validating the
token sent to the endpoint by an earlier
Subscribe action. |
ConfirmSubscriptionResult |
confirmSubscription(java.lang.String topicArn,
java.lang.String token,
java.lang.String authenticateOnUnsubscribe)
Verifies an endpoint owner's intent to receive messages by validating the
token sent to the endpoint by an earlier
Subscribe action. |
CreatePlatformApplicationResult |
createPlatformApplication(CreatePlatformApplicationRequest createPlatformApplicationRequest)
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.
|
CreatePlatformEndpointResult |
createPlatformEndpoint(CreatePlatformEndpointRequest createPlatformEndpointRequest)
Creates an endpoint for a device and mobile app on one of the supported
push notification services, such as GCM and APNS.
|
CreateTopicResult |
createTopic(CreateTopicRequest createTopicRequest)
Creates a topic to which notifications can be published.
|
CreateTopicResult |
createTopic(java.lang.String name)
Creates a topic to which notifications can be published.
|
void |
deleteEndpoint(DeleteEndpointRequest deleteEndpointRequest)
Deletes the endpoint for a device and mobile app from Amazon SNS.
|
void |
deletePlatformApplication(DeletePlatformApplicationRequest deletePlatformApplicationRequest)
Deletes a platform application object for one of the supported push
notification services, such as APNS and GCM.
|
void |
deleteTopic(DeleteTopicRequest deleteTopicRequest)
Deletes a topic and all its subscriptions.
|
void |
deleteTopic(java.lang.String topicArn)
Deletes a topic and all its subscriptions.
|
ResponseMetadata |
getCachedResponseMetadata(AmazonWebServiceRequest request)
Returns additional metadata for a previously executed successful request,
typically used for debugging issues where a service isn't acting as
expected.
|
GetEndpointAttributesResult |
getEndpointAttributes(GetEndpointAttributesRequest getEndpointAttributesRequest)
Retrieves the endpoint attributes for a device on one of the supported
push notification services, such as GCM and APNS.
|
GetPlatformApplicationAttributesResult |
getPlatformApplicationAttributes(GetPlatformApplicationAttributesRequest getPlatformApplicationAttributesRequest)
Retrieves the attributes of the platform application object for the
supported push notification services, such as APNS and GCM.
|
GetSMSAttributesResult |
getSMSAttributes(GetSMSAttributesRequest getSMSAttributesRequest)
Returns the settings for sending SMS messages from your account.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(GetSubscriptionAttributesRequest getSubscriptionAttributesRequest)
Returns all of the properties of a subscription.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(java.lang.String subscriptionArn)
Returns all of the properties of a subscription.
|
GetTopicAttributesResult |
getTopicAttributes(GetTopicAttributesRequest getTopicAttributesRequest)
Returns all of the properties of a topic.
|
GetTopicAttributesResult |
getTopicAttributes(java.lang.String topicArn)
Returns all of the properties of a topic.
|
ListEndpointsByPlatformApplicationResult |
listEndpointsByPlatformApplication(ListEndpointsByPlatformApplicationRequest listEndpointsByPlatformApplicationRequest)
Lists the endpoints and endpoint attributes for devices in a supported
push notification service, such as GCM and APNS.
|
ListPhoneNumbersOptedOutResult |
listPhoneNumbersOptedOut(ListPhoneNumbersOptedOutRequest listPhoneNumbersOptedOutRequest)
Returns a list of phone numbers that are opted out, meaning you cannot
send SMS messages to them.
|
ListPlatformApplicationsResult |
listPlatformApplications()
Lists the platform application objects for the supported push
notification services, such as APNS and GCM.
|
ListPlatformApplicationsResult |
listPlatformApplications(ListPlatformApplicationsRequest listPlatformApplicationsRequest)
Lists the platform application objects for the supported push
notification services, such as APNS and GCM.
|
ListSubscriptionsResult |
listSubscriptions()
Returns a list of the requester's subscriptions.
|
ListSubscriptionsResult |
listSubscriptions(ListSubscriptionsRequest listSubscriptionsRequest)
Returns a list of the requester's subscriptions.
|
ListSubscriptionsResult |
listSubscriptions(java.lang.String nextToken)
Returns a list of the requester's subscriptions.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(ListSubscriptionsByTopicRequest listSubscriptionsByTopicRequest)
Returns a list of the subscriptions to a specific topic.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(java.lang.String topicArn)
Returns a list of the subscriptions to a specific topic.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(java.lang.String topicArn,
java.lang.String nextToken)
Returns a list of the subscriptions to a specific topic.
|
ListTopicsResult |
listTopics()
Returns a list of the requester's topics.
|
ListTopicsResult |
listTopics(ListTopicsRequest listTopicsRequest)
Returns a list of the requester's topics.
|
ListTopicsResult |
listTopics(java.lang.String nextToken)
Returns a list of the requester's topics.
|
OptInPhoneNumberResult |
optInPhoneNumber(OptInPhoneNumberRequest optInPhoneNumberRequest)
Use this request to opt in a phone number that is opted out, which
enables you to resume sending SMS messages to the number.
|
PublishResult |
publish(PublishRequest publishRequest)
Sends a message to all of a topic's subscribed endpoints.
|
PublishResult |
publish(java.lang.String topicArn,
java.lang.String message)
Sends a message to all of a topic's subscribed endpoints.
|
PublishResult |
publish(java.lang.String topicArn,
java.lang.String message,
java.lang.String subject)
Sends a message to all of a topic's subscribed endpoints.
|
void |
removePermission(RemovePermissionRequest removePermissionRequest)
Removes a statement from a topic's access control policy.
|
void |
removePermission(java.lang.String topicArn,
java.lang.String label)
Removes a statement from a topic's access control policy.
|
void |
setEndpoint(java.lang.String endpoint)
Overrides the default endpoint for this client
("https://sns.us-east-1.amazonaws.com").
|
void |
setEndpointAttributes(SetEndpointAttributesRequest setEndpointAttributesRequest)
Sets the attributes for an endpoint for a device on one of the supported
push notification services, such as GCM and APNS.
|
void |
setPlatformApplicationAttributes(SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest)
Sets the attributes of the platform application object for the supported
push notification services, such as APNS and GCM.
|
void |
setRegion(Region region)
An alternative to
setEndpoint(String) , sets the
regional endpoint for this client's service calls. |
SetSMSAttributesResult |
setSMSAttributes(SetSMSAttributesRequest setSMSAttributesRequest)
Use this request to set the default settings for sending SMS messages and
receiving daily SMS usage reports.
|
void |
setSubscriptionAttributes(SetSubscriptionAttributesRequest setSubscriptionAttributesRequest)
Allows a subscription owner to set an attribute of the topic to a new
value.
|
void |
setSubscriptionAttributes(java.lang.String subscriptionArn,
java.lang.String attributeName,
java.lang.String attributeValue)
Allows a subscription owner to set an attribute of the topic to a new
value.
|
void |
setTopicAttributes(SetTopicAttributesRequest setTopicAttributesRequest)
Allows a topic owner to set an attribute of the topic to a new value.
|
void |
setTopicAttributes(java.lang.String topicArn,
java.lang.String attributeName,
java.lang.String attributeValue)
Allows a topic owner to set an attribute of the topic to a new value.
|
void |
shutdown()
Shuts down this client object, releasing any resources that might be held
open.
|
SubscribeResult |
subscribe(java.lang.String topicArn,
java.lang.String protocol,
java.lang.String endpoint)
Prepares to subscribe an endpoint by sending the endpoint a confirmation
message.
|
SubscribeResult |
subscribe(SubscribeRequest subscribeRequest)
Prepares to subscribe an endpoint by sending the endpoint a confirmation
message.
|
void |
unsubscribe(java.lang.String subscriptionArn)
Deletes a subscription.
|
void |
unsubscribe(UnsubscribeRequest unsubscribeRequest)
Deletes a subscription.
|
void setEndpoint(java.lang.String endpoint) throws java.lang.IllegalArgumentException
Callers can pass in just the endpoint (ex: "sns.us-east-1.amazonaws.com")
or a full URL, including the protocol (ex:
"https://sns.us-east-1.amazonaws.com"). If the protocol is not specified
here, the default protocol from this client's ClientConfiguration
will be used, which by default is HTTPS.
For more information on using AWS regions with the AWS SDK for Java, and a complete list of all available endpoints for all AWS services, see: http://developer.amazonwebservices.com/connect/entry.jspa?externalID= 3912
This method is not threadsafe. An endpoint should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
endpoint
- The endpoint (ex: "sns.us-east-1.amazonaws.com") or a
full URL, including the protocol (ex:
"https://sns.us-east-1.amazonaws.com") of the region specific
AWS endpoint this client will communicate with.java.lang.IllegalArgumentException
- If any problems are detected with the
specified endpoint.void setRegion(Region region) throws java.lang.IllegalArgumentException
setEndpoint(String)
, sets the
regional endpoint for this client's service calls. Callers can use this
method to control which AWS region they want to work with.
By default, all service endpoints in all regions use the https protocol.
To use http instead, specify it in the ClientConfiguration
supplied at construction.
This method is not threadsafe. A region should be configured when the client is created and before any service requests are made. Changing it afterwards creates inevitable race conditions for any service requests in transit or retrying.
region
- The region this client will communicate with. See
Region.getRegion(com.amazonaws.regions.Regions)
for
accessing a given region.java.lang.IllegalArgumentException
- If the given region is null,
or if this service isn't available in the given region. See
Region.isServiceSupported(String)
Region.getRegion(com.amazonaws.regions.Regions)
,
Region.createClient(Class,
com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration)
void addPermission(AddPermissionRequest addPermissionRequest) throws AmazonClientException, AmazonServiceException
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
addPermissionRequest
- InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.CheckIfPhoneNumberIsOptedOutResult checkIfPhoneNumberIsOptedOut(CheckIfPhoneNumberIsOptedOutRequest checkIfPhoneNumberIsOptedOutRequest) throws AmazonClientException, AmazonServiceException
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.
checkIfPhoneNumberIsOptedOutRequest
-
The input for the CheckIfPhoneNumberIsOptedOut
action.
ThrottledException
InternalErrorException
InvalidParameterException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ConfirmSubscriptionResult confirmSubscription(ConfirmSubscriptionRequest confirmSubscriptionRequest) throws AmazonClientException, AmazonServiceException
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".
confirmSubscriptionRequest
- Input for ConfirmSubscription action.
SubscriptionLimitExceededException
InvalidParameterException
NotFoundException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.CreatePlatformApplicationResult createPlatformApplication(CreatePlatformApplicationRequest createPlatformApplicationRequest) throws AmazonClientException, AmazonServiceException
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.
createPlatformApplicationRequest
- Input for CreatePlatformApplication action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.CreatePlatformEndpointResult createPlatformEndpoint(CreatePlatformEndpointRequest createPlatformEndpointRequest) throws AmazonClientException, AmazonServiceException
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.
createPlatformEndpointRequest
- Input for CreatePlatformEndpoint action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.CreateTopicResult createTopic(CreateTopicRequest createTopicRequest) throws AmazonClientException, AmazonServiceException
Creates a topic to which notifications can be published. Users can create at most 100,000 topics. For more information, see http://aws.amazon.com/sns. 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.
createTopicRequest
- Input for CreateTopic action.
InvalidParameterException
TopicLimitExceededException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void deleteEndpoint(DeleteEndpointRequest deleteEndpointRequest) throws AmazonClientException, AmazonServiceException
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.
deleteEndpointRequest
- Input for DeleteEndpoint action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void deletePlatformApplication(DeletePlatformApplicationRequest deletePlatformApplicationRequest) throws AmazonClientException, AmazonServiceException
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.
deletePlatformApplicationRequest
- Input for DeletePlatformApplication action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void deleteTopic(DeleteTopicRequest deleteTopicRequest) throws AmazonClientException, AmazonServiceException
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.
deleteTopicRequest
- InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetEndpointAttributesResult getEndpointAttributes(GetEndpointAttributesRequest getEndpointAttributesRequest) throws AmazonClientException, AmazonServiceException
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.
getEndpointAttributesRequest
- Input for GetEndpointAttributes action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetPlatformApplicationAttributesResult getPlatformApplicationAttributes(GetPlatformApplicationAttributesRequest getPlatformApplicationAttributesRequest) throws AmazonClientException, AmazonServiceException
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.
getPlatformApplicationAttributesRequest
- Input for GetPlatformApplicationAttributes action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetSMSAttributesResult getSMSAttributes(GetSMSAttributesRequest getSMSAttributesRequest) throws AmazonClientException, AmazonServiceException
Returns the settings for sending SMS messages from your account.
These settings are set with the SetSMSAttributes
action.
getSMSAttributesRequest
-
The input for the GetSMSAttributes
request.
ThrottledException
InternalErrorException
InvalidParameterException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetSubscriptionAttributesResult getSubscriptionAttributes(GetSubscriptionAttributesRequest getSubscriptionAttributesRequest) throws AmazonClientException, AmazonServiceException
Returns all of the properties of a subscription.
getSubscriptionAttributesRequest
- Input for GetSubscriptionAttributes.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetTopicAttributesResult getTopicAttributes(GetTopicAttributesRequest getTopicAttributesRequest) throws AmazonClientException, AmazonServiceException
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
getTopicAttributesRequest
- Input for GetTopicAttributes action.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListEndpointsByPlatformApplicationResult listEndpointsByPlatformApplication(ListEndpointsByPlatformApplicationRequest listEndpointsByPlatformApplicationRequest) throws AmazonClientException, AmazonServiceException
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.
listEndpointsByPlatformApplicationRequest
- Input for ListEndpointsByPlatformApplication action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListPhoneNumbersOptedOutResult listPhoneNumbersOptedOut(ListPhoneNumbersOptedOutRequest listPhoneNumbersOptedOutRequest) throws AmazonClientException, AmazonServiceException
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.
listPhoneNumbersOptedOutRequest
-
The input for the ListPhoneNumbersOptedOut
action.
ThrottledException
InternalErrorException
InvalidParameterException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListPlatformApplicationsResult listPlatformApplications(ListPlatformApplicationsRequest listPlatformApplicationsRequest) throws AmazonClientException, AmazonServiceException
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.
listPlatformApplicationsRequest
- Input for ListPlatformApplications action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsResult listSubscriptions(ListSubscriptionsRequest listSubscriptionsRequest) throws AmazonClientException, AmazonServiceException
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.
listSubscriptionsRequest
- Input for ListSubscriptions action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsByTopicResult listSubscriptionsByTopic(ListSubscriptionsByTopicRequest listSubscriptionsByTopicRequest) throws AmazonClientException, AmazonServiceException
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.
listSubscriptionsByTopicRequest
- Input for ListSubscriptionsByTopic action.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListTopicsResult listTopics(ListTopicsRequest listTopicsRequest) throws AmazonClientException, AmazonServiceException
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.
listTopicsRequest
- InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.OptInPhoneNumberResult optInPhoneNumber(OptInPhoneNumberRequest optInPhoneNumberRequest) throws AmazonClientException, AmazonServiceException
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.
optInPhoneNumberRequest
- Input for the OptInPhoneNumber action.
ThrottledException
InternalErrorException
InvalidParameterException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.PublishResult publish(PublishRequest publishRequest) throws AmazonClientException, AmazonServiceException
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. The second example below shows a request and response for
publishing to a mobile endpoint.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
publishRequest
- Input for Publish action.
InvalidParameterException
InvalidParameterValueException
InternalErrorException
NotFoundException
EndpointDisabledException
PlatformApplicationDisabledException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void removePermission(RemovePermissionRequest removePermissionRequest) throws AmazonClientException, AmazonServiceException
Removes a statement from a topic's access control policy.
removePermissionRequest
- Input for RemovePermission action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setEndpointAttributes(SetEndpointAttributesRequest setEndpointAttributesRequest) throws AmazonClientException, AmazonServiceException
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.
setEndpointAttributesRequest
- Input for SetEndpointAttributes action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setPlatformApplicationAttributes(SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest) throws AmazonClientException, AmazonServiceException
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.
setPlatformApplicationAttributesRequest
- Input for SetPlatformApplicationAttributes action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.SetSMSAttributesResult setSMSAttributes(SetSMSAttributesRequest setSMSAttributesRequest) throws AmazonClientException, AmazonServiceException
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.
setSMSAttributesRequest
- The input for the SetSMSAttributes action.
InvalidParameterException
ThrottledException
InternalErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setSubscriptionAttributes(SetSubscriptionAttributesRequest setSubscriptionAttributesRequest) throws AmazonClientException, AmazonServiceException
Allows a subscription owner to set an attribute of the topic to a new value.
setSubscriptionAttributesRequest
- Input for SetSubscriptionAttributes action.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setTopicAttributes(SetTopicAttributesRequest setTopicAttributesRequest) throws AmazonClientException, AmazonServiceException
Allows a topic owner to set an attribute of the topic to a new value.
setTopicAttributesRequest
- Input for SetTopicAttributes action.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.SubscribeResult subscribe(SubscribeRequest subscribeRequest) throws AmazonClientException, AmazonServiceException
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.
subscribeRequest
- Input for Subscribe action.
SubscriptionLimitExceededException
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void unsubscribe(UnsubscribeRequest unsubscribeRequest) throws AmazonClientException, AmazonServiceException
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.
unsubscribeRequest
- Input for Unsubscribe action.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setSubscriptionAttributes(java.lang.String subscriptionArn, java.lang.String attributeName, java.lang.String attributeValue) throws AmazonClientException, AmazonServiceException
Allows a subscription owner to set an attribute of the topic to a new value.
subscriptionArn
- The ARN of the subscription to modify.
attributeName
- The name of the attribute you want to set. Only a subset of the subscriptions attributes are mutable.
Valid values: DeliveryPolicy
|
RawMessageDelivery
attributeValue
- The new value for the attribute in JSON format.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetSubscriptionAttributesResult getSubscriptionAttributes(java.lang.String subscriptionArn) throws AmazonClientException, AmazonServiceException
Returns all of the properties of a subscription.
subscriptionArn
- The ARN of the subscription whose properties you want to get.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.SubscribeResult subscribe(java.lang.String topicArn, java.lang.String protocol, java.lang.String endpoint) throws AmazonClientException, AmazonServiceException
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.
topicArn
- The ARN of the topic you want to subscribe to.
protocol
- The protocol you want to use. Supported protocols include:
http
-- delivery of JSON-encoded message via HTTP
POST
https
-- delivery of JSON-encoded message via
HTTPS POST
email
-- delivery of message via SMTP
email-json
-- delivery of JSON-encoded message
via SMTP
sms
-- delivery of message via SMS
sqs
-- delivery of JSON-encoded message to an
Amazon SQS queue
application
-- delivery of JSON-encoded message
to an EndpointArn for a mobile app and device.
lambda
-- delivery of JSON-encoded message to an
AWS Lambda function.
endpoint
- The endpoint that you want to receive notifications. Endpoints vary by protocol:
For the http
protocol, the endpoint is an URL
beginning with "http://"
For the https
protocol, the endpoint is a URL
beginning with "https://"
For the email
protocol, the endpoint is an email
address
For the email-json
protocol, the endpoint is an
email address
For the sms
protocol, the endpoint is a phone
number of an SMS-enabled device
For the sqs
protocol, the endpoint is the ARN of
an Amazon SQS queue
For the application
protocol, the endpoint is the
EndpointArn of a mobile app and device.
For the lambda
protocol, the endpoint is the ARN
of an AWS Lambda function.
SubscriptionLimitExceededException
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void addPermission(java.lang.String topicArn, java.lang.String label, java.util.List<java.lang.String> aWSAccountIds, java.util.List<java.lang.String> actionNames) throws AmazonClientException, AmazonServiceException
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
topicArn
- The ARN of the topic whose access control policy you wish to modify.
label
- A unique identifier for the new policy statement.
aWSAccountIds
- The AWS account IDs of the users (principals) who will be given access to the specified actions. The users must have AWS accounts, but do not need to be signed up for this service.
actionNames
- The action you want to allow for the specified principal(s).
Valid values: any Amazon SNS action name.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.GetTopicAttributesResult getTopicAttributes(java.lang.String topicArn) throws AmazonClientException, AmazonServiceException
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
topicArn
- The ARN of the topic whose properties you want to get.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void removePermission(java.lang.String topicArn, java.lang.String label) throws AmazonClientException, AmazonServiceException
Removes a statement from a topic's access control policy.
topicArn
- The ARN of the topic whose access control policy you wish to modify.
label
- The unique label of the statement you want to remove.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListTopicsResult listTopics() throws AmazonClientException, AmazonServiceException
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.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListTopicsResult listTopics(java.lang.String nextToken) throws AmazonClientException, AmazonServiceException
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.
nextToken
-
Token returned by the previous ListTopics
request.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ConfirmSubscriptionResult confirmSubscription(java.lang.String topicArn, java.lang.String token, java.lang.String authenticateOnUnsubscribe) throws AmazonClientException, AmazonServiceException
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".
topicArn
- The ARN of the topic for which you wish to confirm a subscription.
token
-
Short-lived token sent to an endpoint during the
Subscribe
action.
authenticateOnUnsubscribe
-
Disallows unauthenticated unsubscribes of the subscription. If
the value of this parameter is true
and the
request has an AWS signature, then only the topic owner and
the subscription owner can unsubscribe the endpoint. The
unsubscribe action requires AWS authentication.
SubscriptionLimitExceededException
InvalidParameterException
NotFoundException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ConfirmSubscriptionResult confirmSubscription(java.lang.String topicArn, java.lang.String token) throws AmazonClientException, AmazonServiceException
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".
topicArn
- The ARN of the topic for which you wish to confirm a subscription.
token
-
Short-lived token sent to an endpoint during the
Subscribe
action.
SubscriptionLimitExceededException
InvalidParameterException
NotFoundException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void setTopicAttributes(java.lang.String topicArn, java.lang.String attributeName, java.lang.String attributeValue) throws AmazonClientException, AmazonServiceException
Allows a topic owner to set an attribute of the topic to a new value.
topicArn
- The ARN of the topic to modify.
attributeName
- The name of the attribute you want to set. Only a subset of the topic's attributes are mutable.
Valid values: Policy
| DisplayName
|
DeliveryPolicy
attributeValue
- The new value for the attribute.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.CreateTopicResult createTopic(java.lang.String name) throws AmazonClientException, AmazonServiceException
Creates a topic to which notifications can be published. Users can create at most 100,000 topics. For more information, see http://aws.amazon.com/sns. 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.
name
- The name of the topic you want to create.
Constraints: Topic names must be made up of only uppercase and lowercase ASCII letters, numbers, underscores, and hyphens, and must be between 1 and 256 characters long.
InvalidParameterException
TopicLimitExceededException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void deleteTopic(java.lang.String topicArn) throws AmazonClientException, AmazonServiceException
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.
topicArn
- The ARN of the topic you want to delete.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void unsubscribe(java.lang.String subscriptionArn) throws AmazonClientException, AmazonServiceException
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.
subscriptionArn
- The ARN of the subscription to be deleted.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
NotFoundException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.PublishResult publish(java.lang.String topicArn, java.lang.String message) throws AmazonClientException, AmazonServiceException
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. The second example below shows a request and response for
publishing to a mobile endpoint.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
topicArn
- The topic you want to publish to.
If you don't specify a value for the TopicArn
parameter, you must specify a value for the
PhoneNumber
or TargetArn
parameters.
message
- The message you want to send to the topic.
If you want to send the same message to all transport protocols, include the text of the message as a String value.
If you want to send different messages for each transport
protocol, set the value of the MessageStructure
parameter to json
and use a JSON object for the
Message
parameter. See the Examples section for
the format of the JSON object.
Constraints: Messages must be UTF-8 encoded strings at most 256 KB in size (262144 bytes, not 262144 characters).
JSON-specific constraints:
Keys in the JSON object that correspond to supported transport protocols must have simple JSON string values.
The values will be parsed (unescaped) before they are used in outgoing messages.
Outbound notifications are JSON encoded (meaning that the characters will be reescaped for sending).
Values have a minimum length of 0 (the empty string, "", is allowed).
Values have a maximum length bounded by the overall message size (so, including multiple protocols may limit message sizes).
Non-string values will cause the key to be ignored.
Keys that do not correspond to supported transport protocols are ignored.
Duplicate keys are not allowed.
Failure to parse or validate any key or value in the message
will cause the Publish
call to return an error
(no partial delivery).
InvalidParameterException
InvalidParameterValueException
InternalErrorException
NotFoundException
EndpointDisabledException
PlatformApplicationDisabledException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.PublishResult publish(java.lang.String topicArn, java.lang.String message, java.lang.String subject) throws AmazonClientException, AmazonServiceException
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. The second example below shows a request and response for
publishing to a mobile endpoint.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
topicArn
- The topic you want to publish to.
If you don't specify a value for the TopicArn
parameter, you must specify a value for the
PhoneNumber
or TargetArn
parameters.
message
- The message you want to send to the topic.
If you want to send the same message to all transport protocols, include the text of the message as a String value.
If you want to send different messages for each transport
protocol, set the value of the MessageStructure
parameter to json
and use a JSON object for the
Message
parameter. See the Examples section for
the format of the JSON object.
Constraints: Messages must be UTF-8 encoded strings at most 256 KB in size (262144 bytes, not 262144 characters).
JSON-specific constraints:
Keys in the JSON object that correspond to supported transport protocols must have simple JSON string values.
The values will be parsed (unescaped) before they are used in outgoing messages.
Outbound notifications are JSON encoded (meaning that the characters will be reescaped for sending).
Values have a minimum length of 0 (the empty string, "", is allowed).
Values have a maximum length bounded by the overall message size (so, including multiple protocols may limit message sizes).
Non-string values will cause the key to be ignored.
Keys that do not correspond to supported transport protocols are ignored.
Duplicate keys are not allowed.
Failure to parse or validate any key or value in the message
will cause the Publish
call to return an error
(no partial delivery).
subject
- Optional parameter to be used as the "Subject" line when the message is delivered to email endpoints. This field will also be included, if present, in the standard JSON messages delivered to other endpoints.
Constraints: Subjects must be ASCII text that begins with a letter, number, or punctuation mark; must not include line breaks or control characters; and must be less than 100 characters long.
InvalidParameterException
InvalidParameterValueException
InternalErrorException
NotFoundException
EndpointDisabledException
PlatformApplicationDisabledException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsResult listSubscriptions() throws AmazonClientException, AmazonServiceException
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.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsResult listSubscriptions(java.lang.String nextToken) throws AmazonClientException, AmazonServiceException
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.
nextToken
-
Token returned by the previous ListSubscriptions
request.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsByTopicResult listSubscriptionsByTopic(java.lang.String topicArn) throws AmazonClientException, AmazonServiceException
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.
topicArn
- The ARN of the topic for which you wish to find subscriptions.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListSubscriptionsByTopicResult listSubscriptionsByTopic(java.lang.String topicArn, java.lang.String nextToken) throws AmazonClientException, AmazonServiceException
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.
topicArn
- The ARN of the topic for which you wish to find subscriptions.
nextToken
-
Token returned by the previous
ListSubscriptionsByTopic
request.
InvalidParameterException
InternalErrorException
NotFoundException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.ListPlatformApplicationsResult listPlatformApplications() throws AmazonClientException, AmazonServiceException
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.
InvalidParameterException
InternalErrorException
AuthorizationErrorException
AmazonClientException
- If any internal errors are encountered
inside the client while attempting to make the request or
handle the response. For example if a network connection is
not available.AmazonServiceException
- If an error response is returned by Amazon
Simple Notification Service indicating either a problem with
the data in the request, or a server side issue.void shutdown()
ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request)
Response metadata is only cached for a limited period of time, so if you need to access this extra diagnostic information for an executed request, you should use this method to retrieve it as soon as possible after executing a request.
request
- The originally executed request.Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.