Skip to main content
covers the snapshot, delays, and cancellation model.
Start a Journey run from the API, then find it by its run ID.

Prerequisites

  • A published journey with an API trigger

Run a journey

1

Invoke a journey

Start a run with the invoke endpoint, referencing the journey by its ID or alias in the path.
  • user_id, or a profile with contact info, for the recipient.
  • data, optional, matching the trigger schema.
  • An Idempotency-Key header, so a retried request returns the same run instead of starting a second one.
The response returns a runId.
2

Inspect a run

Run inspection is a console view. There is no public endpoint for a run’s step-by-step trace. Take the runId from the invoke response, open the journey’s Logs tab, and search for it. The detail view overlays each node’s outcome on the graph. Click a node to see its step context: input data, profile, conditions evaluated, and output. See for the run states and what each view shows.

Cancel a run

Cancel in-flight runs with the cancel endpoint. Target either a cancelation_token, which cancels every run sharing it, or a single run_id. You set the token in the journey’s settings, so runs carry it from the moment they start.
To cancel one run instead, pass the run_id from the invoke response in place of cancelation_token. takes exactly one of the two. Sending both or neither returns 400. It returns 202 with the run and its resulting status: Only active runs are affected, so canceling is idempotent and always safe. A run_id Courier can’t find for your workspace returns 404. To build the token itself, or to cancel from inside a flow, see the .