CreateEventDestination - Amazon Pinpoint SMS and Voice v2 API

CreateEventDestination

Creates a new event destination in a configuration set.

An event destination is a location where you send message events. The event options are Amazon CloudWatch, Amazon Kinesis Data Firehose, or Amazon SNS. For example, when a message is delivered successfully, you can send information about that event to an event destination, or send notifications to endpoints that are subscribed to an Amazon SNS topic.

Each configuration set can contain between 0 and 5 event destinations. Each event destination can contain a reference to a single destination, such as a CloudWatch or Kinesis Data Firehose destination.

Request Syntax

{ "ClientToken": "string", "CloudWatchLogsDestination": { "IamRoleArn": "string", "LogGroupArn": "string" }, "ConfigurationSetName": "string", "EventDestinationName": "string", "KinesisFirehoseDestination": { "DeliveryStreamArn": "string", "IamRoleArn": "string" }, "MatchingEventTypes": [ "string" ], "SnsDestination": { "TopicArn": "string" } }

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

The request accepts the following data in JSON format.

ClientToken

Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If you don't specify a client token, a randomly generated token is used for the request to ensure idempotency.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [!-~]+

Required: No

CloudWatchLogsDestination

An object that contains information about an event destination for logging to Amazon CloudWatch logs.

Type: CloudWatchLogsDestination object

Required: No

ConfigurationSetName

Either the name of the configuration set or the configuration set ARN to apply event logging to. The ConfigurateSetName and ConfigurationSetArn can be found using the DescribeConfigurationSets action.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 256.

Pattern: [A-Za-z0-9_:/-]+

Required: Yes

EventDestinationName

The name that identifies the event destination.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [A-Za-z0-9_-]+

Required: Yes

KinesisFirehoseDestination

An object that contains information about an event destination for logging to Amazon Kinesis Data Firehose.

Type: KinesisFirehoseDestination object

Required: No

MatchingEventTypes

An array of event types that determine which events to log. If "ALL" is used, then Amazon Pinpoint logs every event type.

Type: Array of strings

Array Members: Minimum number of 1 item. Maximum number of 25 items.

Valid Values: ALL | TEXT_ALL | TEXT_SENT | TEXT_PENDING | TEXT_QUEUED | TEXT_SUCCESSFUL | TEXT_DELIVERED | TEXT_INVALID | TEXT_INVALID_MESSAGE | TEXT_UNREACHABLE | TEXT_CARRIER_UNREACHABLE | TEXT_BLOCKED | TEXT_CARRIER_BLOCKED | TEXT_SPAM | TEXT_UNKNOWN | TEXT_TTL_EXPIRED | VOICE_ALL | VOICE_INITIATED | VOICE_RINGING | VOICE_ANSWERED | VOICE_COMPLETED | VOICE_BUSY | VOICE_NO_ANSWER | VOICE_FAILED | VOICE_TTL_EXPIRED

Required: Yes

SnsDestination

An object that contains information about an event destination for logging to Amazon SNS.

Type: SnsDestination object

Required: No

Response Syntax

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

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

ConfigurationSetArn

The ARN of the configuration set.

Type: String

ConfigurationSetName

The name of the configuration set.

Type: String

Length Constraints: Minimum length of 1. Maximum length of 64.

Pattern: [A-Za-z0-9_-]+

EventDestination

The details of the destination where events are logged.

Type: EventDestination object

Errors

For information about the errors that are common to all actions, see Common Errors.

AccessDeniedException

The request was denied because you don't have sufficient permissions to access the resource.

HTTP Status Code: 400

ConflictException

Your request has conflicting operations. This can occur if you're trying to perform more than one operation on the same resource at the same time or it could be that the requested action isn't valid for the current state or configuration of the resource.

HTTP Status Code: 400

InternalServerException

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.

HTTP Status Code: 500

ResourceNotFoundException

A requested resource couldn't be found.

HTTP Status Code: 400

ServiceQuotaExceededException

The request would cause a service quota to be exceeded.

HTTP Status Code: 400

ThrottlingException

An error that occurred because too many requests were sent during a certain amount of time.

HTTP Status Code: 400

ValidationException

A validation exception for a field.

HTTP Status Code: 400

See Also

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