Event Destinations - Amazon Pinpoint SMS and Voice

Event Destinations

An event destination is a location where you send response information about the voice messages that you send. For example, when a voice message is delivered successfully, you can send information about that event to an Amazon CloudWatch destination.

Each configuration set can contain between 0 and 10 event destinations. Each event destination can contain a reference to one (and only one) destination, such as an Amazon CloudWatch log or Amazon Kinesis Data Firehose destination.

URI

/v1/sms-voice/configuration-sets/ConfigurationSetName/event-destinations

HTTP Methods

GET

Operation ID: GetConfigurationSetEventDestinations

Retrieves information about an event destination, including the types of events it reports, the Amazon Resource Name (ARN) of the destination, and the name of the event destination.

Path Parameters
Name Type Required Description
ConfigurationSetName String True

The name of the configuration set that contains the event destination that you want to obtain information about.

Responses
Status Code Response Model Description
200 GetConfigurationSetEventDestinationsResponse

An object that contains information about an event destination.

400 BadRequestException

The request contained syntax that the API couldn't interpret. Modify the request and try again.

404 NotFoundException

The requested resource wasn't found.

429 TooManyRequestsException

You've made too many GET requests in one second. Requests are limited to 1 per second.

500 InternalServiceErrorException

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

POST

Operation ID: CreateConfigurationSetEventDestination

Creates a new event destination in a configuration set.

Path Parameters
Name Type Required Description
ConfigurationSetName String True

The name of the configuration set that you want to create the event destination in.

Responses
Status Code Response Model Description
200 CreateConfigurationSetEventDestinationResponse

An empty object that indicates that the event destination was created successfully.

400 BadRequestException

The request contained syntax that the API couldn't interpret. Modify the request and try again.

404 NotFoundException

The requested resource wasn't found.

409 AlreadyExistsException

The resource you tried to create already exists.

412 LimitExceededException

You've tried to create a number of resources that exceeds the maximum number of resources for your account. For more information, see Amazon Pinpoint Quotas in the Amazon Pinpoint Developer Guide.

429 TooManyRequestsException

You've issued too many requests to the resource. Wait a few minutes, and then try again.

500 InternalServiceErrorException

The API encountered an unexpected error and couldn't complete the request. You might be able to successfully issue the request again in the future.

OPTIONS

Responses
Status Code Response Model Description
200 None

200 response

Schemas

Request Bodies

Example POST

{ "EventDestinationName": "string", "EventDestination": { "SnsDestination": { "TopicArn": "string" }, "Enabled": boolean, "MatchingEventTypes": [ enum ], "CloudWatchLogsDestination": { "IamRoleArn": "string", "LogGroupArn": "string" }, "KinesisFirehoseDestination": { "DeliveryStreamArn": "string", "IamRoleArn": "string" } } }

Response Bodies

Example GetConfigurationSetEventDestinationsResponse

{ "EventDestinations": [ { "SnsDestination": { "TopicArn": "string" }, "Enabled": boolean, "MatchingEventTypes": [ enum ], "CloudWatchLogsDestination": { "IamRoleArn": "string", "LogGroupArn": "string" }, "KinesisFirehoseDestination": { "DeliveryStreamArn": "string", "IamRoleArn": "string" }, "Name": "string" } ] }

Example CreateConfigurationSetEventDestinationResponse

{ }

Example BadRequestException

{ "Message": "string" }

Example NotFoundException

{ "Message": "string" }

Example AlreadyExistsException

{ "Message": "string" }

Example LimitExceededException

{ "Message": "string" }

Example TooManyRequestsException

{ "Message": "string" }

Example InternalServiceErrorException

{ "Message": "string" }

Properties

AlreadyExistsException

The resource that you specified in your request already exists.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

BadRequestException

The input that you provided to the API is invalid.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

CloudWatchLogsDestination

An object that contains information about an event destination that sends data to Amazon CloudWatch Logs.

Property Type Required Description
IamRoleArn

string

True

The Amazon Resource Name (ARN) of an Amazon Identity and Access Management (IAM) role that is able to write event data to an Amazon CloudWatch destination.

LogGroupArn

string

True

The name of the Amazon CloudWatch Log Group that you want to record events in.

CreateConfigurationSetEventDestinationRequest

An object that is used to define an event destination.

Property Type Required Description
EventDestinationName

string

True

A name that identifies the event destination.

EventDestination

EventDestinationDefinition

True

An EventDestinationDefinition object that includes information about the event destination itself.

CreateConfigurationSetEventDestinationResponse

An empty object that indicates that the event destination was created successfully.

EventDestination

An object that defines an event destination.

Property Type Required Description
SnsDestination

SnsDestination

False

An object that contains information about an event destination that sends data to Amazon SNS.

Enabled

boolean

False

Indicates whether or not the event destination is enabled. If the event destination is enabled, then Amazon Pinpoint sends response data to the specified event destination.

