Skip to main content
POST
Create a campaign

Authorizations

Authorization
string
header
required

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

Headers

Idempotency-Key
string

Optional. A unique key you generate (max 255 chars, such as a UUID) that makes this request safe to retry. Retrying with the same key replays the original response instead of repeating the operation. Reusing a key with a different body returns 422.

Maximum string length: 255
Example:

"a1b2c3d4-e5f6-7890-abcd-ef1234567890"

Body

application/json
name
string
required
Maximum string length: 255
Example:

"Q4 Product Launch Outreach"

schedule
object
settings
object
sequence
object[]

Inline email sequence steps, in send order. Omit for no sequence; when supplied it must have at least one step.

Minimum array length: 1
accounts
string[]

SMTP account ids to send from.

Example:
leads
string[]

Lead emails to add. The response summarizes how many were added. Up to 1000. A malformed address is NOT a request-level 400 - it is counted in the leads summary’s invalid, so one bad entry never rejects the create.

Example:
launch
boolean

Start sending immediately after the campaign is configured. Requires the campaigns:lifecycle scope in addition to campaigns:write.

Example:

false

Response

campaign
object
required
launched
boolean
required

Whether the campaign was launched (true only when launch: true succeeded).

Example:

false

leads
object

Present only when leads were supplied.

launchError
string

Present only when launch: true was requested but the campaign could NOT be started. The campaign is still created (as a draft) - fix the issue and start it via the lifecycle endpoint. Absent on success.

Example:

"Campaign is not ready to launch: No leads added. Start it with POST /v1/campaigns/{id}/start."