API

Journeys API

Propose workflows, dry-run, activate, and inspect enrollments.

Journeys are versioned workflow documents. Agents propose; humans (or an explicit deliver call after review) activate.

Create / edit: createWorkflowProposal, getWorkflow, reviseWorkflow, deleteWorkflow, listWorkflowVersions, restoreWorkflowVersion Review / run: reviewWorkflow, runWorkflowDryRun, getWorkflowRuntime, updateWorkflowRuntime Enrollments: listWorkflowEnrollments, createWorkflowEnrollment

Scope: write to propose and revise; deliver to review-approve and activate; read for get/list/runtime.

Proposal, not live

createWorkflowProposal returns approvalStatus in review. A 201 is not “the Journey is sending.” Track status. There is no force: true.

The specification graph includes entry/entries, nodes (email, delay, wait_until, branch, experiment, set_attribute, set_tag, webhook, exit), holdout percentage, goal, and frequency cap.

Locales

After the structure exists, every email node needs a confirmed message document per enabled locale (createMessageProposal / reviseMessageDocument). Dry run fails closed if a locale is missing.

Dry run and activate

  1. runWorkflowDryRun — no mail leaves.
  2. Human reviewWorkflow (approve).
  3. Runtime updateWorkflowRuntime / activate (deliver scope).

CLI: audryo journeys list | inspect | activate. MCP: list_journeys and activate tools. Activation still requires a verified sending identity.

Enrollments

createWorkflowEnrollment is for explicit, idempotent enroll (with Idempotency-Key). Most production enrollments happen from event ingest or audience entry, not this call.

Statuses include scheduled, active, holdout, blocked, and exit reasons such as goal_reached.