Skip to Content
GuidesCampaigns

Campaign Management

A Campaign is a coordinated outreach effort targeting a set of contacts. Campaigns support email steps, LinkedIn messages, and LinkedIn connection invites for multi-channel outreach.

Create a campaign

POST /v1/campaigns Authorization: Bearer <token> Content-Type: application/json { "name": "Q2 Backend Engineer Outreach", "jobId": "job_01abc..." }

Add email steps

POST /v1/campaigns/:campaignId/emails Authorization: Bearer <token> Content-Type: application/json { "subject": "Exciting opportunity at {{company}}", "body": "Hi {{firstName}}, I came across your profile...", "delayDays": 0 }

Update or delete email steps:

PATCH /v1/campaigns/:campaignId/emails/:emailId DELETE /v1/campaigns/:campaignId/emails/:emailId

Add LinkedIn messages

POST /v1/campaigns/:campaignId/linkedin-messages Authorization: Bearer <token> Content-Type: application/json { "message": "Hi {{firstName}}, I saw your background in distributed systems...", "delayDays": 2 }

Update or delete LinkedIn messages:

PUT /v1/campaigns/:campaignId/linkedin-message/:messageId DELETE /v1/campaigns/:campaignId/linkedin-message/:messageId

Add LinkedIn connection invite

POST /v1/campaigns/linkedin/:campaignId/invite Authorization: Bearer <token> Content-Type: application/json { "note": "Hi, I'd love to connect about an opportunity..." }

Manage campaign contacts

PATCH /v1/campaigns/:campaignId/contacts Authorization: Bearer <token> Content-Type: application/json { "add": ["contact_01abc...", "contact_02abc..."] }

Link candidate or prospect lists to a campaign:

PATCH /v1/campaigns/:campaignId/lists Authorization: Bearer <token> Content-Type: application/json { "listIds": ["list_01abc..."] }

Update campaign settings

PATCH /v1/campaigns/:campaignId/settings Authorization: Bearer <token> Content-Type: application/json { "sendingWindow": { "startHour": 9, "endHour": 17 }, "timezone": "America/New_York" }

Launch, pause, and resume

POST /v1/campaigns/:campaignId/send Authorization: Bearer <token>
POST /v1/campaigns/:campaignId/pause Authorization: Bearer <token>
POST /v1/campaigns/:campaignId/resume Authorization: Bearer <token>

Campaign lifecycle

StatusDescription
draftNot yet active
activeOutreach in progress
pausedPaused, no new messages sent
completedAll contacts have been fully sequenced
archivedClosed

View scheduled activity

See scheduled emails and LinkedIn messages grouped by contact:

GET /v1/scheduled-emails/campaign/:campaignId/grouped GET /v1/scheduled-linkedin/campaign/:campaignId/grouped GET /v1/scheduled-linkedin/campaign/:campaignId/analytics
Last updated on