Create or edit a campaign

Create a campaign, or update one in progress, one step at a time: details (step 1), channels (step 2), schedule (step 3) and launch (step 4). Pass the step you're on; the required fields change by step. Returns the campaign after each step; it stays a draft until step 4 schedules it. Step 2 creates the channels without templates, and step 3 applies type only when it is kiosk.

Prerequisites: a bearer token and the location's store_id; on steps 2–4, the campaign_id from step 1. Before step 3, upload recipients (bulk_upload), define a file format (automation), or send type: "kiosk".

Authentication: Account token. store_id must be a location inside your own account (otherwise 422), and campaign_id must belong to that store_id (otherwise 404).

Rate limit: none.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
integer
required
Defaults to 3007

The location the campaign belongs to. Must be inside your own account.

integer
enum
required
Defaults to 1

The wizard step: 1 details, 2 channels, 3 schedule, 4 launch. The other required fields depend on it.

Allowed:
integer | null
Defaults to null

On step 1, leave it out or send null to create a campaign, or send an id to edit one. Required on steps 2–4. Must be an existing campaign (otherwise 422) that belongs to store_id (otherwise 404).

string
length ≤ 255
Defaults to Summer Review Campaign

The campaign's name, up to 255 characters.

boolean
Defaults to true

true adds the SMS channel (or restores a removed one), false removes it. Send this, channel_email, or both. Only applied when the location's plan includes SMS review requests.

boolean
Defaults to true

true adds the email channel (or restores a removed one), false removes it. Send this, channel_sms, or both. Only applied when the location's plan includes email review requests.

integer
1 to 50
Defaults to 20

Most requests sent a day, 1–50. Returned as request_per_day.

integer
enum
Defaults to 0

How often requests go out: 0 every day, 1 every other day, 2 once a week, 3 once every two weeks, 4 once a month.

Allowed:
integer
0 to 60
Defaults to 0

Days to wait before the first request, 0–60. Returned as request_delay.

string
Defaults to 14:00:00

Step 3. Time of day to send, in Pacific Time (H:i:s). Default 14:00:00. Returned as request_after_time_pst, and in UTC as request_after_time.

boolean
Defaults to false

Step 3. true makes step 4 schedule the first send for now instead of after the delay. Default false.

string | null
enum
Defaults to kiosk

Send it on step 3 (or leave it out): bulk_upload, automation, kiosk or null. Only kiosk is applied (see below).

Allowed:
Responses

Language
Credentials
Bearer
JWT
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json