AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
Subscribes an endpoint to an Amazon SNS topic. If the endpoint type is HTTP/S or email,
or if the endpoint and the topic are not in the same Amazon Web Services account,
the endpoint owner must run the ConfirmSubscription
action to confirm the subscription.
You call the ConfirmSubscription
action with the token from the subscription
response. Confirmation tokens are valid for two days.
This action is throttled at 100 transactions per second (TPS).
This is an asynchronous operation using the standard naming convention for .NET 4.5 or higher. For .NET 3.5 the operation is implemented as a pair of methods using the standard naming convention of BeginSubscribe and EndSubscribe.
Namespace: Amazon.SimpleNotificationService
Assembly: AWSSDK.SimpleNotificationService.dll
Version: 3.x.y.z
public abstract Task<SubscribeResponse> SubscribeAsync( String topicArn, String protocol, String endpoint, CancellationToken cancellationToken )
The ARN of the topic you want to subscribe to.
The protocol that you want to use. Supported protocols include: http – delivery of JSON-encoded message via HTTP POST https – delivery of JSON-encoded message via HTTPS POST email – delivery of message via SMTP email-json – delivery of JSON-encoded message via SMTP sms – delivery of message via SMS sqs – delivery of JSON-encoded message to an Amazon SQS queue application – delivery of JSON-encoded message to an EndpointArn for a mobile app and device lambda – delivery of JSON-encoded message to an Lambda function firehose – delivery of JSON-encoded message to an Amazon Kinesis Data Firehose delivery stream.
The endpoint that you want to receive notifications. Endpoints vary by protocol: For the http protocol, the (public) endpoint is a URL beginning with http://. For the https protocol, the (public) endpoint is a URL beginning with https://. For the email protocol, the endpoint is an email address. For the email-json protocol, the endpoint is an email address. For the sms protocol, the endpoint is a phone number of an SMS-enabled device. For the sqs protocol, the endpoint is the ARN of an Amazon SQS queue. For the application protocol, the endpoint is the EndpointArn of a mobile app and device. For the lambda protocol, the endpoint is the ARN of an Lambda function. For the firehose protocol, the endpoint is the ARN of an Amazon Kinesis Data Firehose delivery stream.
A cancellation token that can be used by other objects or threads to receive notice of cancellation.
Exception | Condition |
---|---|
AuthorizationErrorException | Indicates that the user has been denied access to the requested resource. |
FilterPolicyLimitExceededException | Indicates that the number of filter polices in your Amazon Web Services account exceeds the limit. To add more filter polices, submit an Amazon SNS Limit Increase case in the Amazon Web Services 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. |
ReplayLimitExceededException | Indicates that the request parameter has exceeded the maximum number of concurrent message replays. |
SubscriptionLimitExceededException | Indicates that the customer already owns the maximum allowed number of subscriptions. |
.NET Core App:
Supported in: 3.1
.NET Standard:
Supported in: 2.0
.NET Framework:
Supported in: 4.5