Справочник · Перезвони
Заявки на звонок
Заявки на обратный звонок - как с виджета Перезвони на сайте. Через API можно заказать звонок клиенту и следить, чем он закончился. Заявка принадлежит проекту: ключ видит заявки только своих проектов.
Объект заявки
Заявка на обратный звонок: с виджета на сайте или через API.
objectстрокаобязателенТип объекта, всегда lead.
Значения: lead
iduuidобязателенid заявки.
project_iduuidобязателенid проекта заявки.
department_iduuidобязателенможет быть nullid отдела, сотрудникам которого звоним.
phoneстрокаобязателенТелефон клиента, обычно в E.164: +79991234567.
nameстрокаобязателенможет быть nullИмя клиента.
statusстрокаобязателенГде заявка сейчас: scheduled - звонок назначен на время (или ждёт повтора), queued - в очереди на звонок, in_progress - идёт звонок, completed - разговор состоялся: с сотрудником или с ИИ-ассистентом (см. call.handled_by), missed - дозвониться не удалось (почему - в status_reason), cancelled - заявку отменили, not_called - звонок не заказывали (почему - в status_reason).
Значения: scheduledqueuedin_progresscompletedmissedcancellednot_called
status_reasonстрокаобязателенможет быть nullПочему missed или not_called: team_no_answer - не ответили сотрудники, customer_no_answer - не ответил клиент, error - сбой связи, insufficient_funds - на балансе не хватило денег на звонок. У остальных статусов - null.
Значения: team_no_answercustomer_no_answererrorinsufficient_funds
sourceстрокаобязателенwidget - заявка с виджета на сайте, api - через API.
Значения: widgetapi
source_urlстрокаобязателенможет быть nullСтраница, с которой оставили заявку.
utmобъектобязателенможет быть nullUTM-метки заявки: только непустые из пяти стандартных. Нет ни одной - null.
Вложенные поля: 5
utm_sourceстрокаutm_source.
utm_mediumстрокаutm_medium.
utm_campaignстрокаutm_campaign.
utm_termстрокаutm_term.
utm_contentстрокаutm_content.
qualifierстрокаобязателенможет быть nullПричина звонка из списка отдела.
scheduled_atдата и время с зонойобязателенможет быть nullНа какое время назначен звонок, UTC. Если ждёт повтора после недозвона - время повтора. Звонок сразу - null.
callобъектобязателенможет быть nullЗвонок по заявке. Звонили несколько раз - последняя попытка. Пока звонка не было - null.
Вложенные поля: 7
started_atдата и время с зонойобязателенКогда начали звонить, UTC.
answered_atдата и время с зонойобязателенможет быть nullКогда ответил сотрудник, UTC. Звонил ИИ-ассистент - null.
connected_atдата и время с зонойобязателенможет быть nullКогда начался разговор клиента с сотрудником или с ИИ-ассистентом, UTC.
ended_atдата и время с зонойобязателенможет быть nullКогда звонок закончился, UTC.
duration_secцелое числообязателенможет быть nullСколько секунд длился разговор.
handled_byстрокаобязателенteam - звонили сотрудники, ai - звонил ИИ-ассистент.
Значения: teamai
ai_outcomeстрокаобязателенможет быть nullЧем закончился разговор с ИИ-ассистентом: transferred - перевёл на сотрудника, lead - записал заявку, ended - разговор завершён, limit - кончилось время разговора, failed - сбой, hangup - клиент положил трубку. Звонили сотрудники или итога ещё нет - null.
Значения: transferredleadendedlimitfailedhangup
ratingобъектобязателенможет быть nullОценка звонка клиентом. Не оценил - null.
Вложенные поля: 3
scoreцелое числообязателенОценка от 1 до 5.
reasonsмассив (строка)обязателенЧто клиент отметил в оценке.
rated_atдата и время с зонойобязателенможет быть nullКогда клиент оценил звонок, UTC.
handled_atдата и время с зонойобязателенможет быть nullКогда сотрудник отметил заявку обработанной в личном кабинете, UTC. Не отмечена - null.
metadataобъектобязателенможет быть nullВаши данные, переданные при создании через API. У заявок с виджета - null. См. Формат данных.
created_atдата и время с зонойобязателенможет быть nullКогда заявка создана, UTC.
updated_atдата и время с зонойобязателенможет быть nullКогда заявка последний раз менялась, UTC.
{
"object": "lead",
"id": "01a0d7f0-c2b4-7e61-9a3f-6b1d2e8c4a57",
"project_id": "01a0c4e2-3f10-7b4d-9c2e-5d8a1f6b3e20",
"department_id": "01a0c4e2-51a8-7c30-8e4b-0f9d3a6c2b18",
"phone": "+79991234567",
"name": "Иван",
"status": "completed",
"status_reason": null,
"source": "api",
"source_url": "https://shop.example.com/cart",
"utm": {
"utm_source": "crm",
"utm_campaign": "autumn"
},
"qualifier": "Сервис",
"scheduled_at": null,
"call": {
"started_at": "2026-09-25T09:41:15Z",
"answered_at": "2026-09-25T09:41:22Z",
"connected_at": "2026-09-25T09:41:30Z",
"ended_at": "2026-09-25T09:44:02Z",
"duration_sec": 152,
"handled_by": "team",
"ai_outcome": null
},
"rating": null,
"handled_at": null,
"metadata": {
"order_id": "20195208"
},
"created_at": "2026-09-25T09:41:12Z",
"updated_at": "2026-09-25T09:44:02Z"
}/v1/leadsСписок заявок
leads:readЗаявки проектов ключа - с виджета и через API, от новых к старым, по страницам. Фильтры можно сочетать.
Параметры запроса
limitцелое числоможет быть nullСколько заявок на странице, от 1 до 100.
По умолчанию: 20
starting_afteruuidможет быть nullid последней заявки предыдущей страницы: страница начнётся после неё. См. Пагинация.
project_iduuidможет быть nullТолько заявки этого проекта. Проекта нет в ключе - ошибка 403.
statusстрокаможет быть nullТолько заявки в этих статусах, через запятую. Значения - как у поля status заявки.
phoneстрокаможет быть nullЗаявки с этим телефоном клиента. Номер в другой записи API приведёт к E.164.
sourceстрокаможет быть nullwidget - заявки с виджета, api - через API.
Значения: widgetapi
created[gte]дата и время с зонойможет быть nullЗаявки, созданные не раньше этого времени. Время с часовым поясом (RFC 3339).
created[lte]дата и время с зонойможет быть nullЗаявки, созданные не позже этого времени. Время с часовым поясом (RFC 3339).
Ответы
200Страница списка заявок.401Нет ключа, ключ неверный, истёк или отозван (unauthenticated).402У компании не подключено дополнение «Публичный API» (api-addon-required).403У ключа нет нужного права или доступа к проекту (forbidden).422Данные запроса не прошли проверку (validation). Какие поля и почему - в errors.429Превышен лимит запросов (rate-limited). Повторите через столько секунд, сколько указано в Retry-After.503Сервис временно недоступен (unavailable). Повторите позже.
curl https://api.ru.dialogi.io/v1/leads \
-H "Authorization: Bearer dk_live_…"200{
"object": "list",
"data": [
{
"object": "lead",
"id": "01a0d7f0-c2b4-7e61-9a3f-6b1d2e8c4a57",
"project_id": "01a0c4e2-3f10-7b4d-9c2e-5d8a1f6b3e20",
"department_id": "01a0c4e2-51a8-7c30-8e4b-0f9d3a6c2b18",
"phone": "+79991234567",
"name": "Иван",
"status": "completed",
"status_reason": null,
"source": "api",
"source_url": "https://shop.example.com/cart",
"utm": {
"utm_source": "crm",
"utm_campaign": "autumn"
},
"qualifier": "Сервис",
"scheduled_at": null,
"call": {
"started_at": "2026-09-25T09:41:15Z",
"answered_at": "2026-09-25T09:41:22Z",
"connected_at": "2026-09-25T09:41:30Z",
"ended_at": "2026-09-25T09:44:02Z",
"duration_sec": 152,
"handled_by": "team",
"ai_outcome": null
},
"rating": null,
"handled_at": null,
"metadata": {
"order_id": "20195208"
},
"created_at": "2026-09-25T09:41:12Z",
"updated_at": "2026-09-25T09:44:02Z"
}
],
"has_more": true
}/v1/leadsСоздать заявку на звонок
leads:write Idempotency-Key обязателенЗаявка через API - такой же звонок клиенту, как заявка с виджета на сайте: звонят сотрудники отдела или ИИ-ассистент - как настроен Перезвони в проекте. Тарифицируется заявка так же, как с виджета.
Проверка строже, чем у виджета: отдел не из проекта, причина звонка не из списка отдела, время звонка в прошлом - ошибка 422, а не тихая замена.
Если по этому номеру уже есть заявка в работе, созданная в последнюю минуту, второй звонок не заказывается: ответ 200 с этой заявкой. Вне рабочего времени отдела звонок может быть перенесён на ближайшее рабочее время - тогда у заявки статус scheduled и время в scheduled_at.
Idempotency-Key обязателен: повтор запроса без него заказал бы клиенту второй звонок.
Параметры тела
project_iduuidможет быть nullПроект заявки. Обязателен, если в ключе несколько проектов.
phoneстрокаобязателенТелефон клиента, на него позвоним. Лучше в E.164; номер в другой записи API приведёт к E.164.
nameстрокаможет быть nullИмя клиента.
department_iduuidможет быть nullОтдел, сотрудникам которого звонить. Должен быть отделом с настройками Перезвони в этом проекте. Без него - отдел, настроенный первым.
scheduled_atдата и время с зонойможет быть nullПозвонить в это время, а не сразу. Время с часовым поясом (RFC 3339), в будущем и не дальше 14 дней.
qualifierстрокаможет быть nullПричина звонка - одна из причин, настроенных у отдела.
source_urlссылкаможет быть nullСтраница, с которой пришёл клиент, http или https.
utmобъектможет быть nullUTM-метки: utm_source, utm_medium, utm_campaign, utm_term, utm_content, строки до 255 символов. Другие ключи пропускаем без ошибки, они не сохраняются.
Вложенные поля: 5
utm_sourceстрокаможет быть nullutm_mediumстрокаможет быть nullutm_campaignстрокаможет быть nullutm_termстрокаможет быть nullutm_contentстрокаможет быть nullmetadataобъектможет быть nullВаши данные: плоский объект до 50 ключей, ключ - до 40 символов и не число (10042 или -5 не подойдут), значение - строка до 500 символов, число, true/false или null. Пробелы по краям строки API убирает, пустая строка сохраняется как null. См. Формат данных.
Ответы
201Заявка принята, звонок заказан.200По этому номеру уже есть заявка в работе: вернули её, второй звонок не заказан.400Нет заголовка Idempotency-Key (idempotency-key-required) или ключ в неверном формате (idempotency-key-invalid).401Нет ключа, ключ неверный, истёк или отозван (unauthenticated).402У компании не подключено дополнение «Публичный API» (api-addon-required).403У ключа нет нужного права или доступа к проекту (forbidden).409Idempotency-Key уже использован с другим запросом (idempotency-conflict) или первый запрос с ним ещё выполняется (idempotency-in-progress). В проекте не настроен Перезвони (perezvoni-not-configured).422Данные запроса не прошли проверку (validation). Какие поля и почему - в errors.429Превышен лимит запросов (rate-limited). Повторите через столько секунд, сколько указано в Retry-After. У создания заявок свои лимиты: новых заявок на ключ в минуту и заявок на один номер.503Сервис временно недоступен (unavailable). Повторите позже.
curl https://api.ru.dialogi.io/v1/leads \
-H "Authorization: Bearer dk_live_…" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-20195208" \
-d '{
"phone": "+79991234567",
"name": "Иван"
}'201{
"object": "lead",
"id": "01a0d7f0-c2b4-7e61-9a3f-6b1d2e8c4a57",
"project_id": "01a0c4e2-3f10-7b4d-9c2e-5d8a1f6b3e20",
"department_id": "01a0c4e2-51a8-7c30-8e4b-0f9d3a6c2b18",
"phone": "+79991234567",
"name": "Иван",
"status": "completed",
"status_reason": null,
"source": "api",
"source_url": "https://shop.example.com/cart",
"utm": {
"utm_source": "crm",
"utm_campaign": "autumn"
},
"qualifier": "Сервис",
"scheduled_at": null,
"call": {
"started_at": "2026-09-25T09:41:15Z",
"answered_at": "2026-09-25T09:41:22Z",
"connected_at": "2026-09-25T09:41:30Z",
"ended_at": "2026-09-25T09:44:02Z",
"duration_sec": 152,
"handled_by": "team",
"ai_outcome": null
},
"rating": null,
"handled_at": null,
"metadata": {
"order_id": "20195208"
},
"created_at": "2026-09-25T09:41:12Z",
"updated_at": "2026-09-25T09:44:02Z"
}/v1/leads/{lead}Получить заявку
leads:readЗаявка по id - со статусом звонка и его итогом. Заявка из проекта, которого нет в ключе, для ключа не существует - ответ 404.
Параметры пути
leaduuidобязателенid заявки.
Ответы
200Заявка.401Нет ключа, ключ неверный, истёк или отозван (unauthenticated).402У компании не подключено дополнение «Публичный API» (api-addon-required).403У ключа нет нужного права или доступа к проекту (forbidden).404Объекта с таким id нет или он в проекте, которого нет в ключе (not-found).429Превышен лимит запросов (rate-limited). Повторите через столько секунд, сколько указано в Retry-After.503Сервис временно недоступен (unavailable). Повторите позже.
curl https://api.ru.dialogi.io/v1/leads/0192d3a1-7b2c-7c3e-9a51-2f6b8e4d1c90 \
-H "Authorization: Bearer dk_live_…"200{
"object": "lead",
"id": "01a0d7f0-c2b4-7e61-9a3f-6b1d2e8c4a57",
"project_id": "01a0c4e2-3f10-7b4d-9c2e-5d8a1f6b3e20",
"department_id": "01a0c4e2-51a8-7c30-8e4b-0f9d3a6c2b18",
"phone": "+79991234567",
"name": "Иван",
"status": "completed",
"status_reason": null,
"source": "api",
"source_url": "https://shop.example.com/cart",
"utm": {
"utm_source": "crm",
"utm_campaign": "autumn"
},
"qualifier": "Сервис",
"scheduled_at": null,
"call": {
"started_at": "2026-09-25T09:41:15Z",
"answered_at": "2026-09-25T09:41:22Z",
"connected_at": "2026-09-25T09:41:30Z",
"ended_at": "2026-09-25T09:44:02Z",
"duration_sec": 152,
"handled_by": "team",
"ai_outcome": null
},
"rating": null,
"handled_at": null,
"metadata": {
"order_id": "20195208"
},
"created_at": "2026-09-25T09:41:12Z",
"updated_at": "2026-09-25T09:44:02Z"
}