Skip to main content
POST
/
journeys
/
{templateId}
/
publish
JavaScript
import Courier from '@trycourier/courier';

const client = new Courier({
  apiKey: process.env['COURIER_API_KEY'], // This is the default and can be omitted
});

const journeyResponse = await client.journeys.publish('x');

console.log(journeyResponse.id);
{
  "id": "abc-123",
  "name": "Welcome Journey",
  "state": "PUBLISHED",
  "enabled": true,
  "nodes": [],
  "created": 1715000000000,
  "creator": "user-1",
  "updated": 1715000300000,
  "updater": "user-1",
  "published": 1715000400000
}

Documentation Index

Fetch the complete documentation index at: https://www.courier.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

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

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 | 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