Skip to main content
POST
Create Campaign
Requires a Labs OAuth user access token with the super_user role and Editor or higher workspace access. API keys are not accepted for this endpoint. See authentication. Use source_type: "manual" with manual_contacts, or source_type: "csv" with the file_key returned by upload contacts as source_id. This request creates the campaign; start it separately when ready. Starting places real calls.
Replace workflow_id and the contact with your tested agent and destination. day_of_week uses 0 for Monday through 6 for Sunday. Each slot’s start must be earlier than its end. Set telephony_configuration_id to select a specific configuration. When omitted, the workspace default is used. Manual campaigns accept up to 100 contacts.

Authorizations

Authorization
string
header
required

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

Body

application/json
name
string
required
Required string length: 1 - 255
workflow_id
integer
required
source_type
enum<string>
required
Available options:
csv,
manual
source_id
string | null
manual_contacts
ManualCampaignContact · object[] | null
Maximum array length: 100
telephony_configuration_id
integer | null
retry_config
RetryConfigRequest · object | null
max_concurrency
integer | null
Required range: 1 <= x <= 100
schedule_config
ScheduleConfigRequest · object | null
circuit_breaker
CircuitBreakerConfigRequest · object | null

Response

Successful Response

id
integer
required
name
string
required
workflow_id
integer
required
workflow_name
string
required
state
string
required
source_type
string
required
source_id
string
required
total_rows
integer | null
required
processed_rows
integer
required
failed_rows
integer
required
created_at
string<date-time>
required
started_at
string<date-time> | null
required
completed_at
string<date-time> | null
required
retry_config
RetryConfigResponse · object
required
max_concurrency
integer | null
schedule_config
ScheduleConfigResponse · object | null
circuit_breaker
CircuitBreakerConfigResponse · object | null
executed_count
integer
default:0
total_queued_count
integer
default:0
parent_campaign_id
integer | null
redialed_campaign_id
integer | null
telephony_configuration_id
integer | null
telephony_configuration_name
string | null
logs
CampaignLogEntryResponse · object[]