View a markdown version of this page

PutSegmentSubscription - Amazon Connect Customer

PutSegmentSubscription

Creates or updates a segment subscription for membership events. When a subscription is created, an initial snapshot is taken and the system begins monitoring for membership changes.

You can optionally set a schedule configuration interval to control how often membership snapshots are run. The interval can be from 1 to 24 hours. If not set, the interval defaults to 24 hours. Scheduled snapshots run on a best-effort basis. If a scheduled snapshot takes longer than the configured interval, the next scheduled run does not start until the in-progress snapshot completes, so a run might be delayed or skipped and is not guaranteed to occur at exactly the requested time.

For Classic segments, membership events are generated from these scheduled snapshots and also in near real-time as profile attribute changes occur. For SQL segments, membership events are generated only from the scheduled snapshots.

Request Syntax

PUT /domains/DomainName/segment-definitions/SegmentDefinitionName/subscriptions HTTP/1.1 Content-type: application/json { "ScheduleConfiguration": { "Interval": number, "Unit": "string" } }

URI Request Parameters

The request uses the following URI parameters.

DomainName

The unique name of the domain.

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

Pattern: ^[a-zA-Z0-9_-]+$

Required: Yes

SegmentDefinitionName

The unique name of the segment definition.

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

Pattern: ^[a-zA-Z0-9_-]+$

Required: Yes

Request Body

The request accepts the following data in JSON format.

ScheduleConfiguration

The optional schedule configuration that controls how often membership snapshots are run. If not provided, the subscription defaults to a 24-hour interval.

Type: ScheduleConfiguration object

Required: No

Response Syntax

HTTP/1.1 200 Content-type: application/json { "ScheduleConfiguration": { "Interval": number, "Unit": "string" }, "StartedAt": number, "Status": "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.

ScheduleConfiguration

The schedule configuration for the subscription, if configured.

Type: ScheduleConfiguration object

StartedAt

The timestamp of when the subscription was started.

Type: Timestamp

Status

The current lifecycle status of the subscription. The following are valid values:

  • STARTING: Initial snapshot is in progress.

  • RUNNING: Notifications are active and running.

  • STOPPED: Notifications have been stopped.

  • FAILED: Notifications failed (for example, the Amazon Kinesis data stream became inaccessible).

Type: String

Valid Values: STARTING | RUNNING | STOPPED | FAILED

Errors

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

AccessDeniedException

You do not have sufficient access to perform this action.

HTTP Status Code: 403

BadRequestException

The input you provided is invalid.

HTTP Status Code: 400

InternalServerException

An internal service error occurred.

HTTP Status Code: 500

ResourceNotFoundException

The requested resource does not exist, or access was denied.

HTTP Status Code: 404

ThrottlingException

You exceeded the maximum number of requests.

HTTP Status Code: 429

See Also

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