Skip to content

Patch Campaign Full

PATCH
/campaigns/{campaign_id}/full

Apply a deep-update to a campaign in one round trip.

Behavior: - Campaign fields (name/brief/hook/etc.) update the row when present. - audience_list_id attaches; detach_audience=true clears it. - documents[*] either updates an existing doc by id, or creates a new doc when id is omitted (file_type + display_name required). - sequence_steps replaces the sequence ordering verbatim (same semantics as PUT /sequence).

Returns the full kitchen-sink payload (same shape as GET /full). Backwards-compat: omitting any field is a no-op. Existing single-purpose endpoints (PATCH /campaigns/{id}, PUT /audience, PUT /sequence, etc.) keep working unchanged.

Authorizations

Parameters

Path Parameters

campaign_id
required

Campaign ID

string

Campaign ID

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

Deep-update payload for PATCH /campaigns/{id}/full.

Every field is optional. Each non-null section is applied in the same transaction — campaign fields → audience → documents → sequence — so a single call can re-shape the whole campaign without ping-pong.

object
audience_list_id
Any of:
string
brief
Any of:
string
category
Any of:
string
<= 100 characters
core_concept
Any of:
string
detach_audience

Set true to explicitly DETACH the audience (audience_list_id=NULL). Required because JSON null in audience_list_id is ambiguous (could mean ‘no change’).

boolean
documents
Any of:
Array<object>

A single-document patch for PATCH /campaigns/{id}/full.

object
content
Any of:
string
display_name
Any of:
string
file_type
Any of:
string
folder_path
Any of:
string
id
Any of:
string
status
Any of:
string
structured_data
Any of:
object
key
additional properties
any
goal
Any of:
string
<= 255 characters
linked_sequence_ids
Any of:
Array<string>
name
Any of:
string
<= 255 characters
primary_hook
Any of:
string
sequence_steps
Any of:
Array<object>
object
condition
Any of:
string
day
required
integer
step_id
required
string
stop_on_reply
boolean
default: true
target_persona
Any of:
string
<= 200 characters
unlink_sequence_ids
Any of:
Array<string>

Responses

200

Successful Response

object
data
required
object
key
additional properties
any
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string