Path Parameters
campaign_id(integer, required): The unique identifier of the campaign
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
schedule_type | string | Yes | immediate, scheduled, or recurring |
scheduled_at | string | Conditional | ISO 8601 datetime (required for scheduled) |
timezone | string | No | Timezone for scheduling (default: UTC) |
recurring_config | object | Conditional | Required for recurring type |
Schedule Types
Immediate
Immediate
Campaign starts when you call the start endpoint.Effect: Campaign status remains
Request
draft until started manually.Scheduled (Once)
Scheduled (Once)
Campaign runs at a specific date and time.Effect: Campaign status changes to
Request
scheduled automatically.Recurring
Recurring
Campaign runs on a repeating schedule.Effect: Campaign status changes to
Request
scheduled automatically.Recurring Config Options
| Field | Type | Description |
|---|---|---|
frequency | string | daily, weekly, or monthly |
interval | integer | Every N periods (e.g., every 2 weeks) |
days_of_week | array | Days for weekly (1-7, Monday=1) |
day_of_month | integer | Day for monthly (1-31) |
time | string | Time in 24-hour format (HH:MM) |
time_zone | string | Timezone (e.g., America/New_York) |
end_date | string | Stop date (ISO 8601) |
Response
Response
Example Code
cURL
Python
JavaScript
Behavior
- Immediate: Clears any existing schedule, reverts to
draftifscheduled - Scheduled/Recurring: Creates schedule record, sets campaign to
scheduled - Past times: Returns 400 error - time must be in the future
Error Responses
| Status Code | Description |
|---|---|
| 400 | Scheduled time is in the past |
| 400 | Invalid schedule configuration |
| 404 | Campaign not found |
| 500 | Failed to save schedule |
Timezone Support
Common timezone values:| Region | Timezone |
|---|---|
| US Eastern | America/New_York |
| US Central | America/Chicago |
| US Mountain | America/Denver |
| US Pacific | America/Los_Angeles |
| UK | Europe/London |
| Central Europe | Europe/Paris |
| UTC | UTC |
Always specify timezone when scheduling. If omitted, the system uses UTC which may not match your intended local time.