Skip to content

Campaigns API

POST /api/developer/v1/campaigns X-API-Key
Create a campaign
GET /api/developer/v1/campaigns/{campaign_id} X-API-Key
Get campaign details
PUT /api/developer/v1/campaigns/{campaign_id} X-API-Key
Update campaign settings
DELETE /api/developer/v1/campaigns/{campaign_id} X-API-Key
Delete an eligible campaign
GET /api/developer/v1/campaigns/{campaign_id}/stats X-API-Key
Get campaign statistics
POST /api/developer/v1/campaigns/{campaign_id}/pause X-API-Key
Pause new attempts
POST /api/developer/v1/campaigns/{campaign_id}/resume X-API-Key
Resume a paused campaign

Creation uses multipart/form-data.

FieldRequiredNotes
nameYesCampaign name
agent_idYesAgent used for calls
contact_fileYesUploaded audience file
retriesYesRetry policy
phone_number_idsNoJSON array, maximum 10
rotation_strategyNosmart, round_robin, or sequential
scheduled_at / timezoneNoScheduled launch
custom_first_lineNoCampaign-specific opening
Terminal window
curl -X POST https://api.vaniagent.com/api/developer/v1/campaigns \
-H "X-API-Key: $VANIAGENT_API_KEY" \
-F "name=August qualification" \
-F "agent_id=agent_id_here" \
-F "retries=2" \
-F 'phone_number_ids=["number_id_here"]' \
-F "rotation_strategy=smart" \
-F "contact_file=@contacts.csv"

The operational lifecycle is draft, scheduled, active, paused, and completed. Campaign-contact attempt states are documented separately under Campaign types and statuses.