Кампания обзванивает список контактов одним агентом в пределах часов обзвона и лимита параллельности (max_concurrency, до 100 звонков одновременно и никогда не больше лимита одновременных звонков вашего рабочего пространства) и повторяет попытки для тех, до кого не дозвонилась.
curl https://evasay.com/api/v1/voice/campaigns \
-X POST \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{
"name": "Appointment reminders",
"agent_id": "AGENT_ID",
"phone_number_id": "PHONE_NUMBER_ID",
"timezone": "America/New_York",
"window_start": "09:00",
"window_end": "18:00",
"max_concurrency": 2,
"max_attempts": 2,
"retry_delay_min": 60,
"consent_confirmed": true,
"contacts": [
{ "phone": "+14155550100", "name": "Alex", "appointment": "Tuesday 3 pm" }
]
}'
Контакты можно передать и CSV-текстом с номером телефона в первом столбце. consent_confirmed: true обязателен: им вы подтверждаете, что все из списка согласились на звонки, в том числе голосом ИИ, и EvaSay хранит это подтверждение вместе с кампанией (consent_confirmed_at). Кампания создаётся как черновик; запустите её через POST /api/v1/voice/campaigns/{id}/start, а pause и cancel используйте так же. Перед запуском кампании агент должен быть опубликован.