CreateEventSubscription - AWS Database Migration Service

CreateEventSubscription

Creates an AWS DMS event notification subscription.

You can specify the type of source (SourceType) you want to be notified of, provide a list of AWS DMS source IDs (SourceIds) that triggers the events, and provide a list of event categories (EventCategories) for events you want to be notified of. If you specify both the SourceType and SourceIds, such as SourceType = replication-instance and SourceIdentifier = my-replinstance, you will be notified of all the replication instance events for the specified source. If you specify a SourceType but don't specify a SourceIdentifier, you receive notice of the events for that source type for all your AWS DMS sources. If you don't specify either SourceType nor SourceIdentifier, you will be notified of events generated from all AWS DMS sources belonging to your customer account.

For more information about AWS DMS events, see Working with Events and Notifications in the AWS Database Migration Service User Guide.

Request Syntax

{ "Enabled": boolean, "EventCategories": [ "string" ], "SnsTopicArn": "string", "SourceIds": [ "string" ], "SourceType": "string", "SubscriptionName": "string", "Tags": [ { "Key": "string", "ResourceArn": "string", "Value": "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.

Enabled

A Boolean value; set to true to activate the subscription, or set to false to create the subscription but not activate it.

Type: Boolean

Required: No

EventCategories

A list of event categories for a source type that you want to subscribe to. For more information, see Working with Events and Notifications in the AWS Database Migration Service User Guide.

Type: Array of strings

Required: No

SnsTopicArn

The Amazon Resource Name (ARN) of the Amazon SNS topic created for event notification. The ARN is created by Amazon SNS when you create a topic and subscribe to it.

Type: String

Required: Yes

SourceIds

A list of identifiers for which AWS DMS provides notification events.

If you don't specify a value, notifications are provided for all sources.

If you specify multiple values, they must be of the same type. For example, if you specify a database instance ID, then all of the other values must be database instance IDs.

Type: Array of strings

Required: No

SourceType

The type of AWS DMS resource that generates the events. For example, if you want to be notified of events generated by a replication instance, you set this parameter to replication-instance. If this value isn't specified, all events are returned.

Valid values: replication-instance | replication-task

Type: String

Required: No

SubscriptionName

The name of the AWS DMS event notification subscription. This name must be less than 255 characters.

Type: String

Required: Yes

Tags

One or more tags to be assigned to the event subscription.

Type: Array of Tag objects

Required: No

Response Syntax

{ "EventSubscription": { "CustomerAwsId": "string", "CustSubscriptionId": "string", "Enabled": boolean, "EventCategoriesList": [ "string" ], "SnsTopicArn": "string", "SourceIdsList": [ "string" ], "SourceType": "string", "Status": "string", "SubscriptionCreationTime": "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.

EventSubscription

The event subscription that was created.

Type: EventSubscription object

Errors

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

KMSAccessDeniedFault

The ciphertext references a key that doesn't exist or that the DMS account doesn't have access to.

HTTP Status Code: 400

KMSDisabledFault

The specified KMS key isn't enabled.

HTTP Status Code: 400

KMSInvalidStateFault

The state of the specified AWS KMS resource isn't valid for this request.

HTTP Status Code: 400

KMSNotFoundFault

The specified AWS KMS entity or resource can't be found.

HTTP Status Code: 400

KMSThrottlingFault

This request triggered AWS KMS request throttling.

HTTP Status Code: 400

ResourceAlreadyExistsFault

The resource you are attempting to create already exists.

HTTP Status Code: 400

ResourceNotFoundFault

The resource could not be found.

HTTP Status Code: 400

ResourceQuotaExceededFault

The quota for this resource quota has been exceeded.

HTTP Status Code: 400

SNSInvalidTopicFault

The SNS topic is invalid.

HTTP Status Code: 400

SNSNoAuthorizationFault

You are not authorized for the SNS subscription.

HTTP Status Code: 400

See Also

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