Create a campaign
Endpoints
Create a campaign
Create outbound call campaigns from a contact list (immediate or scheduled)
POST
Create a campaign
Overview
This endpoint creates outbound call campaigns using a playbook (assistant) and a list of contacts. Campaigns can run immediately or be scheduled for a specific date and time. Contacts are created or updated in the system and calls are launched according to the campaign configuration.1. Summary
- Endpoint:
POST /campaign - Authentication: Bearer token (same as for the rest of the API).
- Usage: Send a playbook ID, a list of contacts (with at least
phone), and optionally a launch date and recall policy. The system creates or updates contacts and launches the calls.
2. Authentication
Include your token in the request headers:3. Request body
3.1 Required fields
3.2 Optional fields (campaign level)
3.3 Optional fields per contact
Each item incontacts may include, in addition to phone, any of these fields (for call personalization or CRM):
4. Using the recall field
The recall field defines retry delays in minutes from the time of the call (or from launch time for scheduled campaigns). It is stored per call and used to automatically reschedule calls (e.g. if the contact does not answer).
String with array of minutes:
"recall": "[30,120]" — retry at 30 and 120 minutes.
Example in the body:
5. Request examples
5.1 Immediate campaign (minimal)
Only playbook and list of phones:5.2 Immediate campaign with contact data and recall
5.3 Immediate campaign with custom fields
5.4 Scheduled campaign
Uselaunch_at to schedule the launch:
recall works the same as for immediate campaigns.
6. Server responses
6.1 Campaign accepted (immediate)
- Status:
202 Accepted - Example body:
6.2 Scheduled campaign accepted
- Status:
202 Accepted - Example body:
7. Error codes
Example 400 response:
8. Quick reference
- Authentication:
Authorization: Bearer YOUR_TOKENheader. - Required:
playbook_id(UUID) andcontacts(array of objects with at leastphone). - Optional:
launch_atto schedule;recall(e.g."[30,120]") for retries in minutes. - Response:
202withcampaign_id.

