Skip to main content
POST
JavaScript

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Idempotency-Key
string

A unique key that makes this request idempotent. If Courier receives another request with the same Idempotency-Key, it returns the stored response from the first request without performing the operation again (including the original status code and any error). Use it to safely retry POST requests after network failures without risking duplicate sends. The key is scoped to this endpoint.

x-idempotency-expiration
string

How long the idempotency key remains valid, as a Unix epoch timestamp in seconds or an ISO 8601 date string. Only applies when Idempotency-Key is provided. If omitted, the key is retained for 25 hours; the maximum is 1 year.

Path Parameters

templateId
string
required

Journey id

Minimum string length: 1

Body

application/json

Request body for publishing a journey. Pass version to roll back to a prior version; omit to publish the current draft.

version
string
Pattern: ^v\d+$

Response

Published journey

A journey, with its current draft or published nodes and metadata.

id
string
required
name
string
required
state
enum<string>
required

Lifecycle state of a journey.

Available options:
DRAFT,
PUBLISHED
enabled
boolean
required
nodes
(API Invoke Trigger · object | Segment Trigger · object | Send · object | Delay for Duration · object | Delay Until · object | Fetch (GET/DELETE) · object | Fetch (POST/PUT) · object | AI · object | Throttle (Static) · object | Throttle (Dynamic) · object | Batch · object | Add to Digest · object | Exit · object | JourneyBranchNode · object)[]
required

A single node in a journey DAG. Discriminated by type, with a secondary discriminator on some variants (trigger_type for trigger, mode for delay, method for fetch, scope for throttle).

created
integer<int64> | null
required
creator
string | null
required
updated
integer<int64> | null
required
updater
string | null
required
published
integer<int64> | null
required