Skip to main content
PATCH
Update a Campaign

Path Parameters

campaign_id
string<uuid>
required

Body

application/json

Content edits and status transitions for a campaign.

Any combination of content fields may be supplied. When status is set it is routed to the matching lifecycle transition (pause / resume / complete / archive).

name
string | null

New name for the campaign; must be unique within the organization

Minimum string length: 1
Example:

"Q3 Enterprise Outbound (revised)"

end_date
string<date> | null

New end date; must not be in the past

Example:

"2026-12-31"

audience_ids
string<uuid>[] | null
deprecated

Deprecated — use add_audiences_to_campaign / remove_audiences_from_campaign instead. The complete set of audiences for this campaign; REPLACES the current set, and any audience you omit is detached (tearing down in-flight sequences for its contacts).

Example:
distribution
PercentageDistribution · object

Split sends across named senders by fixed percentages that sum to 100.

rules_of_engagement
PublicRulesOfEngagement · object | null

Per-rule overrides on the org's default rules of engagement

Example:
autopilot_settings
PublicAutopilotSettings · object | null

Replacement autopilot roster. Senders listed here auto-send up to their daily cap; senders in distribution but omitted here require manual approval per send. An empty sender_rates list moves every sender to supervised.

status
enum<string> | null

Target lifecycle status. paused halts new sends, active resumes a paused campaign, completed stops all of its sequences (terminal), and archived permanently stops the campaign and halts all of its active/paused sequences — terminal and cannot be reversed via the public API.

Available options:
active,
paused,
completed,
archived
Example:

"paused"

Response

Successful Response

data
CampaignDetailResponse · object
required

Full campaign resource, as returned by get_campaign, create_campaign, and update_campaign.

meta
ResponseMeta · object