CLI & MCP
Waymaker journeys
Manage email marketing journeys and campaigns in Commander. Create automated email sequences, track performance, and manage subscribers.
Email JourneysMarketing
Last updated: January 21, 2026
Overview
Manage email marketing journeys and campaigns in Commander. Create automated email sequences, track performance, and manage subscribers.
Usage
waymaker journeys <subcommand> [options]
Subcommands
| Subcommand | Description |
|---|---|
list | List journeys |
get | Get journey details |
create | Create a new journey |
update | Update journey settings |
start | Start a journey |
pause | Pause a journey |
stats | Get journey statistics |
List Journeys
waymaker journeys list --workspace <workspace-id>
Output:
Journeys (6)
id name status subscribers sent opened
-----------------------------------------------------------------------------
jrny_abc123 Welcome Sequence active 1,250 4,500 68%
jrny_def456 Onboarding Flow active 890 2,670 72%
jrny_ghi789 Re-engagement paused 450 900 45%
jrny_jkl012 Product Launch draft 0 0 -
Filter by Status
waymaker journeys list --workspace ws_xxx --status active
JSON Output
waymaker journeys list --workspace ws_xxx --json
[
{
"id": "jrny_abc123",
"name": "Welcome Sequence",
"status": "active",
"subscriber_count": 1250,
"emails_sent": 4500,
"open_rate": 0.68,
"click_rate": 0.24,
"workspace_id": "ws_xxx",
"created_at": "2026-01-01T00:00:00Z"
}
]
Get Journey Details
waymaker journeys get <journey-id>
Output:
Welcome Sequence
ID: jrny_abc123
Workspace: ws_xxx
Status: active
Created: January 1, 2026
Trigger: New subscriber signup
Steps: (4)
1. Welcome Email (immediate)
- Sent: 1,250 | Opened: 68% | Clicked: 24%
2. Getting Started Guide (Day 1)
- Sent: 1,180 | Opened: 72% | Clicked: 31%
3. Feature Highlights (Day 3)
- Sent: 1,050 | Opened: 65% | Clicked: 28%
4. First Week Check-in (Day 7)
- Sent: 920 | Opened: 58% | Clicked: 19%
Overall Stats:
Subscribers: 1,250
Completed: 820 (66%)
Unsubscribed: 25 (2%)
JSON Output
waymaker journeys get jrny_abc123 --json
Create Journey
waymaker journeys create \
--workspace <workspace-id> \
--name "New Journey" \
--trigger signup
Output:
✓ Journey created (draft)
ID: jrny_new123
Name: New Journey
Status: draft
Add steps with:
waymaker journeys add-step jrny_new123 --template welcome --delay 0
Start journey with:
waymaker journeys start jrny_new123
Trigger Types
signup- New subscriber signuptag- Tag added to subscriberevent- Custom event triggereddate- Specific date reachedsegment- Added to segment
Create with Steps
waymaker journeys create \
--workspace ws_xxx \
--name "Onboarding Flow" \
--trigger signup \
--steps '[
{"template": "welcome", "delay": 0},
{"template": "getting-started", "delay": "1d"},
{"template": "features", "delay": "3d"}
]'
Add Journey Step
waymaker journeys add-step <journey-id> \
--template <template-id> \
--delay "1d"
Delay formats:
0- Immediate1h- 1 hour1d- 1 day1w- 1 week
Add with Conditions
waymaker journeys add-step jrny_abc123 \
--template follow-up \
--delay "2d" \
--condition "opened:previous"
Update Journey
waymaker journeys update <journey-id> \
--name "Updated Name"
Update Step
waymaker journeys update-step <journey-id> \
--step 2 \
--template new-template \
--delay "2d"
Start Journey
waymaker journeys start <journey-id>
Output:
✓ Journey started
ID: jrny_abc123
Name: Welcome Sequence
Status: active
New subscribers will enter this journey automatically.
Pause Journey
waymaker journeys pause <journey-id>
Output:
✓ Journey paused
ID: jrny_abc123
Name: Welcome Sequence
Status: paused
Active subscribers paused at current step.
Resume with: waymaker journeys start jrny_abc123
Get Statistics
waymaker journeys stats <journey-id>
Output:
Journey Statistics: Welcome Sequence
Period: Last 30 days
Overall:
Entered: 450
Completed: 312 (69%)
Active: 98 (22%)
Exited: 40 (9%)
Email Performance:
Sent: 1,580
Delivered: 1,564 (99%)
Opened: 1,063 (68%)
Clicked: 376 (24%)
Bounced: 16 (1%)
Unsubscribed: 8 (0.5%)
Step Breakdown:
Step 1: 68% open, 24% click
Step 2: 72% open, 31% click
Step 3: 65% open, 28% click
Step 4: 58% open, 19% click
Stats as JSON
waymaker journeys stats jrny_abc123 --json
Stats for Time Period
waymaker journeys stats jrny_abc123 --period "7d"
waymaker journeys stats jrny_abc123 --from "2026-01-01" --to "2026-01-21"
Options Reference
list
| Option | Type | Description |
|---|---|---|
--workspace | string | Required. Workspace ID |
--status | enum | Filter by status (active, paused, draft) |
--json | flag | Output as JSON |
get
| Option | Type | Description |
|---|---|---|
--json | flag | Output as JSON |
create
| Option | Type | Description |
|---|---|---|
--workspace | string | Required. Workspace ID |
--name | string | Required. Journey name |
--trigger | enum | Required. Trigger type |
--steps | string | Initial steps as JSON array |
add-step
| Option | Type | Description |
|---|---|---|
--template | string | Required. Email template ID |
--delay | string | Required. Delay before sending |
--condition | string | Conditional logic |
--position | number | Insert position |
stats
| Option | Type | Description |
|---|---|---|
--period | string | Time period (7d, 30d, 90d) |
--from | string | Start date (YYYY-MM-DD) |
--to | string | End date (YYYY-MM-DD) |
--json | flag | Output as JSON |
AI Agent Workflow
# List active journeys
JOURNEYS=$(waymaker journeys list --workspace ws_xxx --status active --json)
# Analyze performance
for journey in $(echo $JOURNEYS | jq -r '.[].id'); do
echo "Journey: $journey"
waymaker journeys stats $journey --json | jq '{open_rate, click_rate}'
done
# Find underperforming journeys
STATS=$(waymaker journeys stats jrny_abc123 --json)
OPEN_RATE=$(echo $STATS | jq '.open_rate')
if (( $(echo "$OPEN_RATE < 0.5" | bc -l) )); then
echo "Journey needs optimization"
fi
# Create journey from AI-designed sequence
waymaker journeys create \
--workspace ws_xxx \
--name "$AI_JOURNEY_NAME" \
--trigger signup \
--steps "$AI_GENERATED_STEPS"
Related Commands
- email - Email management
- automations - Workflow automations
- tables - Subscriber data