ExAws v1.0.0-rc.4 ExAws.SNS

Operations on AWS SNS

http://docs.aws.amazon.com/sns/latest/APIReference/API_Operations.html

Summary

Types

endpoint_arn()
endpoint_arn :: binary
endpoint_attributes()
endpoint_attributes :: [token: binary, enabled: boolean, custom_user_data: binary]
message_attribute()
message_attribute :: %{name: binary, data_type: :string | :number | :binary, value: {:string, binary} | {:binary, binary}}
platform_application_arn()
publish_opts()
publish_opts :: [message_attributes: [message_attribute], message_structure: :json, subject: binary, phone_number: binary, target_arn: binary, topic_arn: binary]
topic_arn()
topic_arn :: binary
topic_attribute_name()
topic_attribute_name :: :policy | :display_name | :delivery_policy
topic_name()
topic_name :: binary

Functions

build_message_attribute(arg, params)
create_platform_application(name, platform)
create_platform_application(name :: binary, platform :: binary) :: ExAws.Operation.Query.t

Create plaform application

create_platform_endpoint(platform_application_arn, token, custom_user_data \\ nil)
create_platform_endpoint(platform_application_arn :: platform_application_arn, token :: binary, custom_user_data :: binary) :: ExAws.Operation.Query.t

Create platform endpoint

create_topic(topic_name)
create_topic(topic_name :: topic_name) :: ExAws.Operation.Query.t

Create topic

delete_endpoint(endpoint_arn)
delete_endpoint(endpoint_arn :: endpoint_arn) :: ExAws.Operation.Query.t

Delete endpoint

delete_platform_application(platform_application_arn)
delete_platform_application(platform_application_arn :: platform_application_arn) :: ExAws.Operation.Query.t

Delete platform application

delete_topic(topic_arn)
delete_topic(topic_arn :: topic_arn) :: ExAws.Operation.Query.t

Delete topic

get_endpoint_attributes(endpoint_arn)
get_endpoint_attributes(endpoint_arn :: endpoint_arn) :: ExAws.Operation.Query.t

Get endpoint attributes

get_topic_attributes(topic_arn)
get_topic_attributes(topic_arn :: topic_arn) :: ExAws.Operation.Query.t

Get topic attributes

list_subscriptions()
list_subscriptions :: ExAws.Operation.Query.t

List Subscriptions

list_subscriptions(next_token)
list_subscriptions(next_token :: binary) :: ExAws.Operation.Query.t
list_topics(opts \\ [])
list_topics(opts :: [{:next_token, binary}]) :: ExAws.Operation.Query.t

List topics

publish(message, opts)
publish(message :: binary, opts :: publish_opts) :: ExAws.Operation.Query.t

Publish message to a target/topic ARN

You must set either :phone_number, :target_arn or :topic_arn but only one, via the options argument.

Do NOT assume that because your message is a JSON blob that you should set message_structure: to :json. This has a very specific meaning, please see http://docs.aws.amazon.com/sns/latest/api/API_Publish.html for details.

set_endpoint_attributes(endpoint_arn, attributes)
set_endpoint_attributes(endpoint_arn :: endpoint_arn, attributes :: endpoint_attributes) :: ExAws.Operation.Query.t

Set endpoint attributes

set_topic_attributes(attribute_name, attribute_value, topic_arn)
set_topic_attributes(attribute_name :: topic_attribute_name, attribute_value :: binary, topic_arn :: topic_arn) :: ExAws.Operation.Query.t

Set topic attributes

subscribe(topic_arn, protocol, endpoint)
subscribe(topic_arn :: binary, protocol :: binary, endpoint :: binary) :: ExAws.Operation.Query.t

Create Subscription