Skip to content

Campaigns

Your campaigns. Start and pause them.

Every example sends your key ID and secret as CALLVIEW_KEY_ID and CALLVIEW_SECRET (see Keys and authentication). The base address is https://v2-api.callview.ai/api/v1/external.

GET /campaigns

The campaigns this key can use, page by page (cursor = the next_cursor you were given). Needs campaigns:read.

Parameters

Name In Type Required Notes
cursor query string
limit query integer Default 50. 1 to 100.
Terminal window
curl -X GET 'https://v2-api.callview.ai/api/v1/external/campaigns' \
-u "$CALLVIEW_KEY_ID:$CALLVIEW_SECRET"

200 A page of campaigns

{
"data": [
{
"id": "7c1f2b9e-4a3d-4e8f-9b21-5d6a7e8f9a01",
"name": "Roofing leads",
"status": "active",
"livemode": true
}
],
"meta": {
"next_cursor": null,
"has_more": false
}
}

Errors

Status Codes
400 invalid_request
401 authentication_failed
403 permission_denied
429 rate_limited, too_many_concurrent_requests
500 internal_error

GET /campaigns/{id}

Needs campaigns:read. A test key sees the id and name only.

Parameters

Name In Type Required Notes
id path string (uuid) yes
Terminal window
curl -X GET 'https://v2-api.callview.ai/api/v1/external/campaigns/7c1f2b9e-4a3d-4e8f-9b21-5d6a7e8f9a01' \
-u "$CALLVIEW_KEY_ID:$CALLVIEW_SECRET"

200 The campaign

{
"data": {
"id": "7c1f2b9e-4a3d-4e8f-9b21-5d6a7e8f9a01",
"name": "Roofing leads",
"status": "active",
"livemode": true
}
}

Errors

Status Codes
400 invalid_request
401 authentication_failed
403 permission_denied
404 not_found
429 rate_limited, too_many_concurrent_requests
500 internal_error

POST /campaigns/{id}/activate

Starts (or restarts) dialing. The campaign needs an SDR and must be a draft or paused. A test key changes nothing and answers what the status would be. Needs campaigns:write.

Parameters

Name In Type Required Notes
id path string (uuid) yes
Idempotency-Key header string Any string you choose (1 to 255 visible characters), new for each new action. Send the same key again within 24 hours and you get the first answer back instead of a second lead or call. At most 255 characters.
Terminal window
curl -X POST 'https://v2-api.callview.ai/api/v1/external/campaigns/7c1f2b9e-4a3d-4e8f-9b21-5d6a7e8f9a01/activate' \
-u "$CALLVIEW_KEY_ID:$CALLVIEW_SECRET" \
-H 'Idempotency-Key: postCampaignsIdActivate-0001'

200 Started

{
"data": {
"id": "e4d3c2b1-a09f-4e8d-9c7b-6a5f4e3d2c1b",
"livemode": true
}
}

Errors

Status Codes
400 invalid_request
401 authentication_failed
403 permission_denied
404 not_found
409 idempotency_mismatch, idempotency_in_progress
429 rate_limited, too_many_concurrent_requests
500 internal_error
503 service_unavailable

POST /campaigns/{id}/pause

Stops new calls. Calls already up carry on. Leads you add while it is paused are kept (status held) and dialed when it starts again. A test key changes nothing. Needs campaigns:write.

Parameters

Name In Type Required Notes
id path string (uuid) yes
Idempotency-Key header string Any string you choose (1 to 255 visible characters), new for each new action. Send the same key again within 24 hours and you get the first answer back instead of a second lead or call. At most 255 characters.
Terminal window
curl -X POST 'https://v2-api.callview.ai/api/v1/external/campaigns/7c1f2b9e-4a3d-4e8f-9b21-5d6a7e8f9a01/pause' \
-u "$CALLVIEW_KEY_ID:$CALLVIEW_SECRET" \
-H 'Idempotency-Key: postCampaignsIdPause-0001'

200 Paused

{
"data": {
"id": "e4d3c2b1-a09f-4e8d-9c7b-6a5f4e3d2c1b",
"livemode": true
}
}

Errors

Status Codes
400 invalid_request
401 authentication_failed
403 permission_denied
404 not_found
409 idempotency_mismatch, idempotency_in_progress
429 rate_limited, too_many_concurrent_requests
500 internal_error
503 service_unavailable