Class AmazonSimpleNotificationServiceClient
- Namespace
- Amazon.SimpleNotificationService
- Assembly
- AWSSDK.SimpleNotificationService.dll
Implementation for accessing SimpleNotificationService
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 https://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.
public class AmazonSimpleNotificationServiceClient : AmazonServiceClient, IAmazonSimpleNotificationService, IDisposable, IAmazonService
- Inheritance
-
AmazonSimpleNotificationServiceClient
- Implements
-
IAmazonService
Constructors
AmazonSimpleNotificationServiceClient()
Constructs AmazonSimpleNotificationServiceClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="AWSProfileName" value="AWS Default"/>
</appSettings>
</configuration>
public AmazonSimpleNotificationServiceClient()
AmazonSimpleNotificationServiceClient(RegionEndpoint)
Constructs AmazonSimpleNotificationServiceClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="AWSProfileName" value="AWS Default"/>
</appSettings>
</configuration>
public AmazonSimpleNotificationServiceClient(RegionEndpoint region)
Parameters
region
RegionEndpointThe region to connect.
AmazonSimpleNotificationServiceClient(AWSCredentials)
Constructs AmazonSimpleNotificationServiceClient with AWS Credentials
public AmazonSimpleNotificationServiceClient(AWSCredentials credentials)
Parameters
credentials
AWSCredentialsAWS Credentials
AmazonSimpleNotificationServiceClient(AWSCredentials, RegionEndpoint)
Constructs AmazonSimpleNotificationServiceClient with AWS Credentials
public AmazonSimpleNotificationServiceClient(AWSCredentials credentials, RegionEndpoint region)
Parameters
credentials
AWSCredentialsAWS Credentials
region
RegionEndpointThe region to connect.
AmazonSimpleNotificationServiceClient(AWSCredentials, AmazonSimpleNotificationServiceConfig)
Constructs AmazonSimpleNotificationServiceClient with AWS Credentials and an AmazonSimpleNotificationServiceClient Configuration object.
public AmazonSimpleNotificationServiceClient(AWSCredentials credentials, AmazonSimpleNotificationServiceConfig clientConfig)
Parameters
credentials
AWSCredentialsAWS Credentials
clientConfig
AmazonSimpleNotificationServiceConfigThe AmazonSimpleNotificationServiceClient Configuration Object
AmazonSimpleNotificationServiceClient(AmazonSimpleNotificationServiceConfig)
Constructs AmazonSimpleNotificationServiceClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance.
Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="AWSProfileName" value="AWS Default"/>
</appSettings>
</configuration>
public AmazonSimpleNotificationServiceClient(AmazonSimpleNotificationServiceConfig config)
Parameters
config
AmazonSimpleNotificationServiceConfigThe AmazonSimpleNotificationServiceClient Configuration Object
AmazonSimpleNotificationServiceClient(string, string)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID and AWS Secret Key
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey)
Parameters
AmazonSimpleNotificationServiceClient(string, string, RegionEndpoint)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID and AWS Secret Key
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey, RegionEndpoint region)
Parameters
awsAccessKeyId
stringAWS Access Key ID
awsSecretAccessKey
stringAWS Secret Access Key
region
RegionEndpointThe region to connect.
AmazonSimpleNotificationServiceClient(string, string, AmazonSimpleNotificationServiceConfig)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID, AWS Secret Key and an AmazonSimpleNotificationServiceClient Configuration object.
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey, AmazonSimpleNotificationServiceConfig clientConfig)
Parameters
awsAccessKeyId
stringAWS Access Key ID
awsSecretAccessKey
stringAWS Secret Access Key
clientConfig
AmazonSimpleNotificationServiceConfigThe AmazonSimpleNotificationServiceClient Configuration Object
AmazonSimpleNotificationServiceClient(string, string, string)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID and AWS Secret Key
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken)
Parameters
awsAccessKeyId
stringAWS Access Key ID
awsSecretAccessKey
stringAWS Secret Access Key
awsSessionToken
stringAWS Session Token
AmazonSimpleNotificationServiceClient(string, string, string, RegionEndpoint)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID and AWS Secret Key
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, RegionEndpoint region)
Parameters
awsAccessKeyId
stringAWS Access Key ID
awsSecretAccessKey
stringAWS Secret Access Key
awsSessionToken
stringAWS Session Token
region
RegionEndpointThe region to connect.
AmazonSimpleNotificationServiceClient(string, string, string, AmazonSimpleNotificationServiceConfig)
Constructs AmazonSimpleNotificationServiceClient with AWS Access Key ID, AWS Secret Key and an AmazonSimpleNotificationServiceClient Configuration object.
public AmazonSimpleNotificationServiceClient(string awsAccessKeyId, string awsSecretAccessKey, string awsSessionToken, AmazonSimpleNotificationServiceConfig clientConfig)
Parameters
awsAccessKeyId
stringAWS Access Key ID
awsSecretAccessKey
stringAWS Secret Access Key
awsSessionToken
stringAWS Session Token
clientConfig
AmazonSimpleNotificationServiceConfigThe AmazonSimpleNotificationServiceClient Configuration Object
Properties
Paginators
Paginators for the service
public ISimpleNotificationServicePaginatorFactory Paginators { get; }
Property Value
ServiceMetadata
Capture metadata for the service.
protected override IServiceMetadata ServiceMetadata { get; }
Property Value
- IServiceMetadata
Methods
AddPermissionAsync(AddPermissionRequest, CancellationToken)
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
public virtual Task<AddPermissionResponse> AddPermissionAsync(AddPermissionRequest request, CancellationToken cancellationToken = default)
Parameters
request
AddPermissionRequestContainer for the necessary parameters to execute the AddPermission service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<AddPermissionResponse>
The response from the AddPermission service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
AddPermissionAsync(string, string, List<string>, List<string>, CancellationToken)
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
public virtual Task<AddPermissionResponse> AddPermissionAsync(string topicArn, string label, List<string> awsAccountId, List<string> actionName, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic whose access control policy you wish to modify.
label
stringA unique identifier for the new policy statement.
awsAccountId
List<string>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.
actionName
List<string>The action you want to allow for the specified principal(s). Valid values: Any Amazon SNS action name, for example
.Publish
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<AddPermissionResponse>
The response from the AddPermission service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
AuthorizeS3ToPublishAsync(string, string)
This is a utility method which updates the policy of a topic to allow the S3 bucket to publish events to it.
public Task AuthorizeS3ToPublishAsync(string topicArn, string bucket)
Parameters
topicArn
stringThe topic that will have its policy updated.
bucket
stringThe bucket that will be given access to publish from.
Returns
- Task
A Task
CheckIfPhoneNumberIsOptedOutAsync(CheckIfPhoneNumberIsOptedOutRequest, CancellationToken)
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.
public virtual Task<CheckIfPhoneNumberIsOptedOutResponse> CheckIfPhoneNumberIsOptedOutAsync(CheckIfPhoneNumberIsOptedOutRequest request, CancellationToken cancellationToken = default)
Parameters
request
CheckIfPhoneNumberIsOptedOutRequestContainer for the necessary parameters to execute the CheckIfPhoneNumberIsOptedOut service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<CheckIfPhoneNumberIsOptedOutResponse>
The response from the CheckIfPhoneNumberIsOptedOut service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ThrottledException
Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.
- See Also
ConfirmSubscriptionAsync(ConfirmSubscriptionRequest, CancellationToken)
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".
public virtual Task<ConfirmSubscriptionResponse> ConfirmSubscriptionAsync(ConfirmSubscriptionRequest request, CancellationToken cancellationToken = default)
Parameters
request
ConfirmSubscriptionRequestContainer for the necessary parameters to execute the ConfirmSubscription service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ConfirmSubscriptionResponse>
The response from the ConfirmSubscription service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- SubscriptionLimitExceededException
Indicates that the customer already owns the maximum allowed number of subscriptions.
- See Also
ConfirmSubscriptionAsync(string, string, string, CancellationToken)
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".
public virtual Task<ConfirmSubscriptionResponse> ConfirmSubscriptionAsync(string topicArn, string token, string authenticateOnUnsubscribe, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic for which you wish to confirm a subscription.
token
stringShort-lived token sent to an endpoint during the
action.Subscribe
authenticateOnUnsubscribe
stringDisallows unauthenticated unsubscribes of the subscription. If the value of this parameter is
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.true
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ConfirmSubscriptionResponse>
The response from the ConfirmSubscription service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- SubscriptionLimitExceededException
Indicates that the customer already owns the maximum allowed number of subscriptions.
- See Also
ConfirmSubscriptionAsync(string, string, CancellationToken)
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".
public virtual Task<ConfirmSubscriptionResponse> ConfirmSubscriptionAsync(string topicArn, string token, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic for which you wish to confirm a subscription.
token
stringShort-lived token sent to an endpoint during the
action.Subscribe
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ConfirmSubscriptionResponse>
The response from the ConfirmSubscription service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- SubscriptionLimitExceededException
Indicates that the customer already owns the maximum allowed number of subscriptions.
- See Also
CreatePlatformApplicationAsync(CreatePlatformApplicationRequest, CancellationToken)
Creates a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging), to which devices and mobile apps may register. You must specify
PlatformPrincipal
and PlatformCredential
attributes when using the CreatePlatformApplication
action.
PlatformPrincipal
and PlatformCredential
are received from
the notification service.
For
,ADM
isPlatformPrincipal
andclient id
isPlatformCredential
.client secret
For
,Baidu
isPlatformPrincipal
andAPI key
isPlatformCredential
.secret key
For
andAPNS
,APNS_SANDBOX
isPlatformPrincipal
andSSL certificate
isPlatformCredential
.private key
For
(Firebase Cloud Messaging), there is noGCM
and thePlatformPrincipal
isPlatformCredential
.API key
For
,MPNS
isPlatformPrincipal
andTLS certificate
isPlatformCredential
.private key
For
,WNS
isPlatformPrincipal
andPackage Security Identifier
isPlatformCredential
.secret key
You can use the returned
PlatformApplicationArn
as an attribute for the
CreatePlatformEndpoint
action.
public virtual Task<CreatePlatformApplicationResponse> CreatePlatformApplicationAsync(CreatePlatformApplicationRequest request, CancellationToken cancellationToken = default)
Parameters
request
CreatePlatformApplicationRequestContainer for the necessary parameters to execute the CreatePlatformApplication service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<CreatePlatformApplicationResponse>
The response from the CreatePlatformApplication service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
CreatePlatformEndpointAsync(CreatePlatformEndpointRequest, CancellationToken)
Creates an endpoint for a device and mobile app on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS.
CreatePlatformEndpoint
requires the PlatformApplicationArn
that is returned from CreatePlatformApplication
.
You can use the returned EndpointArn
to send a message to a mobile app
or by the Subscribe
action for subscription to a topic. The CreatePlatformEndpoint
action is idempotent, so if the requester already owns an endpoint with the same device
token and attributes, that endpoint's ARN is returned without creating a new endpoint.
For more information, see Using
Amazon SNS Mobile Push Notifications.
When using
CreatePlatformEndpoint
with Baidu, two attributes must be
provided: ChannelId and UserId. The token field must also contain the ChannelId. For
more information, see Creating
an Amazon SNS Endpoint for Baidu.
public virtual Task<CreatePlatformEndpointResponse> CreatePlatformEndpointAsync(CreatePlatformEndpointRequest request, CancellationToken cancellationToken = default)
Parameters
request
CreatePlatformEndpointRequestContainer for the necessary parameters to execute the CreatePlatformEndpoint service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<CreatePlatformEndpointResponse>
The response from the CreatePlatformEndpoint service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
CreateSigner()
Creates the signer for the service.
protected override AbstractAWSSigner CreateSigner()
Returns
- AbstractAWSSigner
CreateTopicAsync(CreateTopicRequest, CancellationToken)
Creates a topic to which notifications can be published. Users can create at most 100,000 standard topics (at most 1,000 FIFO topics). For more information, see https://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.
public virtual Task<CreateTopicResponse> CreateTopicAsync(CreateTopicRequest request, CancellationToken cancellationToken = default)
Parameters
request
CreateTopicRequestContainer for the necessary parameters to execute the CreateTopic service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<CreateTopicResponse>
The response from the CreateTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagLimitExceededException
Can't add more than 50 tags to a topic.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- TopicLimitExceededException
Indicates that the customer already owns the maximum allowed number of topics.
- See Also
CreateTopicAsync(string, CancellationToken)
Creates a topic to which notifications can be published. Users can create at most 100,000 standard topics (at most 1,000 FIFO topics). For more information, see https://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.
public virtual Task<CreateTopicResponse> CreateTopicAsync(string name, CancellationToken cancellationToken = default)
Parameters
name
stringThe 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. For a FIFO (first-in-first-out) topic, the name must end with the
suffix..fifo
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<CreateTopicResponse>
The response from the CreateTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagLimitExceededException
Can't add more than 50 tags to a topic.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- TopicLimitExceededException
Indicates that the customer already owns the maximum allowed number of topics.
- See Also
DeleteEndpointAsync(DeleteEndpointRequest, CancellationToken)
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.
public virtual Task<DeleteEndpointResponse> DeleteEndpointAsync(DeleteEndpointRequest request, CancellationToken cancellationToken = default)
Parameters
request
DeleteEndpointRequestContainer for the necessary parameters to execute the DeleteEndpoint service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<DeleteEndpointResponse>
The response from the DeleteEndpoint service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
DeletePlatformApplicationAsync(DeletePlatformApplicationRequest, CancellationToken)
Deletes a platform application object for one of the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see Using Amazon SNS Mobile Push Notifications.
public virtual Task<DeletePlatformApplicationResponse> DeletePlatformApplicationAsync(DeletePlatformApplicationRequest request, CancellationToken cancellationToken = default)
Parameters
request
DeletePlatformApplicationRequestContainer for the necessary parameters to execute the DeletePlatformApplication service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<DeletePlatformApplicationResponse>
The response from the DeletePlatformApplication service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
DeleteTopicAsync(DeleteTopicRequest, CancellationToken)
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.
public virtual Task<DeleteTopicResponse> DeleteTopicAsync(DeleteTopicRequest request, CancellationToken cancellationToken = default)
Parameters
request
DeleteTopicRequestContainer for the necessary parameters to execute the DeleteTopic service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<DeleteTopicResponse>
The response from the DeleteTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- See Also
DeleteTopicAsync(string, CancellationToken)
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.
public virtual Task<DeleteTopicResponse> DeleteTopicAsync(string topicArn, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic you want to delete.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<DeleteTopicResponse>
The response from the DeleteTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- See Also
Dispose(bool)
Disposes the service client.
protected override void Dispose(bool disposing)
Parameters
disposing
bool
FindTopicAsync(string)
Finds an existing Amazon SNS topic by iterating all SNS topics until a match is found asynchronously.
The ListTopics method is used to fetch upto 100 SNS topics at a time until a SNS topic
with an TopicArn that matches topicName
is found.
public Task<Topic> FindTopicAsync(string topicName)
Parameters
topicName
stringThe name of the topic find
Returns
GetEndpointAttributesAsync(GetEndpointAttributesRequest, CancellationToken)
Retrieves the endpoint attributes for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.
public virtual Task<GetEndpointAttributesResponse> GetEndpointAttributesAsync(GetEndpointAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
GetEndpointAttributesRequestContainer for the necessary parameters to execute the GetEndpointAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetEndpointAttributesResponse>
The response from the GetEndpointAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
GetPlatformApplicationAttributesAsync(GetPlatformApplicationAttributesRequest, CancellationToken)
Retrieves the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see Using Amazon SNS Mobile Push Notifications.
public virtual Task<GetPlatformApplicationAttributesResponse> GetPlatformApplicationAttributesAsync(GetPlatformApplicationAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
GetPlatformApplicationAttributesRequestContainer for the necessary parameters to execute the GetPlatformApplicationAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetPlatformApplicationAttributesResponse>
The response from the GetPlatformApplicationAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
GetSMSAttributesAsync(GetSMSAttributesRequest, CancellationToken)
Returns the settings for sending SMS messages from your account.
These settings are set with the
SetSMSAttributes
action.
public virtual Task<GetSMSAttributesResponse> GetSMSAttributesAsync(GetSMSAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
GetSMSAttributesRequestContainer for the necessary parameters to execute the GetSMSAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetSMSAttributesResponse>
The response from the GetSMSAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ThrottledException
Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.
- See Also
GetSubscriptionAttributesAsync(GetSubscriptionAttributesRequest, CancellationToken)
Returns all of the properties of a subscription.
public virtual Task<GetSubscriptionAttributesResponse> GetSubscriptionAttributesAsync(GetSubscriptionAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
GetSubscriptionAttributesRequestContainer for the necessary parameters to execute the GetSubscriptionAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetSubscriptionAttributesResponse>
The response from the GetSubscriptionAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
GetSubscriptionAttributesAsync(string, CancellationToken)
Returns all of the properties of a subscription.
public virtual Task<GetSubscriptionAttributesResponse> GetSubscriptionAttributesAsync(string subscriptionArn, CancellationToken cancellationToken = default)
Parameters
subscriptionArn
stringThe ARN of the subscription whose properties you want to get.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetSubscriptionAttributesResponse>
The response from the GetSubscriptionAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
GetTopicAttributesAsync(GetTopicAttributesRequest, CancellationToken)
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
public virtual Task<GetTopicAttributesResponse> GetTopicAttributesAsync(GetTopicAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
GetTopicAttributesRequestContainer for the necessary parameters to execute the GetTopicAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetTopicAttributesResponse>
The response from the GetTopicAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
GetTopicAttributesAsync(string, CancellationToken)
Returns all of the properties of a topic. Topic properties returned might differ based on the authorization of the user.
public virtual Task<GetTopicAttributesResponse> GetTopicAttributesAsync(string topicArn, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic whose properties you want to get.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<GetTopicAttributesResponse>
The response from the GetTopicAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
ListEndpointsByPlatformApplicationAsync(ListEndpointsByPlatformApplicationRequest, CancellationToken)
Lists the endpoints and endpoint attributes for devices in a supported push notification service, such as GCM (Firebase Cloud Messaging) and APNS. The results for
ListEndpointsByPlatformApplication
are paginated and return a limited list of endpoints, up to 100. If additional records
are available after the first page results, then a NextToken string will be returned.
To receive the next page, you call ListEndpointsByPlatformApplication
again using the NextToken string received from the previous call. When there are no
more records to return, NextToken will be null. For more information, see Using
Amazon SNS Mobile Push Notifications.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListEndpointsByPlatformApplicationResponse> ListEndpointsByPlatformApplicationAsync(ListEndpointsByPlatformApplicationRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListEndpointsByPlatformApplicationRequestContainer for the necessary parameters to execute the ListEndpointsByPlatformApplication service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListEndpointsByPlatformApplicationResponse>
The response from the ListEndpointsByPlatformApplication service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
ListPhoneNumbersOptedOutAsync(ListPhoneNumbersOptedOutRequest, CancellationToken)
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.
public virtual Task<ListPhoneNumbersOptedOutResponse> ListPhoneNumbersOptedOutAsync(ListPhoneNumbersOptedOutRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListPhoneNumbersOptedOutRequestContainer for the necessary parameters to execute the ListPhoneNumbersOptedOut service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListPhoneNumbersOptedOutResponse>
The response from the ListPhoneNumbersOptedOut service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ThrottledException
Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.
- See Also
ListPlatformApplicationsAsync(ListPlatformApplicationsRequest, CancellationToken)
Lists the platform application objects for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). The results for
ListPlatformApplications
are paginated and return a limited list of applications, up to 100. If additional
records are available after the first page results, then a NextToken string will be
returned. To receive the next page, you call ListPlatformApplications
using the NextToken string received from the previous call. When there are no more
records to return, NextToken
will be null. For more information, see
Using Amazon
SNS Mobile Push Notifications.
This action is throttled at 15 transactions per second (TPS).
public virtual Task<ListPlatformApplicationsResponse> ListPlatformApplicationsAsync(ListPlatformApplicationsRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListPlatformApplicationsRequestContainer for the necessary parameters to execute the ListPlatformApplications service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListPlatformApplicationsResponse>
The response from the ListPlatformApplications service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListPlatformApplicationsAsync(CancellationToken)
Lists the platform application objects for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). The results for
ListPlatformApplications
are paginated and return a limited list of applications, up to 100. If additional
records are available after the first page results, then a NextToken string will be
returned. To receive the next page, you call ListPlatformApplications
using the NextToken string received from the previous call. When there are no more
records to return, NextToken
will be null. For more information, see
Using Amazon
SNS Mobile Push Notifications.
This action is throttled at 15 transactions per second (TPS).
public virtual Task<ListPlatformApplicationsResponse> ListPlatformApplicationsAsync(CancellationToken cancellationToken = default)
Parameters
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListPlatformApplicationsResponse>
The response from the ListPlatformApplications service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListSubscriptionsAsync(ListSubscriptionsRequest, CancellationToken)
Returns a list of the requester's subscriptions. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptions
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsResponse> ListSubscriptionsAsync(ListSubscriptionsRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListSubscriptionsRequestContainer for the necessary parameters to execute the ListSubscriptions service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsResponse>
The response from the ListSubscriptions service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListSubscriptionsAsync(string, CancellationToken)
Returns a list of the requester's subscriptions. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptions
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsResponse> ListSubscriptionsAsync(string nextToken, CancellationToken cancellationToken = default)
Parameters
nextToken
stringToken returned by the previous
request.ListSubscriptions
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsResponse>
The response from the ListSubscriptions service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListSubscriptionsAsync(CancellationToken)
Returns a list of the requester's subscriptions. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptions
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsResponse> ListSubscriptionsAsync(CancellationToken cancellationToken = default)
Parameters
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsResponse>
The response from the ListSubscriptions service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListSubscriptionsByTopicAsync(ListSubscriptionsByTopicRequest, CancellationToken)
Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptionsByTopic
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsByTopicResponse> ListSubscriptionsByTopicAsync(ListSubscriptionsByTopicRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListSubscriptionsByTopicRequestContainer for the necessary parameters to execute the ListSubscriptionsByTopic service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsByTopicResponse>
The response from the ListSubscriptionsByTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
ListSubscriptionsByTopicAsync(string, string, CancellationToken)
Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptionsByTopic
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsByTopicResponse> ListSubscriptionsByTopicAsync(string topicArn, string nextToken, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic for which you wish to find subscriptions.
nextToken
stringToken returned by the previous
request.ListSubscriptionsByTopic
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsByTopicResponse>
The response from the ListSubscriptionsByTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
ListSubscriptionsByTopicAsync(string, CancellationToken)
Returns a list of the subscriptions to a specific topic. Each call returns a limited list of subscriptions, up to 100. If there are more subscriptions, a
NextToken
is also returned. Use the NextToken
parameter in a new ListSubscriptionsByTopic
call to get further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListSubscriptionsByTopicResponse> ListSubscriptionsByTopicAsync(string topicArn, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic for which you wish to find subscriptions.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListSubscriptionsByTopicResponse>
The response from the ListSubscriptionsByTopic service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
ListTagsForResourceAsync(ListTagsForResourceRequest, CancellationToken)
List all tags added to the specified Amazon SNS topic. For an overview, see Amazon SNS Tags in the Amazon Simple Notification Service Developer Guide.
public virtual Task<ListTagsForResourceResponse> ListTagsForResourceAsync(ListTagsForResourceRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListTagsForResourceRequestContainer for the necessary parameters to execute the ListTagsForResource service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListTagsForResourceResponse>
The response from the ListTagsForResource service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ResourceNotFoundException
Can't tag resource. Verify that the topic exists.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- See Also
ListTopicsAsync(ListTopicsRequest, CancellationToken)
Returns a list of the requester's topics. Each call returns a limited list of topics, up to 100. If there are more topics, a
NextToken
is also returned. Use
the NextToken
parameter in a new ListTopics
call to get
further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListTopicsResponse> ListTopicsAsync(ListTopicsRequest request, CancellationToken cancellationToken = default)
Parameters
request
ListTopicsRequestContainer for the necessary parameters to execute the ListTopics service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListTopicsResponse>
The response from the ListTopics service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListTopicsAsync(string, CancellationToken)
Returns a list of the requester's topics. Each call returns a limited list of topics, up to 100. If there are more topics, a
NextToken
is also returned. Use
the NextToken
parameter in a new ListTopics
call to get
further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListTopicsResponse> ListTopicsAsync(string nextToken, CancellationToken cancellationToken = default)
Parameters
nextToken
stringToken returned by the previous
request.ListTopics
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListTopicsResponse>
The response from the ListTopics service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
ListTopicsAsync(CancellationToken)
Returns a list of the requester's topics. Each call returns a limited list of topics, up to 100. If there are more topics, a
NextToken
is also returned. Use
the NextToken
parameter in a new ListTopics
call to get
further results.
This action is throttled at 30 transactions per second (TPS).
public virtual Task<ListTopicsResponse> ListTopicsAsync(CancellationToken cancellationToken = default)
Parameters
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<ListTopicsResponse>
The response from the ListTopics service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- See Also
OptInPhoneNumberAsync(OptInPhoneNumberRequest, CancellationToken)
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.
public virtual Task<OptInPhoneNumberResponse> OptInPhoneNumberAsync(OptInPhoneNumberRequest request, CancellationToken cancellationToken = default)
Parameters
request
OptInPhoneNumberRequestContainer for the necessary parameters to execute the OptInPhoneNumber service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<OptInPhoneNumberResponse>
The response from the OptInPhoneNumber service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ThrottledException
Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.
- See Also
PublishAsync(PublishRequest, CancellationToken)
Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the
TargetArn
).
If you send a message to a topic, Amazon SNS delivers the message to each endpoint that is subscribed to the topic. The format of the message depends on the notification protocol for each subscribed endpoint.
When a
messageId
is returned, the message has been saved and Amazon SNS
will attempt to deliver it shortly.
To use the
Publish
action for sending a message to a mobile endpoint,
such as an app on a Kindle device or mobile phone, you must specify the EndpointArn
for the TargetArn parameter. The EndpointArn is returned when making a call with the
CreatePlatformEndpoint
action.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
You can publish messages only to topics and endpoints in the same AWS Region.
public virtual Task<PublishResponse> PublishAsync(PublishRequest request, CancellationToken cancellationToken = default)
Parameters
request
PublishRequestContainer for the necessary parameters to execute the Publish service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<PublishResponse>
The response from the Publish service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- EndpointDisabledException
Exception error indicating endpoint disabled.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidParameterValueException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- KMSAccessDeniedException
The ciphertext references a key that doesn't exist or that you don't have access to.
- KMSDisabledException
The request was rejected because the specified customer master key (CMK) isn't enabled.
- KMSInvalidStateException
The request was rejected because the state of the specified resource isn't valid for this request. For more information, see How Key State Affects Use of a Customer Master Key in the AWS Key Management Service Developer Guide.
- KMSNotFoundException
The request was rejected because the specified entity or resource can't be found.
- KMSOptInRequiredException
The AWS access key ID needs a subscription for the service.
- KMSThrottlingException
The request was denied due to request throttling. For more information about throttling, see Limits in the AWS Key Management Service Developer Guide.
- NotFoundException
Indicates that the requested resource does not exist.
- PlatformApplicationDisabledException
Exception error indicating platform application disabled.
- See Also
PublishAsync(string, string, string, CancellationToken)
Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the
TargetArn
).
If you send a message to a topic, Amazon SNS delivers the message to each endpoint that is subscribed to the topic. The format of the message depends on the notification protocol for each subscribed endpoint.
When a
messageId
is returned, the message has been saved and Amazon SNS
will attempt to deliver it shortly.
To use the
Publish
action for sending a message to a mobile endpoint,
such as an app on a Kindle device or mobile phone, you must specify the EndpointArn
for the TargetArn parameter. The EndpointArn is returned when making a call with the
CreatePlatformEndpoint
action.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
You can publish messages only to topics and endpoints in the same AWS Region.
public virtual Task<PublishResponse> PublishAsync(string topicArn, string message, string subject, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe topic you want to publish to. If you don't specify a value for the
parameter, you must specify a value for theTopicArn
orPhoneNumber
parameters.TargetArn
message
stringThe message you want to send. If you are publishing to a topic and 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
parameter toMessageStructure
and use a JSON object for thejson
parameter. Constraints:Message
- With the exception of SMS, messages must be UTF-8 encoded strings and at most 256 KB in size (262,144 bytes, not 262,144 characters).
- For SMS, each message can contain up to 140 characters. This character limit depends on the encoding schema. For example, an SMS message can contain 160 GSM characters, 140 ASCII characters, or 70 UCS-2 characters. If you publish a message that exceeds this size limit, Amazon SNS sends the message as multiple messages, each fitting within the size limit. Messages aren't truncated mid-word but are cut off at whole-word boundaries. The total size limit for a single SMS
action is 1,600 characters.Publish
- 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
call to return an error (no partial delivery).Publish
subject
stringOptional 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.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<PublishResponse>
The response from the Publish service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- EndpointDisabledException
Exception error indicating endpoint disabled.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidParameterValueException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- KMSAccessDeniedException
The ciphertext references a key that doesn't exist or that you don't have access to.
- KMSDisabledException
The request was rejected because the specified customer master key (CMK) isn't enabled.
- KMSInvalidStateException
The request was rejected because the state of the specified resource isn't valid for this request. For more information, see How Key State Affects Use of a Customer Master Key in the AWS Key Management Service Developer Guide.
- KMSNotFoundException
The request was rejected because the specified entity or resource can't be found.
- KMSOptInRequiredException
The AWS access key ID needs a subscription for the service.
- KMSThrottlingException
The request was denied due to request throttling. For more information about throttling, see Limits in the AWS Key Management Service Developer Guide.
- NotFoundException
Indicates that the requested resource does not exist.
- PlatformApplicationDisabledException
Exception error indicating platform application disabled.
- See Also
PublishAsync(string, string, CancellationToken)
Sends a message to an Amazon SNS topic, a text message (SMS message) directly to a phone number, or a message to a mobile platform endpoint (when you specify the
TargetArn
).
If you send a message to a topic, Amazon SNS delivers the message to each endpoint that is subscribed to the topic. The format of the message depends on the notification protocol for each subscribed endpoint.
When a
messageId
is returned, the message has been saved and Amazon SNS
will attempt to deliver it shortly.
To use the
Publish
action for sending a message to a mobile endpoint,
such as an app on a Kindle device or mobile phone, you must specify the EndpointArn
for the TargetArn parameter. The EndpointArn is returned when making a call with the
CreatePlatformEndpoint
action.
For more information about formatting messages, see Send Custom Platform-Specific Payloads in Messages to Mobile Devices.
You can publish messages only to topics and endpoints in the same AWS Region.
public virtual Task<PublishResponse> PublishAsync(string topicArn, string message, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe topic you want to publish to. If you don't specify a value for the
parameter, you must specify a value for theTopicArn
orPhoneNumber
parameters.TargetArn
message
stringThe message you want to send. If you are publishing to a topic and 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
parameter toMessageStructure
and use a JSON object for thejson
parameter. Constraints:Message
- With the exception of SMS, messages must be UTF-8 encoded strings and at most 256 KB in size (262,144 bytes, not 262,144 characters).
- For SMS, each message can contain up to 140 characters. This character limit depends on the encoding schema. For example, an SMS message can contain 160 GSM characters, 140 ASCII characters, or 70 UCS-2 characters. If you publish a message that exceeds this size limit, Amazon SNS sends the message as multiple messages, each fitting within the size limit. Messages aren't truncated mid-word but are cut off at whole-word boundaries. The total size limit for a single SMS
action is 1,600 characters.Publish
- 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
call to return an error (no partial delivery).Publish
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<PublishResponse>
The response from the Publish service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- EndpointDisabledException
Exception error indicating endpoint disabled.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidParameterValueException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- KMSAccessDeniedException
The ciphertext references a key that doesn't exist or that you don't have access to.
- KMSDisabledException
The request was rejected because the specified customer master key (CMK) isn't enabled.
- KMSInvalidStateException
The request was rejected because the state of the specified resource isn't valid for this request. For more information, see How Key State Affects Use of a Customer Master Key in the AWS Key Management Service Developer Guide.
- KMSNotFoundException
The request was rejected because the specified entity or resource can't be found.
- KMSOptInRequiredException
The AWS access key ID needs a subscription for the service.
- KMSThrottlingException
The request was denied due to request throttling. For more information about throttling, see Limits in the AWS Key Management Service Developer Guide.
- NotFoundException
Indicates that the requested resource does not exist.
- PlatformApplicationDisabledException
Exception error indicating platform application disabled.
- See Also
RemovePermissionAsync(RemovePermissionRequest, CancellationToken)
Removes a statement from a topic's access control policy.
public virtual Task<RemovePermissionResponse> RemovePermissionAsync(RemovePermissionRequest request, CancellationToken cancellationToken = default)
Parameters
request
RemovePermissionRequestContainer for the necessary parameters to execute the RemovePermission service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<RemovePermissionResponse>
The response from the RemovePermission service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
RemovePermissionAsync(string, string, CancellationToken)
Removes a statement from a topic's access control policy.
public virtual Task<RemovePermissionResponse> RemovePermissionAsync(string topicArn, string label, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic whose access control policy you wish to modify.
label
stringThe unique label of the statement you want to remove.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<RemovePermissionResponse>
The response from the RemovePermission service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetEndpointAttributesAsync(SetEndpointAttributesRequest, CancellationToken)
Sets the attributes for an endpoint for a device on one of the supported push notification services, such as GCM (Firebase Cloud Messaging) and APNS. For more information, see Using Amazon SNS Mobile Push Notifications.
public virtual Task<SetEndpointAttributesResponse> SetEndpointAttributesAsync(SetEndpointAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
SetEndpointAttributesRequestContainer for the necessary parameters to execute the SetEndpointAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetEndpointAttributesResponse>
The response from the SetEndpointAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetPlatformApplicationAttributesAsync(SetPlatformApplicationAttributesRequest, CancellationToken)
Sets the attributes of the platform application object for the supported push notification services, such as APNS and GCM (Firebase Cloud Messaging). For more information, see Using Amazon SNS Mobile Push Notifications. For information on configuring attributes for message delivery status, see Using Amazon SNS Application Attributes for Message Delivery Status.
public virtual Task<SetPlatformApplicationAttributesResponse> SetPlatformApplicationAttributesAsync(SetPlatformApplicationAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
SetPlatformApplicationAttributesRequestContainer for the necessary parameters to execute the SetPlatformApplicationAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetPlatformApplicationAttributesResponse>
The response from the SetPlatformApplicationAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetSMSAttributesAsync(SetSMSAttributesRequest, CancellationToken)
Use this request to set the default settings for sending SMS messages and receiving daily SMS usage reports.
You can override some of these settings for a single message when you use the
Publish
action with the MessageAttributes.entry.N
parameter. For more information,
see Publishing
to a mobile phone in the Amazon SNS Developer Guide.
public virtual Task<SetSMSAttributesResponse> SetSMSAttributesAsync(SetSMSAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
SetSMSAttributesRequestContainer for the necessary parameters to execute the SetSMSAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetSMSAttributesResponse>
The response from the SetSMSAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ThrottledException
Indicates that the rate at which requests have been submitted for this action exceeds the limit for your account.
- See Also
SetSubscriptionAttributesAsync(SetSubscriptionAttributesRequest, CancellationToken)
Allows a subscription owner to set an attribute of the subscription to a new value.
public virtual Task<SetSubscriptionAttributesResponse> SetSubscriptionAttributesAsync(SetSubscriptionAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
SetSubscriptionAttributesRequestContainer for the necessary parameters to execute the SetSubscriptionAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetSubscriptionAttributesResponse>
The response from the SetSubscriptionAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetSubscriptionAttributesAsync(string, string, string, CancellationToken)
Allows a subscription owner to set an attribute of the subscription to a new value.
public virtual Task<SetSubscriptionAttributesResponse> SetSubscriptionAttributesAsync(string subscriptionArn, string attributeName, string attributeValue, CancellationToken cancellationToken = default)
Parameters
subscriptionArn
stringThe ARN of the subscription to modify.
attributeName
stringA map of attributes with their corresponding values. The following lists the names, descriptions, and values of the special request parameters that the
action uses:SetTopicAttributes
-
– The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.DeliveryPolicy
-
– The simple JSON object that lets your subscriber receive only a subset of messages, rather than receiving every message published to the topic.FilterPolicy
-
– When set toRawMessageDelivery
, enables raw message delivery to Amazon SQS or HTTP/S endpoints. This eliminates the need for the endpoints to process JSON formatting, which is otherwise created for Amazon SNS metadata.true
-
– When specified, sends undeliverable messages to the specified Amazon SQS dead-letter queue. Messages that can't be delivered due to client errors (for example, when the subscribed endpoint is unreachable) or server errors (for example, when the service that powers the subscribed endpoint becomes unavailable) are held in the dead-letter queue for further analysis or reprocessing.RedrivePolicy
-
attributeValue
stringThe new value for the attribute in JSON format.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetSubscriptionAttributesResponse>
The response from the SetSubscriptionAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetTopicAttributesAsync(SetTopicAttributesRequest, CancellationToken)
Allows a topic owner to set an attribute of the topic to a new value.
public virtual Task<SetTopicAttributesResponse> SetTopicAttributesAsync(SetTopicAttributesRequest request, CancellationToken cancellationToken = default)
Parameters
request
SetTopicAttributesRequestContainer for the necessary parameters to execute the SetTopicAttributes service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetTopicAttributesResponse>
The response from the SetTopicAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SetTopicAttributesAsync(string, string, string, CancellationToken)
Allows a topic owner to set an attribute of the topic to a new value.
public virtual Task<SetTopicAttributesResponse> SetTopicAttributesAsync(string topicArn, string attributeName, string attributeValue, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic to modify.
attributeName
stringA map of attributes with their corresponding values. The following lists the names, descriptions, and values of the special request parameters that the
action uses:SetTopicAttributes
-
– The policy that defines how Amazon SNS retries failed deliveries to HTTP/S endpoints.DeliveryPolicy
-
– The display name to use for a topic with SMS subscriptions.DisplayName
-
– The policy that defines who can access your topic. By default, only the topic owner can publish or subscribe to the topic.Policy
-
– The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms. For more examples, see KeyId in the AWS Key Management Service API Reference.KmsMasterKeyId
-
– Enables content-based deduplication for FIFO topics.ContentBasedDeduplication
- By default,
is set toContentBasedDeduplication
. If you create a FIFO topic and this attribute isfalse
, you must specify a value for thefalse
parameter for the Publish action.MessageDeduplicationId
- When you set
toContentBasedDeduplication
, Amazon SNS uses a SHA-256 hash to generate thetrue
using the body of the message (but not the attributes of the message). (Optional) To override the generated value, you can specify a value for the theMessageDeduplicationId
parameter for theMessageDeduplicationId
action.Publish
- By default,
-
attributeValue
stringThe new value for the attribute.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SetTopicAttributesResponse>
The response from the SetTopicAttributes service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
SubscribeAsync(SubscribeRequest, CancellationToken)
Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same AWS account, the endpoint owner must the
ConfirmSubscription
action to confirm the subscription.
You call the
ConfirmSubscription
action with the token from the subscription
response. Confirmation tokens are valid for three days.
This action is throttled at 100 transactions per second (TPS).
public virtual Task<SubscribeResponse> SubscribeAsync(SubscribeRequest request, CancellationToken cancellationToken = default)
Parameters
request
SubscribeRequestContainer for the necessary parameters to execute the Subscribe service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SubscribeResponse>
The response from the Subscribe service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- SubscriptionLimitExceededException
Indicates that the customer already owns the maximum allowed number of subscriptions.
- See Also
SubscribeAsync(string, string, string, CancellationToken)
Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email, or if the endpoint and the topic are not in the same AWS account, the endpoint owner must the
ConfirmSubscription
action to confirm the subscription.
You call the
ConfirmSubscription
action with the token from the subscription
response. Confirmation tokens are valid for three days.
This action is throttled at 100 transactions per second (TPS).
public virtual Task<SubscribeResponse> SubscribeAsync(string topicArn, string protocol, string endpoint, CancellationToken cancellationToken = default)
Parameters
topicArn
stringThe ARN of the topic you want to subscribe to.
protocol
stringThe protocol you want to use. Supported protocols include:
-
– delivery of JSON-encoded message via HTTP POSThttp
-
– delivery of JSON-encoded message via HTTPS POSThttps
-
– delivery of message via SMTPemail
-
– delivery of JSON-encoded message via SMTPemail-json
-
– delivery of message via SMSsms
-
– delivery of JSON-encoded message to an Amazon SQS queuesqs
-
– delivery of JSON-encoded message to an EndpointArn for a mobile app and device.application
-
– delivery of JSON-encoded message to an Amazon Lambda function.lambda
-
endpoint
stringThe endpoint that you want to receive notifications. Endpoints vary by protocol:
- For the
protocol, the (public) endpoint is a URL beginning withhttp
http://
- For the
protocol, the (public) endpoint is a URL beginning withhttps
https://
- For the
protocol, the endpoint is an email addressemail
- For the
protocol, the endpoint is an email addressemail-json
- For the
protocol, the endpoint is a phone number of an SMS-enabled devicesms
- For the
protocol, the endpoint is the ARN of an Amazon SQS queuesqs
- For the
protocol, the endpoint is the EndpointArn of a mobile app and device.application
- For the
protocol, the endpoint is the ARN of an Amazon Lambda function.lambda
- For the
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<SubscribeResponse>
The response from the Subscribe service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- FilterPolicyLimitExceededException
Indicates that the number of filter polices in your AWS account exceeds the limit. To add more filter polices, submit an SNS Limit Increase case in the AWS Support Center.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- SubscriptionLimitExceededException
Indicates that the customer already owns the maximum allowed number of subscriptions.
- See Also
SubscribeQueueAsync(string, ICoreAmazonSQS, string)
Subscribes an existing Amazon SQS queue to an existing Amazon SNS topic asynchronously.
The policy applied to the SQS queue is similar to this:
{
"Version" : "2008-10-17",
"Statement" : [{
"Sid" : "topic-subscription-arn:aws:sns:us-west-2:599109622955:myTopic",
"Effect" : "Allow",
"Principal" : "*",
"Action" : ["sqs:SendMessage"],
"Resource":["arn:aws:sqs:us-west-2:599109622955:myQueue"],
"Condition" : {
"ArnLike":{
"aws:SourceArn":["arn:aws:sns:us-west-2:599109622955:myTopic"]
}
}
}]
}
There might be a small time period immediately after subscribing the SQS queue to the SNS topic and updating the SQS queue's policy, where messages are not able to be delivered to the queue. After a moment, the new queue policy will propagate and the queue will be able to receive messages. This delay only occurs immediately after initially subscribing the queue.
public Task<string> SubscribeQueueAsync(string topicArn, ICoreAmazonSQS sqsClient, string sqsQueueUrl)
Parameters
topicArn
stringThe topic to subscribe to
sqsClient
ICoreAmazonSQSThe SQS client used to get attributes and set the policy on the SQS queue.
sqsQueueUrl
stringThe queue to add a subscription to.
Returns
- Task<string>
The subscription ARN as returned by Amazon SNS when the queue is successfully subscribed to the topic.
SubscribeQueueToTopicsAsync(IList<string>, ICoreAmazonSQS, string)
Subscribes an existing Amazon SQS queue to existing Amazon SNS topics asynchronously.
The policy applied to the SQS queue is similar to this:
{
"Version" : "2008-10-17",
"Statement" : [{
"Sid" : "topic-subscription-arn:aws:sns:us-west-2:599109622955:myTopic",
"Effect" : "Allow",
"Principal" : "*",
"Action" : ["sqs:SendMessage"],
"Resource":["arn:aws:sqs:us-west-2:599109622955:myQueue"],
"Condition" : {
"ArnLike":{
"aws:SourceArn":["arn:aws:sns:us-west-2:599109622955:myTopic"]
}
}
}]
}
There might be a small time period immediately after subscribing the SQS queue to the SNS topic and updating the SQS queue's policy, where messages are not able to be delivered to the queue. After a moment, the new queue policy will propagate and the queue will be able to receive messages. This delay only occurs immediately after initially subscribing the queue.
public Task<IDictionary<string, string>> SubscribeQueueToTopicsAsync(IList<string> topicArns, ICoreAmazonSQS sqsClient, string sqsQueueUrl)
Parameters
topicArns
IList<string>The topics to subscribe to
sqsClient
ICoreAmazonSQSThe SQS client used to get attributes and set the policy on the SQS queue.
sqsQueueUrl
stringThe queue to add a subscription to.
Returns
- Task<IDictionary<string, string>>
The mapping of topic ARNs to subscription ARNs as returned by Amazon SNS when the queue is successfully subscribed to each topic.
TagResourceAsync(TagResourceRequest, CancellationToken)
Add tags to the specified Amazon SNS topic. For an overview, see Amazon SNS Tags in the Amazon SNS Developer Guide.
When you use topic tags, keep the following guidelines in mind:
Adding more than 50 tags to a topic isn't recommended.
Tags don't have any semantic meaning. Amazon SNS interprets tags as character strings.
Tags are case-sensitive.
A new tag with a key identical to that of an existing tag overwrites the existing tag.
Tagging actions are limited to 10 TPS per AWS account, per AWS region. If your application requires a higher throughput, file a technical support request.
public virtual Task<TagResourceResponse> TagResourceAsync(TagResourceRequest request, CancellationToken cancellationToken = default)
Parameters
request
TagResourceRequestContainer for the necessary parameters to execute the TagResource service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<TagResourceResponse>
The response from the TagResource service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ResourceNotFoundException
Can't tag resource. Verify that the topic exists.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagLimitExceededException
Can't add more than 50 tags to a topic.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- See Also
UnsubscribeAsync(UnsubscribeRequest, CancellationToken)
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.
This action is throttled at 100 transactions per second (TPS).
public virtual Task<UnsubscribeResponse> UnsubscribeAsync(UnsubscribeRequest request, CancellationToken cancellationToken = default)
Parameters
request
UnsubscribeRequestContainer for the necessary parameters to execute the Unsubscribe service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<UnsubscribeResponse>
The response from the Unsubscribe service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
UnsubscribeAsync(string, CancellationToken)
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.
This action is throttled at 100 transactions per second (TPS).
public virtual Task<UnsubscribeResponse> UnsubscribeAsync(string subscriptionArn, CancellationToken cancellationToken = default)
Parameters
subscriptionArn
stringThe ARN of the subscription to be deleted.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<UnsubscribeResponse>
The response from the Unsubscribe service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- InternalErrorException
Indicates an internal service error.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- InvalidSecurityException
The credential signature isn't valid. You must use an HTTPS endpoint and sign your request using Signature Version 4.
- NotFoundException
Indicates that the requested resource does not exist.
- See Also
UntagResourceAsync(UntagResourceRequest, CancellationToken)
Remove tags from the specified Amazon SNS topic. For an overview, see Amazon SNS Tags in the Amazon SNS Developer Guide.
public virtual Task<UntagResourceResponse> UntagResourceAsync(UntagResourceRequest request, CancellationToken cancellationToken = default)
Parameters
request
UntagResourceRequestContainer for the necessary parameters to execute the UntagResource service method.
cancellationToken
CancellationTokenA cancellation token that can be used by other objects or threads to receive notice of cancellation.
Returns
- Task<UntagResourceResponse>
The response from the UntagResource service method, as returned by SimpleNotificationService.
Exceptions
- AuthorizationErrorException
Indicates that the user has been denied access to the requested resource.
- ConcurrentAccessException
Can't perform multiple operations on a tag simultaneously. Perform the operations sequentially.
- InvalidParameterException
Indicates that a request parameter does not comply with the associated constraints.
- ResourceNotFoundException
Can't tag resource. Verify that the topic exists.
- StaleTagException
A tag has been added to a resource with the same ARN as a deleted resource. Wait a short while and then retry the operation.
- TagLimitExceededException
Can't add more than 50 tags to a topic.
- TagPolicyException
The request doesn't comply with the IAM tag policy. Correct your request and then retry it.
- See Also