[ aws . sns ]



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 .

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.


--platform-application-arn <value>
--attributes <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]


--platform-application-arn (string)

PlatformApplicationArn for SetPlatformApplicationAttributes action.

--attributes (map)

A map of the platform application attributes. Attributes in this map include the following:

  • PlatformCredential – The credential received from the notification service. For APNS and APNS_SANDBOX , PlatformCredential is private key . For GCM (Firebase Cloud Messaging), PlatformCredential is API key . For ADM , PlatformCredential is client secret .

  • PlatformPrincipal – The principal received from the notification service. For APNS and APNS_SANDBOX , PlatformPrincipal is SSL certificate . For GCM (Firebase Cloud Messaging), there is no PlatformPrincipal . For ADM , PlatformPrincipal is client id .

  • EventEndpointCreated – Topic ARN to which EndpointCreated event notifications are sent.

  • EventEndpointDeleted – Topic ARN to which EndpointDeleted event notifications are sent.

  • EventEndpointUpdated – Topic ARN to which EndpointUpdate event notifications are sent.

  • EventDeliveryFailure – Topic ARN to which DeliveryFailure event notifications are sent upon Direct Publish delivery failure (permanent) to one of the application’s endpoints.

  • SuccessFeedbackRoleArn – IAM role ARN used to give Amazon SNS write access to use CloudWatch Logs on your behalf.

  • FailureFeedbackRoleArn – IAM role ARN used to give Amazon SNS write access to use CloudWatch Logs on your behalf.

  • SuccessFeedbackSampleRate – Sample rate percentage (0-100) of successfully delivered messages.

key -> (string)

value -> (string)

Shorthand Syntax:


JSON Syntax:

{"string": "string"

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.


To set platform application attributes

The following set-platform-application-attributes example sets the EventDeliveryFailure attribute for the specified platform application to the ARN of the specified Amazon SNS topic.

aws sns set-platform-application-attributes \
    --platform-application-arn arn:aws:sns:us-west-2:123456789012:app/GCM/MyApplication \
    --attributes EventDeliveryFailure=arn:aws:sns:us-west-2:123456789012:AnotherTopic

This command produces no output.