public class AmazonSNSClient extends AmazonWebServiceClient implements AmazonSNS
Amazon Simple Notification Service
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 | Field and Description |
---|---|
protected List<com.amazonaws.transform.Unmarshaller<AmazonServiceException,Node>> |
exceptionUnmarshallers
List of exception unmarshallers for all AmazonSNS exceptions.
|
client, clientConfiguration, endpoint, LOGGING_AWS_REQUEST_METRIC, requestHandler2s, timeOffset
Constructor and Description |
---|
AmazonSNSClient()
Constructs a new client to invoke service methods on
AmazonSNS.
|
AmazonSNSClient(AWSCredentials awsCredentials)
Constructs a new client to invoke service methods on
AmazonSNS using the specified AWS account credentials.
|
AmazonSNSClient(AWSCredentials awsCredentials,
ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on
AmazonSNS using the specified AWS account credentials
and client configuration options.
|
AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider)
Constructs a new client to invoke service methods on
AmazonSNS using the specified AWS account credentials provider.
|
AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on
AmazonSNS using the specified AWS account credentials
provider and client configuration options.
|
AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider,
ClientConfiguration clientConfiguration,
RequestMetricCollector requestMetricCollector)
Constructs a new client to invoke service methods on
AmazonSNS using the specified AWS account credentials
provider, client configuration options, and request metric collector.
|
AmazonSNSClient(ClientConfiguration clientConfiguration)
Constructs a new client to invoke service methods on
AmazonSNS.
|
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(String topicArn,
String label,
List<String> aWSAccountIds,
List<String> actionNames)
Adds a statement to a topic's access control policy, granting access
for the specified AWS accounts to the specified actions.
|
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(String topicArn,
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(String topicArn,
String token,
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(String name)
Creates a topic to which notifications can be published.
|
void |
deleteEndpoint(DeleteEndpointRequest deleteEndpointRequest)
Deletes the endpoint 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(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.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(GetSubscriptionAttributesRequest getSubscriptionAttributesRequest)
Returns all of the properties of a subscription.
|
GetSubscriptionAttributesResult |
getSubscriptionAttributes(String subscriptionArn)
Returns all of the properties of a subscription.
|
GetTopicAttributesResult |
getTopicAttributes(GetTopicAttributesRequest getTopicAttributesRequest)
Returns all of the properties of a topic.
|
GetTopicAttributesResult |
getTopicAttributes(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.
|
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(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(String topicArn)
Returns a list of the subscriptions to a specific topic.
|
ListSubscriptionsByTopicResult |
listSubscriptionsByTopic(String topicArn,
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(String nextToken)
Returns a list of the requester's topics.
|
PublishResult |
publish(PublishRequest publishRequest)
Sends a message to all of a topic's subscribed endpoints.
|
PublishResult |
publish(String topicArn,
String message)
Sends a message to all of a topic's subscribed endpoints.
|
PublishResult |
publish(String topicArn,
String message,
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(String topicArn,
String label)
Removes a statement from a topic's access control policy.
|
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 |
setSubscriptionAttributes(SetSubscriptionAttributesRequest setSubscriptionAttributesRequest)
Allows a subscription owner to set an attribute of the topic to a new
value.
|
void |
setSubscriptionAttributes(String subscriptionArn,
String attributeName,
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(String topicArn,
String attributeName,
String attributeValue)
Allows a topic owner to set an attribute of the topic to a new value.
|
SubscribeResult |
subscribe(String topicArn,
String protocol,
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(String subscriptionArn)
Deletes a subscription.
|
void |
unsubscribe(UnsubscribeRequest unsubscribeRequest)
Deletes a subscription.
|
addRequestHandler, addRequestHandler, beforeMarshalling, configSigner, configSigner, configureRegion, createExecutionContext, createExecutionContext, createExecutionContext, endClientExecution, endClientExecution, findRequestMetricCollector, getRequestMetricsCollector, getServiceAbbreviation, getServiceName, getServiceNameIntern, getSigner, getSignerByURI, getSignerRegionOverride, getTimeOffset, isProfilingEnabled, isRequestMetricsEnabled, removeRequestHandler, removeRequestHandler, requestMetricCollector, setEndpoint, setEndpoint, setRegion, setServiceNameIntern, setSignerRegionOverride, setTimeOffset, shutdown, withEndpoint, withRegion, withRegion, withTimeOffset
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
setEndpoint, setRegion, shutdown
protected final List<com.amazonaws.transform.Unmarshaller<AmazonServiceException,Node>> exceptionUnmarshallers
public AmazonSNSClient()
All service calls made using this new client object are blocking, and will not return until the service call completes.
DefaultAWSCredentialsProviderChain
public AmazonSNSClient(ClientConfiguration clientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
clientConfiguration
- The client configuration options controlling how this
client connects to AmazonSNS
(ex: proxy settings, retry counts, etc.).DefaultAWSCredentialsProviderChain
public AmazonSNSClient(AWSCredentials awsCredentials)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key) to use
when authenticating with AWS services.public AmazonSNSClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentials
- The AWS credentials (access key ID and secret key) to use
when authenticating with AWS services.clientConfiguration
- The client configuration options controlling how this
client connects to AmazonSNS
(ex: proxy settings, retry counts, etc.).public AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials
to authenticate requests with AWS services.public AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials
to authenticate requests with AWS services.clientConfiguration
- The client configuration options controlling how this
client connects to AmazonSNS
(ex: proxy settings, retry counts, etc.).public AmazonSNSClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, RequestMetricCollector requestMetricCollector)
All service calls made using this new client object are blocking, and will not return until the service call completes.
awsCredentialsProvider
- The AWS credentials provider which will provide credentials
to authenticate requests with AWS services.clientConfiguration
- The client configuration options controlling how this
client connects to AmazonSNS
(ex: proxy settings, retry counts, etc.).requestMetricCollector
- optional request metric collectorpublic 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. 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".
confirmSubscription
in interface AmazonSNS
confirmSubscriptionRequest
- Container for the necessary
parameters to execute the ConfirmSubscription service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
InternalErrorException
SubscriptionLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public 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. 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
APNS/APNS_SANDBOX, PlatformCredential is "private key". For GCM,
PlatformCredential is "API key". For ADM, PlatformCredential is
"client secret". 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
.
createPlatformApplication
in interface AmazonSNS
createPlatformApplicationRequest
- Container for the necessary
parameters to execute the CreatePlatformApplication service method on
AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetTopicAttributesResult getTopicAttributes(GetTopicAttributesRequest getTopicAttributesRequest)
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
getTopicAttributes
in interface AmazonSNS
getTopicAttributesRequest
- Container for the necessary
parameters to execute the GetTopicAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public SubscribeResult subscribe(SubscribeRequest subscribeRequest)
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.
subscribe
in interface AmazonSNS
subscribeRequest
- Container for the necessary parameters to
execute the Subscribe service method on AmazonSNS.NotFoundException
AuthorizationErrorException
InternalErrorException
SubscriptionLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void deleteEndpoint(DeleteEndpointRequest deleteEndpointRequest)
Deletes the endpoint from Amazon SNS. This action is idempotent. For more information, see Using Amazon SNS Mobile Push Notifications .
deleteEndpoint
in interface AmazonSNS
deleteEndpointRequest
- Container for the necessary parameters to
execute the DeleteEndpoint service method on AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void setTopicAttributes(SetTopicAttributesRequest setTopicAttributesRequest)
Allows a topic owner to set an attribute of the topic to a new value.
setTopicAttributes
in interface AmazonSNS
setTopicAttributesRequest
- Container for the necessary
parameters to execute the SetTopicAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void deleteTopic(DeleteTopicRequest deleteTopicRequest)
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.
deleteTopic
in interface AmazonSNS
deleteTopicRequest
- Container for the necessary parameters to
execute the DeleteTopic service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void removePermission(RemovePermissionRequest removePermissionRequest)
Removes a statement from a topic's access control policy.
removePermission
in interface AmazonSNS
removePermissionRequest
- Container for the necessary parameters
to execute the RemovePermission service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetEndpointAttributesResult getEndpointAttributes(GetEndpointAttributesRequest getEndpointAttributesRequest)
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 .
getEndpointAttributes
in interface AmazonSNS
getEndpointAttributesRequest
- Container for the necessary
parameters to execute the GetEndpointAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetPlatformApplicationAttributesResult getPlatformApplicationAttributes(GetPlatformApplicationAttributesRequest getPlatformApplicationAttributesRequest)
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 .
getPlatformApplicationAttributes
in interface AmazonSNS
getPlatformApplicationAttributesRequest
- Container for the
necessary parameters to execute the GetPlatformApplicationAttributes
service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsResult listSubscriptions(ListSubscriptionsRequest listSubscriptionsRequest)
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.
listSubscriptions
in interface AmazonSNS
listSubscriptionsRequest
- Container for the necessary parameters
to execute the ListSubscriptions service method on AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void setSubscriptionAttributes(SetSubscriptionAttributesRequest setSubscriptionAttributesRequest)
Allows a subscription owner to set an attribute of the topic to a new value.
setSubscriptionAttributes
in interface AmazonSNS
setSubscriptionAttributesRequest
- Container for the necessary
parameters to execute the SetSubscriptionAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void setPlatformApplicationAttributes(SetPlatformApplicationAttributesRequest setPlatformApplicationAttributesRequest)
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 .
setPlatformApplicationAttributes
in interface AmazonSNS
setPlatformApplicationAttributesRequest
- Container for the
necessary parameters to execute the SetPlatformApplicationAttributes
service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public 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.
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
.
createPlatformEndpoint
in interface AmazonSNS
createPlatformEndpointRequest
- Container for the necessary
parameters to execute the CreatePlatformEndpoint service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public 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.
addPermission
in interface AmazonSNS
addPermissionRequest
- Container for the necessary parameters to
execute the AddPermission service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetSubscriptionAttributesResult getSubscriptionAttributes(GetSubscriptionAttributesRequest getSubscriptionAttributesRequest)
Returns all of the properties of a subscription.
getSubscriptionAttributes
in interface AmazonSNS
getSubscriptionAttributesRequest
- Container for the necessary
parameters to execute the GetSubscriptionAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public CreateTopicResult createTopic(CreateTopicRequest createTopicRequest)
Creates a topic to which notifications can be published. Users can create at most 3000 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.
createTopic
in interface AmazonSNS
createTopicRequest
- Container for the necessary parameters to
execute the CreateTopic service method on AmazonSNS.AuthorizationErrorException
InternalErrorException
InvalidParameterException
TopicLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListTopicsResult listTopics(ListTopicsRequest listTopicsRequest)
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.
listTopics
in interface AmazonSNS
listTopicsRequest
- Container for the necessary parameters to
execute the ListTopics service method on AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListEndpointsByPlatformApplicationResult listEndpointsByPlatformApplication(ListEndpointsByPlatformApplicationRequest listEndpointsByPlatformApplicationRequest)
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
.
listEndpointsByPlatformApplication
in interface AmazonSNS
listEndpointsByPlatformApplicationRequest
- Container for the
necessary parameters to execute the ListEndpointsByPlatformApplication
service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void deletePlatformApplication(DeletePlatformApplicationRequest deletePlatformApplicationRequest)
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 .
deletePlatformApplication
in interface AmazonSNS
deletePlatformApplicationRequest
- Container for the necessary
parameters to execute the DeletePlatformApplication service method on
AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListPlatformApplicationsResult listPlatformApplications(ListPlatformApplicationsRequest listPlatformApplicationsRequest)
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
.
listPlatformApplications
in interface AmazonSNS
listPlatformApplicationsRequest
- Container for the necessary
parameters to execute the ListPlatformApplications service method on
AmazonSNS.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public 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. For more information, see Using Amazon SNS Mobile Push Notifications .
setEndpointAttributes
in interface AmazonSNS
setEndpointAttributesRequest
- Container for the necessary
parameters to execute the SetEndpointAttributes service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void unsubscribe(UnsubscribeRequest unsubscribeRequest)
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.
unsubscribe
in interface AmazonSNS
unsubscribeRequest
- Container for the necessary parameters to
execute the Unsubscribe service method on AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsByTopicResult listSubscriptionsByTopic(ListSubscriptionsByTopicRequest listSubscriptionsByTopicRequest)
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.
listSubscriptionsByTopic
in interface AmazonSNS
listSubscriptionsByTopicRequest
- Container for the necessary
parameters to execute the ListSubscriptionsByTopic service method on
AmazonSNS.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public PublishResult publish(PublishRequest publishRequest)
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 selected.
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. 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.
publish
in interface AmazonSNS
publishRequest
- Container for the necessary parameters to
execute the Publish service method on AmazonSNS.NotFoundException
PlatformApplicationDisabledException
EndpointDisabledException
InvalidParameterValueException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsResult listSubscriptions() throws AmazonServiceException, AmazonClientException
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.
listSubscriptions
in interface AmazonSNS
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListTopicsResult listTopics() throws AmazonServiceException, AmazonClientException
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.
listTopics
in interface AmazonSNS
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListPlatformApplicationsResult listPlatformApplications() throws AmazonServiceException, AmazonClientException
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
.
listPlatformApplications
in interface AmazonSNS
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ConfirmSubscriptionResult confirmSubscription(String topicArn, String token, String authenticateOnUnsubscribe)
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".
confirmSubscription
in interface AmazonSNS
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.NotFoundException
AuthorizationErrorException
InternalErrorException
SubscriptionLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ConfirmSubscriptionResult confirmSubscription(String topicArn, String token)
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".
confirmSubscription
in interface AmazonSNS
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.NotFoundException
AuthorizationErrorException
InternalErrorException
SubscriptionLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetTopicAttributesResult getTopicAttributes(String topicArn)
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
getTopicAttributes
in interface AmazonSNS
topicArn
- The ARN of the topic whose properties you want to get.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public SubscribeResult subscribe(String topicArn, String protocol, String endpoint)
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.
subscribe
in interface AmazonSNS
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 POSThttps
-- delivery of
JSON-encoded message via HTTPS POSTemail
--
delivery of message via SMTPemail-json
--
delivery of JSON-encoded message via SMTPsms
--
delivery of message via SMSsqs
-- delivery of
JSON-encoded message to an Amazon SQS queueapplication
-- delivery of JSON-encoded message to an
EndpointArn for a mobile app and device.endpoint
- The endpoint that you want to receive notifications.
Endpoints vary by protocol: http
protocol, the endpoint is an URL beginning with "http://"https
protocol, the endpoint is a URL beginning with
"https://"email
protocol, the endpoint
is an email addressemail-json
protocol,
the endpoint is an email addresssms
protocol, the endpoint is a phone number of an SMS-enabled devicesqs
protocol, the endpoint is the ARN of an
Amazon SQS queueapplication
protocol,
the endpoint is the EndpointArn of a mobile app and device.NotFoundException
AuthorizationErrorException
InternalErrorException
SubscriptionLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void setTopicAttributes(String topicArn, String attributeName, String attributeValue)
Allows a topic owner to set an attribute of the topic to a new value.
setTopicAttributes
in interface AmazonSNS
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.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void deleteTopic(String topicArn)
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.
deleteTopic
in interface AmazonSNS
topicArn
- The ARN of the topic you want to delete. NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void removePermission(String topicArn, String label)
Removes a statement from a topic's access control policy.
removePermission
in interface AmazonSNS
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.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsResult listSubscriptions(String nextToken)
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.
listSubscriptions
in interface AmazonSNS
nextToken
- Token returned by the previous
ListSubscriptions
request.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void setSubscriptionAttributes(String subscriptionArn, String attributeName, String attributeValue)
Allows a subscription owner to set an attribute of the topic to a new value.
setSubscriptionAttributes
in interface AmazonSNS
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.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void addPermission(String topicArn, String label, List<String> aWSAccountIds, List<String> actionNames)
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
addPermission
in interface AmazonSNS
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.
NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public GetSubscriptionAttributesResult getSubscriptionAttributes(String subscriptionArn)
Returns all of the properties of a subscription.
getSubscriptionAttributes
in interface AmazonSNS
subscriptionArn
- The ARN of the subscription whose properties
you want to get.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public CreateTopicResult createTopic(String name)
Creates a topic to which notifications can be published. Users can create at most 3000 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.
createTopic
in interface AmazonSNS
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.
AuthorizationErrorException
InternalErrorException
InvalidParameterException
TopicLimitExceededException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListTopicsResult listTopics(String nextToken)
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.
listTopics
in interface AmazonSNS
nextToken
- Token returned by the previous
ListTopics
request.AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public void unsubscribe(String subscriptionArn)
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.
unsubscribe
in interface AmazonSNS
subscriptionArn
- The ARN of the subscription to be deleted.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsByTopicResult listSubscriptionsByTopic(String topicArn, String nextToken)
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.
listSubscriptionsByTopic
in interface AmazonSNS
topicArn
- The ARN of the topic for which you wish to find
subscriptions.nextToken
- Token returned by the previous
ListSubscriptionsByTopic
request.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public ListSubscriptionsByTopicResult listSubscriptionsByTopic(String topicArn)
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.
listSubscriptionsByTopic
in interface AmazonSNS
topicArn
- The ARN of the topic for which you wish to find
subscriptions.NotFoundException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public PublishResult publish(String topicArn, String message)
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 selected.
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. 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.
publish
in interface AmazonSNS
topicArn
- The topic you want to publish to.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:
Publish
call to return an error (no partial
delivery).NotFoundException
PlatformApplicationDisabledException
EndpointDisabledException
InvalidParameterValueException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public PublishResult publish(String topicArn, String message, String subject)
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 selected.
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. 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.
publish
in interface AmazonSNS
topicArn
- The topic you want to publish to.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:
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.
NotFoundException
PlatformApplicationDisabledException
EndpointDisabledException
InvalidParameterValueException
AuthorizationErrorException
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 AmazonSNS indicating
either a problem with the data in the request, or a server side issue.public 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 the request.
getCachedResponseMetadata
in interface AmazonSNS
request
- The originally executed requestCopyright © 2015. All rights reserved.