ExAws.SNS v2.1.0 ExAws.SNS View Source

Operations on AWS SNS

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

Link to this section Summary

Functions

Get endpoint attributes

Get subscription attributes

Get topic attributes

List endpooints and endpoint attributes for devices in a supported push notification service

List phone numbers opted out

List platform applications

List Subscriptions

Opt in phone number

Publish message to a target/topic ARN

Verify message signature

Link to this section Types

Link to this type

endpoint_arn()

View Source
endpoint_arn() :: binary()
Link to this type

endpoint_attributes()

View Source
endpoint_attributes() :: [
  token: binary(),
  enabled: boolean(),
  custom_user_data: binary()
]
Link to this type

list_endpoints_by_platform_application_opt()

View Source
list_endpoints_by_platform_application_opt() :: {:next_token, binary()}
Link to this type

list_subscriptions_by_topic_opt()

View Source
list_subscriptions_by_topic_opt() :: {:next_token, binary()}
Link to this type

message_attribute()

View Source
message_attribute() :: %{
  name: binary(),
  data_type: :string | :number | :binary,
  value: {:string, binary()} | {:binary, binary()}
}
Link to this type

platform_application_arn()

View Source
platform_application_arn() :: binary()
Link to this type

publish_opts()

View Source
publish_opts() :: [
  message_attributes: [message_attribute()],
  message_structure: :json,
  subject: binary(),
  phone_number: binary(),
  target_arn: binary(),
  topic_arn: binary()
]
Link to this type

subscribe_opt()

View Source
subscribe_opt() :: {:return_subscription_arn, boolean()}
Link to this type

subscription_attribute_name()

View Source
subscription_attribute_name() ::
  :delivery_policy | :filter_policy | :raw_message_delivery
Link to this type

topic_arn()

View Source
topic_arn() :: binary()
Link to this type

topic_attribute_name()

View Source
topic_attribute_name() :: :policy | :display_name | :delivery_policy
Link to this type

topic_name()

View Source
topic_name() :: binary()

Link to this section Functions

Link to this function

build_message_attribute(arg, params)

View Source
Link to this function

confirm_subscription(topic_arn, token, authenticate_on_unsubscribe \\ false)

View Source
confirm_subscription(
  topic_arn :: binary(),
  token :: binary(),
  authenticate_on_unsubscribe :: boolean()
) :: ExAws.Operation.Query.t()

Confirm Subscription

Link to this function

create_platform_application(name, platform, attributes)

View Source
create_platform_application(
  name :: binary(),
  platform :: binary(),
  attributes :: %{required(String.t()) => String.t()}
) :: ExAws.Operation.Query.t()

Create plaform application

Link to this function

create_platform_endpoint(platform_application_arn, token, custom_user_data \\ nil)

View Source
create_platform_endpoint(
  platform_application_arn :: platform_application_arn(),
  token :: binary(),
  custom_user_data :: binary()
) :: ExAws.Operation.Query.t()

Create platform endpoint

Link to this function

create_topic(topic_name)

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

Create topic

Link to this function

delete_endpoint(endpoint_arn)

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

Delete endpoint

Link to this function

delete_platform_application(platform_application_arn)

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

Delete platform application

Link to this function

delete_topic(topic_arn)

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

Delete topic

Link to this function

get_endpoint_attributes(endpoint_arn)

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

Get endpoint attributes

Link to this function

get_platform_application_attributes(platform_application_arn)

View Source
get_platform_application_attributes(
  platform_application_arn :: platform_application_arn()
) :: ExAws.Operation.Query.t()

Get platform application attributes

Link to this function

get_subscription_attributes(subscription_arn)

View Source
get_subscription_attributes(subscription_arn :: binary()) ::
  ExAws.Operation.Query.t()

Get subscription attributes

Link to this function

get_topic_attributes(topic_arn)

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

Get topic attributes

Link to this function

list_endpoints_by_platform_application(platform_application_arn, opts \\ [])

View Source
list_endpoints_by_platform_application(topic_arn :: topic_arn(), [
  list_endpoints_by_platform_application_opt()
]) :: ExAws.Operation.Query.t()

List endpooints and endpoint attributes for devices in a supported push notification service

Link to this function

list_phone_numbers_opted_out()

View Source
list_phone_numbers_opted_out() :: ExAws.Operation.Query.t()

List phone numbers opted out

Link to this function

list_phone_numbers_opted_out(next_token)

View Source
list_phone_numbers_opted_out(next_token :: binary()) ::
  ExAws.Operation.Query.t()
Link to this function

list_platform_applications()

View Source
list_platform_applications() :: ExAws.Operation.Query.t()

List platform applications

Link to this function

list_platform_applications(next_token)

View Source
list_platform_applications(next_token :: binary()) :: ExAws.Operation.Query.t()
Link to this function

list_subscriptions()

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

List Subscriptions

Link to this function

list_subscriptions(next_token)

View Source
list_subscriptions(next_token :: binary()) :: ExAws.Operation.Query.t()
Link to this function

list_subscriptions_by_topic(topic_arn, opts \\ [])

View Source
list_subscriptions_by_topic(topic_arn :: topic_arn(), [
  list_subscriptions_by_topic_opt()
]) :: ExAws.Operation.Query.t()

List Subscriptions by Topic

Link to this function

list_topics(opts \\ [])

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

List topics

Link to this function

opt_in_phone_number(phone_number)

View Source
opt_in_phone_number(phone_number :: binary()) :: ExAws.Operation.Query.t()

Opt in phone number

Link to this function

publish(message, opts)

View Source
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.

Link to this function

set_endpoint_attributes(endpoint_arn, attributes)

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

Set endpoint attributes

Link to this function

set_subscription_attributes(attribute_name, attribute_value, subscription_arn)

View Source
set_subscription_attributes(
  attribute_name :: subscription_attribute_name(),
  attribute_value :: binary(),
  subscription_arn :: binary()
) :: ExAws.Operation.Query.t()

Set subscription attributes

Link to this function

set_topic_attributes(attribute_name, attribute_value, topic_arn)

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

Set topic attributes

Link to this function

subscribe(topic_arn, protocol, endpoint, opts \\ [])

View Source
subscribe(topic_arn :: binary(), protocol :: binary(), endpoint :: binary(), [
  subscribe_opt()
]) :: ExAws.Operation.Query.t()

Create Subscription

Link to this function

unsubscribe(subscription_arn)

View Source
unsubscribe(subscription_arn :: binary()) :: ExAws.Operation.Query.t()

Unsubscribe

Link to this function

verify_message(message_params)

View Source
verify_message(message_params :: %{required(String.t()) => String.t()}) :: [
  :ok | {:error, String.t()}
]

Verify message signature