Clone a campaign
curl --request POST \
--url https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone \
--header 'Authorization: Bearer <token>'import requests
url = "https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"campaign": {
"id": "6e7f8a9b-0c1d-4e2f-9a3b-4c5d6e7f8a9b",
"project_id": "8d2e4b1a-1c3f-4e5a-9b7d-6f0a2c4e8b13",
"name": "March renewals (copy)",
"agent_id": "5b7e9c1d-2a4f-4c6e-8d0b-1f3a5c7e9b24",
"from_number": "+14155550100",
"start_time": null,
"callback": false,
"retries": 2,
"retry_delay_seconds": 3600,
"max_concurrency": 5,
"calling_window": null,
"status": "draft",
"started_at": null,
"canceled_at": null,
"ended_at": null,
"created_at": "2026-03-05T08:00:00.000Z",
"updated_at": "2026-03-05T08:00:00.000Z"
},
"items": []
}{
"error": "Invalid or revoked token"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Campaigns
Clone a campaign
Creates a new `draft` campaign named "<name> (copy)" with the same settings and the same contacts (without their call results, and without any callback contacts created during calls). The copy has no start time. No request body.
POST
/
v1
/
projects
/
{projectId}
/
campaigns
/
{id}
/
clone
Clone a campaign
curl --request POST \
--url https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone \
--header 'Authorization: Bearer <token>'import requests
url = "https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://voice-api.onclarity.com/v1/projects/{projectId}/campaigns/{id}/clone', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"campaign": {
"id": "6e7f8a9b-0c1d-4e2f-9a3b-4c5d6e7f8a9b",
"project_id": "8d2e4b1a-1c3f-4e5a-9b7d-6f0a2c4e8b13",
"name": "March renewals (copy)",
"agent_id": "5b7e9c1d-2a4f-4c6e-8d0b-1f3a5c7e9b24",
"from_number": "+14155550100",
"start_time": null,
"callback": false,
"retries": 2,
"retry_delay_seconds": 3600,
"max_concurrency": 5,
"calling_window": null,
"status": "draft",
"started_at": null,
"canceled_at": null,
"ended_at": null,
"created_at": "2026-03-05T08:00:00.000Z",
"updated_at": "2026-03-05T08:00:00.000Z"
},
"items": []
}{
"error": "Invalid or revoked token"
}{
"error": "<string>",
"code": "<string>"
}{
"error": "<string>",
"code": "<string>"
}Authorizations
Your organization API key (it starts with anek_org_). The same key works on the Voice API and the Support API. See Authentication.