Journey
A journey is an automated workflow that performs a series of messaging activities for an Amazon Pinpoint application. Each activity is a customizable component that specifies what causes the activity to occur, when the activity occurs, what the activity does, and which users the activity applies to. The paths and relationships between activities vary based on conditions and criteria that you define, such as specific user attributes and events.
The Journey resource represents an individual journey that's associated with an Amazon Pinpoint application. The information represented by this resource includes settings for the activities that comprise a journey, settings for the segments that define which users participate in journey activities, the messages that a journey sends, and the schedule that defines when a journey runs.
You can use this resource to retrieve information about, update, or delete a journey. To create a journey, use the Journeys resource.
URI
/v1/apps/application-id
/journeys/journey-id
HTTP Methods
GET
Operation ID: GetJourney
Retrieves information about the status, configuration, and other settings for a journey.
Path Parameters
Name | Type | Required | Description |
---|---|---|---|
journey-id |
String | True |
The unique identifier for the journey. |
application-id |
String | True |
The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console. |
Header Parameters
Name | Type | Required | Description |
---|---|---|---|
accept |
String | False |
Indicates which content types, expressed as MIME types, the client understands. |
Responses
Status Code | Response Model | Description |
---|---|---|
200 |
JourneyResponse |
The request succeeded. |
400 |
MessageBody |
The request contains a syntax error (BadRequestException). |
403 |
MessageBody |
The request was denied because access to the specified resource is forbidden (ForbiddenException). |
404 |
MessageBody |
The request failed because the specified resource was not found (NotFoundException). |
405 |
MessageBody |
The request failed because the method is not allowed for the specified resource (MethodNotAllowedException). |
429 |
MessageBody |
The request failed because too many requests were sent during a certain amount of time (TooManyRequestsException). |
500 |
MessageBody |
The request failed due to an unknown internal server error, exception, or failure (InternalServerErrorException). |
PUT
Operation ID: UpdateJourney
Updates the configuration and other settings for a journey.
Path Parameters
Name | Type | Required | Description |
---|---|---|---|
journey-id |
String | True |
The unique identifier for the journey. |
application-id |
String | True |
The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console. |
Header Parameters
Name | Type | Required | Description |
---|---|---|---|
accept |
String | False |
Indicates which content types, expressed as MIME types, the client understands. |
Responses
Status Code | Response Model | Description |
---|---|---|
200 |
JourneyResponse |
The request succeeded. |
400 |
MessageBody |
The request contains a syntax error (BadRequestException). |
403 |
MessageBody |
The request was denied because access to the specified resource is forbidden (ForbiddenException). |
404 |
MessageBody |
The request failed because the specified resource was not found (NotFoundException). |
405 |
MessageBody |
The request failed because the method is not allowed for the specified resource (MethodNotAllowedException). |
429 |
MessageBody |
The request failed because too many requests were sent during a certain amount of time (TooManyRequestsException). |
500 |
MessageBody |
The request failed due to an unknown internal server error, exception, or failure (InternalServerErrorException). |
DELETE
Operation ID: DeleteJourney
Deletes a journey from an application.
Path Parameters
Name | Type | Required | Description |
---|---|---|---|
journey-id |
String | True |
The unique identifier for the journey. |
application-id |
String | True |
The unique identifier for the application. This identifier is displayed as the Project ID on the Amazon Pinpoint console. |
Header Parameters
Name | Type | Required | Description |
---|---|---|---|
accept |
String | False |
Indicates which content types, expressed as MIME types, the client understands. |
Responses
Status Code | Response Model | Description |
---|---|---|
200 |
JourneyResponse |
The request succeeded. |
400 |
MessageBody |
The request contains a syntax error (BadRequestException). |
403 |
MessageBody |
The request was denied because access to the specified resource is forbidden (ForbiddenException). |
404 |
MessageBody |
The request failed because the specified resource was not found (NotFoundException). |
405 |
MessageBody |
The request failed because the method is not allowed for the specified resource (MethodNotAllowedException). |
429 |
MessageBody |
The request failed because too many requests were sent during a certain amount of time (TooManyRequestsException). |
500 |
MessageBody |
The request failed due to an unknown internal server error, exception, or failure (InternalServerErrorException). |
OPTIONS
Retrieves information about the communication requirements and options that are available for the Journey resource.
Responses
Status Code | Response Model | Description |
---|---|---|
200 |
None |
The request succeeded. |
Schemas
Request Bodies
Example PUT
{ "Name": "string", "Schedule": { "StartTime": "string", "EndTime": "string", "Timezone": "string" }, "StartCondition": { "Description": "string", "eventStartCondition": { "eventFilter": { "Dimensions": { "EventType": { "DimensionType": enum, "Values": [ "string" ] }, "Attributes": { }, "Metrics": { } }, "FilterType": enum }, "segmentId": "string" }, "SegmentStartCondition": { "SegmentId": "string" } }, "Limits": { "DailyCap": integer, "MessagesPerSecond": integer, "EndpointReentryCap": integer }, "StartActivity": "string", "Activities": { }, "RefreshFrequency": "string", "QuietTime": { "Start": "string", "End": "string" }, "LocalTime": boolean, "CreationDate": "string", "LastModifiedDate": "string", "State": enum }
Response Bodies
Example JourneyResponse
{ "Name": "string", "Schedule": { "StartTime": "string", "EndTime": "string", "Timezone": "string" }, "StartCondition": { "Description": "string", "eventStartCondition": { "eventFilter": { "Dimensions": { "EventType": { "DimensionType": enum, "Values": [ "string" ] }, "Attributes": { }, "Metrics": { } }, "FilterType": enum }, "segmentId": "string" }, "SegmentStartCondition": { "SegmentId": "string" } }, "Limits": { "DailyCap": integer, "MessagesPerSecond": integer, "EndpointReentryCap": integer }, "StartActivity": "string", "Activities": { }, "RefreshFrequency": "string", "QuietTime": { "Start": "string", "End": "string" }, "LocalTime": boolean, "CreationDate": "string", "LastModifiedDate": "string", "State": enum, "Id": "string", "ApplicationId": "string", "tags": { } }
Example MessageBody
{ "RequestID": "string", "Message": "string" }
Properties
Activity
Specifies the configuration and other settings for an activity in a journey.
AttributeDimension
Specifies attribute-based criteria for including or excluding endpoints from a segment.
Condition
Specifies the conditions to evaluate for an activity in a journey, and how to evaluate those conditions.
Property | Type | Required | Description |
---|---|---|---|
Conditions |
Array of type SimpleCondition |
False |
The conditions to evaluate for the activity. |
Operator |
string Values: |
False |
Specifies how to handle multiple conditions for the activity. For example, if you specify two conditions for an activity, whether both or only one of the conditions must be met for the activity to be performed. |
ConditionalSplitActivity
Specifies the settings for a yes/no split activity in a journey. This type of activity sends participants down one of two paths in a journey, based on conditions that you specify.
EmailMessageActivity
Specifies the settings for an email activity in a journey. This type of activity sends an email message to participants.
EventCondition
Specifies the conditions to evaluate for an event that applies to an activity in a journey.
EventDimensions
Specifies the dimensions for an event filter that determines when a campaign is sent or a journey activity is performed.
EventFilter
Specifies the settings for an event that causes a campaign to be sent or a journey activity to be performed.
Property | Type | Required | Description |
---|---|---|---|
Dimensions |
True |
The dimensions for the event filter to use for the campaign or the journey activity. |
|
FilterType |
string Values: |
True |
The type of event that causes the campaign to be sent or the journey activity to
be performed. Valid values are: |
EventStartCondition
Specifies the settings for an event that causes a journey activity to start.
GPSCoordinates
Specifies the GPS coordinates of a location.
GPSPointDimension
Specifies GPS-based criteria for including or excluding endpoints from a segment.
HoldoutActivity
Specifies the settings for a holdout activity in a journey. This type of activity stops a journey for a specified percentage of participants.
JourneyEmailMessage
Specifies the "From" address for an email message that's sent to participants in a journey.
JourneyLimits
Specifies limits on the messages that a journey can send and the number of times participants can enter a journey.
JourneyResponse
Provides information about the status, configuration, and other settings for a journey.
JourneySchedule
Specifies the schedule settings for a journey.
MessageBody
Provides information about an API request or response.
MetricDimension
Specifies metric-based criteria for including or excluding endpoints from a segment. These criteria derive from custom metrics that you define for endpoints.
MultiConditionalBranch
Specifies a condition to evaluate for an activity path in a journey.
MultiConditionalSplitActivity
Specifies the settings for a multivariate split activity in a journey. This type of activity sends participants down one of as many as five paths (including a default Else path) in a journey, based on conditions that you specify.
Property | Type | Required | Description |
---|---|---|---|
Branches |
Array of type MultiConditionalBranch |
False |
The paths for the activity, including the conditions for entering each path and the activity to perform for each path. |
DefaultActivity |
string |
False |
The unique identifier for the activity to perform for participants who don't meet any of the conditions specified for other paths in the activity. |
EvaluationWaitTime |
False |
The amount of time to wait or the date and time when Amazon Pinpoint determines whether the conditions are met. |
QuietTime
Specifies the start and end times that define a time range when messages aren't sent to endpoints.
RandomSplitActivity
Specifies the settings for a random split activity in a journey. This type of activity randomly sends specified percentages of participants down one of as many as five paths in a journey, based on conditions that you specify.
Property | Type | Required | Description |
---|---|---|---|
Branches |
Array of type RandomSplitEntry |
False |
The paths for the activity, including the percentage of participants to enter each path and the activity to perform for each path. |
RandomSplitEntry
Specifies the settings for a path in a random split activity in a journey.
RecencyDimension
Specifies criteria for including or excluding endpoints from a segment based on how recently an endpoint was active.
SegmentBehaviors
Specifies dimension settings for including or excluding endpoints from a segment based on how recently an endpoint was active.
SegmentCondition
Specifies a segment to associate with an activity in a journey.
SegmentDemographics
Specifies demographic-based dimension settings for including or excluding endpoints from a segment. These settings derive from characteristics of endpoint devices, such as platform, make, and model.
SegmentDimensions
Specifies the dimension settings for a segment.
SegmentLocation
Specifies geographical dimension settings for a segment.
SetDimension
Specifies the dimension type and values for a segment dimension.
SimpleCondition
Specifies a condition to evaluate for an activity in a journey.
StartCondition
Specifies the conditions for the first activity in a journey. This activity and its conditions determine which users are participants in a journey.
WaitActivity
Specifies the settings for a wait activity in a journey. This type of activity waits for a certain amount of time or until a specific date and time before moving participants to the next activity in a journey.
WaitTime
Specifies a duration or a date and time that indicates when Amazon Pinpoint determines whether an activity's conditions have been met or an activity moves participants to the next activity in a journey.
WriteJourneyRequest
Specifies the configuration and other settings for a journey.
Property | Type | Required | Description |
---|---|---|---|
Name |
string |
True |
The name of the journey. A journey name can contain a maximum of 150 characters. The characters can be alphanumeric characters or symbols, such as underscores (_) or hyphens (-). A journey name can't contain any spaces. |
Schedule |
False |
The schedule settings for the journey. |
|
StartCondition |
False |
The segment that defines which users are participants in the journey. |
|
Limits |
False |
The messaging and entry limits for the journey. |
|
StartActivity |
string |
False |
The unique identifier for the first activity in the journey. An activity identifier can contain a maximum of 128 characters. The characters must be alphanumeric characters. |
Activities |
object |
False |
A map that contains a set of |
RefreshFrequency |
string |
False |
The frequency with which Amazon Pinpoint evaluates segment and event data for the journey, as a duration in ISO 8601 format. |
QuietTime |
False |
The quiet time settings for the journey. Quiet time is a specific time range when a journey doesn't send messages to participants, if all the following conditions are met:
If any of the preceding conditions isn't met, the participant will receive messages from the journey, even if quiet time is enabled. |
|
LocalTime |
boolean |
False |
Specifies whether the journey's scheduled start and end times use each
participant's local time. To base the schedule on each participant's local time, set
this value to |
CreationDate |
string |
False |
The date, in ISO 8601 format, when the journey was created. |
LastModifiedDate |
string |
False |
The date, in ISO 8601 format, when the journey was last modified. |
State |
string Values: |
False |
The status of the journey. Valid values are:
The |
See Also
For more information about using this API in one of the language-specific AWS SDKs and references, see the following: