Skip to main content

Manage Campaign

Get details, update, pause/resume, and delete campaigns.

Get Campaign Details​

GET https://<api_key>:<api_token><subdomain>/v2/accounts/<account_sid>/campaigns/<campaign_id>

Returns the full campaign object including current stats.

Update Campaign Action​

Pause, resume, complete, or archive a campaign.

PUT https://<api_key>:<api_token><subdomain>/v2/accounts/<account_sid>/campaigns/<campaign_id>

Request Body​

{ "action": "pause" }

Allowed Actions​

ActionFrom StatusDescription
pauseCreated, InProgressTemporarily stop the campaign
resumePausedResume a paused campaign
completePausedForce complete — marks remaining calls as failed
archiveCompletedArchive a completed campaign

cURL Example​

curl -X PUT "https://<api_key>:<api_token>@api.exotel.com/v2/accounts/<sid>/campaigns/<campaign_id>" \
-H "Content-Type: application/json" \
-d '{ "action": "pause" }'

Update Campaign Details​

Update campaign parameters before the send_at time. After send_at, only callbacks and action can be updated.

PUT https://<api_key>:<api_token><subdomain>/v2/accounts/<account_sid>/campaigns/<campaign_id>

Accepts the same parameters as Create Campaign.

Editable after send_at:

  • action
  • status_callback
  • call_status_callback
  • call_schedule_callback

Delete Campaign​

DELETE https://<api_key>:<api_token><subdomain>/v2/accounts/<account_sid>/campaigns/<campaign_id>

Returns HTTP 200 on success.


List All Campaigns​

GET https://<api_key>:<api_token><subdomain>/v2/accounts/<account_sid>/campaigns

Query Parameters​

ParameterTypeDefaultDescription
offsetInteger0Zero-based record position
limitInteger20Records per page (max 500)
nameString—Search by campaign name
statusString—Filter by comma-separated statuses
sort_byString—date_created:asc, date_created:desc, name:asc, name:desc
typeStringtransCampaign type

cURL Example​

curl "https://<api_key>:<api_token>@api.exotel.com/v2/accounts/<sid>/campaigns?limit=10&status=InProgress,Paused&sort_by=date_created:desc"

Response​

{
"request_id": "req_abc123",
"http_code": 200,
"metadata": {
"count": 3,
"offset": 0,
"total": 138,
"limit": 10
},
"response": [
{ "...campaign objects..." }
]
}