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).
For .NET Core this operation is only available in asynchronous form. Please refer to SubscribeAsync.
Namespace: Amazon.SimpleNotificationService
Assembly: AWSSDK.SimpleNotificationService.dll
Version: 3.x.y.z
public virtual SubscribeResponse Subscribe( String topicArn, String protocol, String endpoint )
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.
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 Framework:
Supported in: 4.5 and newer, 3.5