campaign
Conditional — shown in describe() responses only while the account has no senders connected
⚠️ No senders are connected — you can create campaigns, but they can never send until a sender exists. One can be created via sender (
sender/postwith SMTP/IMAP credentials). Ask your user whether they'd like guided onboarding; if yes, read onboarding.
Conditional — shown in describe() responses only while the account has a sender set up but no campaigns yet
ℹ️ A sender is set up but no campaign exists yet — create one to start sending. (Check the sender's connection state before relying on it.) First-campaign checklist: onboarding.
Operations
Read
- campaign/get — List campaigns
- campaign/get_by_id — Get campaign by ID
- campaign/stats_by_id — Daily time-series only; the headline totals (
sentCount,replyCount, …) live on the campaign object — campaign/get_by_id - campaign/get_sequences_by_id — List campaign sequences
Create
- campaign/post — Create campaign
- campaign/copy_by_id — Copy a campaign
- campaign/post_sequences_by_id — Create campaign sequence
- campaign/post_tags_by_id — Add tag to campaign
Update
- campaign/patch_by_id — Update campaign
Delete
- campaign/delete_by_id — Delete campaign
- campaign/delete_by_id_tags_by_tagId — Remove tag from campaign
- campaign/delete_by_id_prospects_by_prospectId — Remove prospect from campaign
Act
- campaign/start_by_id — Start a campaign
- campaign/pause_by_id — Pause a campaign
- campaign/archive_by_id — Archive a campaign
- campaign/unarchive_by_id — Restore archived campaign to draft
Adding & enrolling prospects
Campaigns have no "add prospect" operation of their own (only remove, above). To put contacts into
a campaign, enrol them from the prospect side: prospect/post_bulk with the
campaignId query parameter. Full walkthrough: sending-a-campaign.
Campaign object
Full field reference: schemas/campaign. Tags are an array of {id, name} refs — see schemas/tag-ref.