Добавление менеджеров к лидам
Описание
В статье описан API метод добавления менеджеров к лидам.
Запрос
POST:
https://api.calltouch.ru/lead-service/v1/api/manager/lead/add
HTTP-заголовки:
- Access-Token – API-ключ
- SiteId – ID ЛК Calltouch
Тело запроса в формате JSON.
Пример тела запроса
{
"leads": [
// Лид 1
{
"matching": [
{
"type": "request",
"requestParams": {
"requestId": 1,
"tags": ["тег1", "тег2"],
"tagsLogic": "and"
}
},
{
"type": "call",
"callParams": {
"callId": 2
}
},
{
"type": "requestContact",
"requestContactParams": {
"emails": ["name@server.com"],
"phones": ["79157771122", "+7 (915) 888-11-22"],
"date": "01-10-2020 12:00:00",
"requestTypeToMatch": "nearestUniq",
"searchDepth": 120
},
},
{
"type": "callContact",
"callContactParams": {
"phones": ["84953338877"],
"date": "01-10-2020 12:00:00",
"tags": ["тег1","тег2"],
"tagsLogic": "and",
"callTypeToMatch": "nearestUniqLead",
"searchDepth": 120
},
},
{ "type": "leadContact", "leadContactParams": { "emails": ["name@server.com"], "phones": ["79157771122", "+7 (915) 888-11-22"], "md5Phones": ["4fec00b25336e719d4a0b255ea5aa0f5"], "searchAmongPhonesInText": false, "date": "Дата и время лида", "tags": ["тег1","тег2"], "tagsLogic": "and", "leadTypeToMatch": "nearest", "searchDepth": 262800 }
],
"addManagers": {
"overwrite": false,
"managers":
[
{
"manager"
:
"Иван Иванов"
}
]
}
},
// Лид N
...
]
}
Параметры запроса
Параметр | Формат | Обязательный | Описание |
leads | array | Да | Массив лидов. Можно перечислить до 100 лидов за 1 запрос. Обязательно. |
leads.matching | object | Да | Здесь задается приоритет использования разных типов матчинга, по которым мы будем пытаться найти лид для тегирования. Чем выше находится строка с типом матчинга, тем больший приоритет она имеет. Если матчинга завершится на каком-либо типе, остальные типы ниже будут проигнорированы. Одинаковые типы матчинга могут повторяться, но общее кол-во типов не должно превышать 20 строк. |
leads.matching .type |
string |
Обязательно нужно указать хотя бы 1 тип матчинга в приоритете. |
Тип матчинга. Возможные значения:
|
leads.addManagers | object | Нет | Добавление менеджеров к лиду. |
leads.addManagers.tags | array | Нет |
Указание менеджера которого нужно добавить. Если указанный менеджер уже есть в ЛК, новый не создается, а используются существующий. Обязательно, максимум 1 менеджер.
Формат:
"managers": [
|
leads.addManagers.overwrite | boolean | Нет |
Перезаписывать ли существующего менеджера у лида или нет.
|
Ответ
Процесс добавления менеджеров запускается сразу же после отправки запроса, после чего сразу же возвращается и ответ.
Пример ответа
{ "meta": [], "data": { "leads": [{"matchedType"
:
"call"
,
"callInfo": { "callId": 12692441, "callReferenceId": "test321", "sipCallId": null }, "requestInfo": null, "isManagerAdded": true, "error": null }] } }
Параметры ответа
Параметр | Формат | Описание |
data.leads.matchedType | string | Тип матчинга из параметра matching API-запроса по которому нашелся лид. Если ни один из переданных типов не нашел лид, то передается null. |
data.leads.callInfo | object | Если матчинг сработал на звонок, то блок callInfo не пустой. |
data.leads.callInfo.callId | string | ID звонка в Calltouch. |
data.leads.callInfo.callReferenceId | string | Внешний ID звонка, если отсутствует то отдается null. |
data.leads.callInfo.sipCallId | string | ID звонка с АТС, если отсутствует то отдается null. |
data.leads.requestInfo | object | Если матчинг сработал на заявку, то блок requestInfo не пустой. |
data.leads.requestInfo.requestId | string | ID заявки в Calltouch. |
data.leads.requestInfo.requestNumber | string | Внешний ID заявки. |
data.leads.isManagerAdded | boolean | Флаг указывающий, что у лида были добавлены менеджеры. Возможные значения: true или false. |
data.leads.error | string | Отображаются причины ошибки добавления менеджера. Если ошибок нет то — null. |
Типовые ошибки
Если в запросе обнаруживаются ошибки валидации, то тегирование не выполняется и выводится ошибка.
{ "meta": [], "data": { "type": "validationError", "apiErrorData": null, "validationErrorData": { "violations": [{ "fieldPath": "leads[0].addManagers.managers",
"message": "This value should not be blank." }] } } }
Если в запросе указаны некорректные авторизационные данные — то выводится ошибка.
Список типовых ответов при запросах с некорректными авторизационными данными, или некорректными данными в теле API запроса вы можете посмотреть в этой статье.
Система баллов API Calltouch
Система баллов API — механизм, регулирующий нагрузку на сервера Calltouch. Для каждого проекта выдается индивидуальное суточное количество баллов За каждый успешно выполненный запрос списываются баллы. Подробнее читайте в статье: Система баллов API Calltouch.
Количество запросов в секунду к API Calltouch ограничено — не более 5 запросов в секунду с одного IP-адреса. Например, если в 1 секунду с одного IP-адреса поступит 11 API-запросов, то 5 выполнятся сразу, а остальные API-запросы завершатся с ошибкой c кодом 429 (Too Many Requests).
- A/B тестирование (раздел «Подключение»)
- Email-трекинг (раздел «Подключение»)
- Отслеживание офлайн конверсии (раздел «Подключение»)
- Подключение к отслеживанию дополнительных доменов (раздел «Подключение»)
- Подмена номеров на AMP-страницах Google (раздел «Подключение»)