Skip to main content
PATCH
Update Outbound
CLI:

Overview

A partial update — only fields present in the body are applied. Most draft-only fields (type-specific settings, sequence, sender set) are silently ignored on active/paused/completed campaigns. A few fields work on any status: name, operating_hours, and (email) daily_limit.

Allowed fields by status

AI agent notes

Sequence upsert semantics. When sequence_nodes is provided (draft only), the server replaces the entire sequence. Positions are normalized to match array order — don’t try to set your own position values. Include every node you want to keep, including end.Operating-hours tweak on active campaigns. Changing operating_hours while status === "active" triggers an immediate wake-up of any leads currently sleeping on old-schedule waitpoints. They re-check the fresh schedule and resume or re-sleep as appropriate. Safe to call, but expect a burst of send activity within ~30 s of the update.Delay validation. Delay nodes must total ≥ 1 minute and ≤ 30 days across delay_days + delay_hours + delay_minutes. The server validates before any writes, so invalid delays fail cleanly with 400 and no partial state.

Authorizations

Authorization
string
header
required

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

Path Parameters

id
string
required

Campaign UUID

Body

application/json
name
string
Minimum string length: 1
operating_hours
object | null
operatingHours
object | null
daily_limit
integer
Required range: 1 <= x <= 500
dailyLimit
integer
Required range: 1 <= x <= 500
skip_other_campaigns
boolean
stop_on_reply
boolean
open_tracking
boolean
signature
string | null
sender_account_ids
string<uuid>[]
sequence_nodes
object[]
account_limits
object[]
Maximum array length: 50
{key}
any

Response

Campaign updated. Returns the full campaign and sequence.

campaign
object
required

Canonical campaign entity.

sequence_nodes
object[]
required