Create Draft Campaign
Campaigns
Create Draft Campaign
Create a new draft campaign seeded with a minimal default sequence. The starting point for every campaign.
POST
Create Draft Campaign
CLI:
Overview
Creates adraft campaign for one channel (linkedin or email) and seeds it with a two-node default sequence — either [connection_request, end] or [email, end]. The campaign is not yet launchable — the email body, leads, and any extra nodes still need to be added.
Prerequisites
You need at least one connected sender account that matchestype:
- Get senders:
GET /api/senders?type=emailorGET /api/senders?type=linkedin - If none exist, connect one first — email: connect an email account; LinkedIn: OAuth connection
Typical follow-up sequence
updateCampaign— fill insequence_nodes(for email, setsubjectandbody; add more steps if needed)addLeadsToCampaign— add leads directly, orimportLeadsFromListToCampaignfrom a saved listgetCampaignwithid— confirm the draft has sender accounts, pending leads, and non-empty sendable nodeslaunchCampaign— start sending
AI agent notes
Name uniqueness (409). Names are unique per user — retry with a suffix (
"Q2 Enterprise Outreach (2)") if you hit a 409.Channel-specific fields. LinkedIn-only fields (skip_other_campaigns, operating_hours) on an email campaign and email-only fields (daily_limit, stop_on_reply, open_tracking, signature) on a LinkedIn campaign are silently ignored — not rejected. Send only the fields that apply.Default sequence is intentionally empty. Email: subject and body are empty strings. You must populate them via updateCampaign (or use the AI framework chat → generate-messages flow) before launchCampaign will succeed.Sender accounts must match type. A LinkedIn account id on an email campaign (or vice versa) returns 400. Filter GET /api/senders by type before picking.No leads yet. Creation seeds the sequence but adds no leads. launchCampaign on a campaign without leads exits immediately with status: "completed".Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json
Response
Campaign created as a draft with its seeded sequence.