2018/06/01 - Amazon Simple Notification Service - 1 updated api methods
Changes The SNS Subscribe API has been updated with two new optional parameters: Attributes and ReturnSubscriptionArn. Attributes is a map of subscription attributes which can be one or more of: FilterPolicy, DeliveryPolicy, and RawMessageDelivery. ReturnSubscriptionArn is a boolean parameter that overrides the default behavior of returning "pending confirmation" for subscriptions that require confirmation instead of returning the subscription ARN.
{'Attributes': {'string': 'string'}, 'ReturnSubscriptionArn': 'boolean'}
Prepares to subscribe an endpoint by sending the endpoint a confirmation message. To actually create a subscription, the endpoint owner must call the ConfirmSubscription action with the token from the confirmation message. Confirmation tokens are valid for three days.
This action is throttled at 100 transactions per second (TPS).
See also: AWS API Documentation
Request Syntax
client.subscribe( TopicArn='string', Protocol='string', Endpoint='string', Attributes={ 'string': 'string' }, ReturnSubscriptionArn=True|False )
string
[REQUIRED]
The ARN of the topic you want to subscribe to.
string
[REQUIRED]
The protocol you want to use. Supported protocols include:
http -- delivery of JSON-encoded message via HTTP POST
https -- delivery of JSON-encoded message via HTTPS POST
email -- delivery of message via SMTP
email-json -- delivery of JSON-encoded message via SMTP
sms -- delivery of message via SMS
sqs -- delivery of JSON-encoded message to an Amazon SQS queue
application -- delivery of JSON-encoded message to an EndpointArn for a mobile app and device.
lambda -- delivery of JSON-encoded message to an AWS Lambda function.
string
The endpoint that you want to receive notifications. Endpoints vary by protocol:
For the http protocol, the endpoint is an URL beginning with "http://"
For the https protocol, the endpoint is a URL beginning with "https://"
For the email protocol, the endpoint is an email address
For the email-json protocol, the endpoint is an email address
For the sms protocol, the endpoint is a phone number of an SMS-enabled device
For the sqs protocol, the endpoint is the ARN of an Amazon SQS queue
For the application protocol, the endpoint is the EndpointArn of a mobile app and device.
For the lambda protocol, the endpoint is the ARN of an AWS Lambda function.
dict
Assigns attributes to the subscription as a map of key-value pairs. You can assign any attribute that is supported by the SetSubscriptionAttributes action.
(string) --
(string) --
boolean
Sets whether the response from the Subscribe request includes the subscription ARN, even if the subscription is not yet confirmed.
If you set this parameter to false , the response includes the ARN for confirmed subscriptions, but it includes an ARN value of "pending subscription" for subscriptions that are not yet confirmed. A subscription becomes confirmed when the subscriber calls the ConfirmSubscription action with a confirmation token.
If you set this parameter to true , the response includes the ARN in all cases, even if the subscription is not yet confirmed.
The default value is false .
dict
Response Syntax
{ 'SubscriptionArn': 'string' }
Response Structure
(dict) --
Response for Subscribe action.
SubscriptionArn (string) --
The ARN of the subscription if it is confirmed, or the string "pending confirmation" if the subscription requires confirmation. However, if the API request parameter ReturnSubscriptionArn is true, then the value is always the subscription ARN, even if the subscription requires confirmation.