Skip to main content
POST
Create campaign

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 - 100
assistantId
string<uuid>

ID of the AI assistant

assistantName
string

Name of the AI assistant (alternative to assistantId)

description
string
startDate
string<date>

When campaign starts (YYYY-MM-DD). Omit for immediate start.

startTime
string

Default daily window start as wall-clock time in the campaign timezone (HH:MM). Also defines retry window start. Can be overridden per day via daySchedules.

Pattern: ^\d{2}:\d{2}(:\d{2})?$
timezone
string
default:UTC

IANA timezone identifier (e.g., 'Europe/Prague', 'America/New_York'). All time values — startTime, endTime, and daySchedules entries — are interpreted as wall-clock times in this timezone. See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for valid identifiers.

endTime
string

Default daily window end as wall-clock time in the campaign timezone (HH:MM). Retries only happen between startTime and endTime. Can be overridden per day via daySchedules.

Pattern: ^\d{2}:\d{2}(:\d{2})?$
activeDays
integer[]

Days retries can happen (0=Monday, 6=Sunday)

Required array length: 1 - 7 elements
Required range: 0 <= x <= 6
daySchedules
object

Sparse per-day schedule overrides. Keys are day indices (0=Monday, 6=Sunday), values are {startTime, endTime} as wall-clock times in the campaign timezone. Only include days that differ from the global startTime/endTime. Days not listed here use the global window.

phoneNumber
string

Caller ID phone number

callRetries
integer
default:0

Number of retry attempts (0-10)

Required range: 0 <= x <= 10
retryDelaySeconds
integer
default:300

Delay between retries in seconds (60-86400)

Required range: 60 <= x <= 86400
retryDelayMode
enum<string>
default:fixed
Available options:
fixed,
next_day
retryConditions
enum<string>[]

Array of call outcome values to retry on (SipCodeCategory + special endedReason values)

Available options:
Rejected,
Unreachable,
Busy,
No Answer,
Network Error,
Invalid,
Timeout,
Cancelled,
Resource Unavailable,
Service Unavailable,
Protocol Error,
Unspecified,
voicemail,
exceeded-max-duration,
inactivity-ended-call,
rescheduled
maxConcurrency
integer
default:5

Maximum number of concurrent calls (1-50)

Required range: 1 <= x <= 50
webhookUrl
string<uri>
customers
object[]

List of customers to call

phoneList
string[]

Simple list of phone numbers (alternative to customers)

Response

Campaign created

success
enum<boolean>
required
Available options:
true
data
object
required