MatchingEventTypes

Array of type EventType

False

The types of events that you want to send to the event destination. Possible values:

  • INITIATED_CALL - Amazon Pinpoint started trying to deliver the message to the recipient.

  • RINGING - Amazon Pinpoint initiated the phone call, and the recipient's phone is ringing.

  • ANSWERED - Amazon Pinpoint established a connection with the recipient.

    Note

    This status doesn't necessarily mean that Amazon Pinpoint made a connection with a human recipient. For example, it could indicate that Amazon Pinpoint established a connection with a voicemail system.

  • COMPLETED_CALL - Amazon Pinpoint played the audio message to the recipient.

    Note

    This status doesn't necessarily mean that the message was delivered to a human recipient. For example, it could indicate that the audio message was delivered to a voicemail system.

  • BUSY - Amazon Pinpoint attempted to deliver the voice message, but received a busy signal.

  • FAILED - Amazon Pinpoint wasn't able to deliver the message.

  • NO_ANSWER - Amazon Pinpoint attempted to deliver the message, but the recipient didn't answer.

CloudWatchLogsDestination

CloudWatchLogsDestination

False

An object that contains information about an event destination that sends data to Amazon CloudWatch Logs.

KinesisFirehoseDestination

KinesisFirehoseDestination

False

An object that contains information about an event destination that sends data to Amazon Kinesis Data Firehose.

Name

string

False

A name that identifies the event destination configuration.

EventDestinationDefinition

An object that defines a single event destination.

Property Type Required Description
SnsDestination

SnsDestination

False

An object that contains information about an event destination that sends data to Amazon SNS.

Enabled

boolean

False

Indicates whether or not the event destination is enabled. If the event destination is enabled, then Amazon Pinpoint sends response data to the specified event destination.

MatchingEventTypes

Array of type EventType

True

The types of events that you want to send to the event destination. Possible values:

  • INITIATED_CALL - Amazon Pinpoint started trying to deliver the message to the recipient.

  • RINGING - Amazon Pinpoint initiated the phone call, and the recipient's phone is ringing.

  • ANSWERED - Amazon Pinpoint established a connection with the recipient.

    Note

    This status doesn't necessarily mean that Amazon Pinpoint made a connection with a human recipient. For example, it could indicate that Amazon Pinpoint established a connection with a voicemail system.

  • COMPLETED_CALL - Amazon Pinpoint played the audio message to the recipient.

    Note

    This status doesn't necessarily mean that the message was delivered to a human recipient. For example, it could indicate that the audio message was delivered to a voicemail system.

  • BUSY - Amazon Pinpoint attempted to deliver the voice message, but received a busy signal.

  • FAILED - Amazon Pinpoint wasn't able to deliver the message.

  • NO_ANSWER - Amazon Pinpoint attempted to deliver the message, but the recipient didn't answer.

CloudWatchLogsDestination

CloudWatchLogsDestination

False

An object that contains information about an event destination that sends data to Amazon CloudWatch Logs.

KinesisFirehoseDestination

KinesisFirehoseDestination

False

An object that contains information about an event destination that sends data to Amazon Kinesis Data Firehose.

EventType

The types of events that are sent to the event destination. Possible values are:

  • INITIATED_CALL

  • RINGING

  • ANSWERED

  • COMPLETED_CALL

  • BUSY

  • FAILED

  • NO_ANSWER

GetConfigurationSetEventDestinationsResponse

An object that contains information about an event destination.

Property Type Required Description
EventDestinations

Array of type EventDestination

False

An array of EventDestination objects. Each EventDestination object includes ARNs and other information that define an event destination.

InternalServiceErrorException

This error occurs when there is an unexpected issue with the Amazon Pinpoint SMS and Voice API service.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

KinesisFirehoseDestination

An object that contains information about an event destination that sends data to Amazon Kinesis Data Firehose.

Property Type Required Description
DeliveryStreamArn

string

True

The Amazon Resource Name (ARN) of the Amazon Kinesis Data Firehose destination that you want to use in the event destination.

IamRoleArn

string

True

The Amazon Resource Name (ARN) of an IAM role that can write data to an Amazon Kinesis Data Firehose stream.

LimitExceededException

There are too many instances of the specified resource type.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

NotFoundException

The resource you attempted to access doesn't exist.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

SnsDestination

An object that contains information about an event destination that sends data to Amazon SNS.

Property Type Required Description
TopicArn

string

True

The Amazon Resource Name (ARN) of the Amazon SNS topic that you want to publish events to.

TooManyRequestsException

This error occurs when there is an unexpected issue with the Amazon Pinpoint SMS and Voice API service.

Property Type Required Description
Message

string

False

A description of the error that the API encountered.

See Also

For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

GetConfigurationSetEventDestinations

CreateConfigurationSetEventDestination