Импорт заявок
Запрос
POST: https://api.calltouch.ru/lead-service/v1/api/request/create
- Access-Token – API-ключ
- SiteId – ID ЛК Calltouch
Тело запроса в формате JSON:
{
"requests":
[
// Заявка 1
{
"requestNumber": "Уникальный ID заявки с формы на сайте",
"subject": "Название формы",
"requestUrl": "Адрес страницы, с которой отправлена заявка",
"requestDate": "Дата и время отправки заявки",
"sessionId": "ID сессии Calltouch",
"phoneNumber": "Номер телефона клиента",
"email": "Почта клиента",
"fio": "ФИО пользователя",
"comment": {
"text": "Комментарий к заявке"
},
"addTags": [
{"tag": "Тег 1"},
{"tag": "Тег 2"},
{"tag": "Тег N"}
],
"customSources": {
"source": "Произвольный источник",
"medium": "Произвольный канал",
"campaign": "Произвольная кампания",
"content": "Произвольное объявление",
"term": "Произвольная ключевая фраза"
}, "customFields": [ {"field": "name", "value": "Вася"}, {"field": "birthday", "value": "1990-01-01"} ]
}
// Заявка N
...
]
}
Параметры запроса
Параметр | Формат | Обязательный | Описание |
requests | array | Да | Массив заявок. Можно перечислить до 100 заявок за 1 запрос. Импорт происходит в режиме онлайн. Результат импорта будет доступен сразу же в ответе. Обязательно. |
requests.requestNumber | string | Да | Уникальный ID заявки с формы на сайте. Любые символы, максимум 100. |
requests.subject | string | Нет | Название формы. Любые символы, максимум 100. |
requests.requestUrl | string | Нет | Адрес страницы, с которой отправлена заявка. Любые символы, максимум 1000. |
requests.requestDate | string | Да | Дата и время отправки заявки. Формат: dd-mm-yyyy hh:mm:ss. |
requests.sessionId | string | Нет |
ID сессии Calltouch. Любые символы, максимум 100. Если не указано, то заявки будет присвоен произвольный источник customSources. Подробнее о получении sessionId в статье: Получение id сессии Calltouch |
requests.phoneNumber | string | Нет | Номер телефона клиента. Номер может быть в любом формате, 71234567890, +71234567890, 8 (123) 456-78-90 и любом другом – он будет автоматически конвертирован в 11-значный формат. |
requests.email | string | Нет | Почта клиента. Формат x@x.x, любые символы. |
requests.fio | string | Нет | ФИО пользователя. Любые символы, максимум 100. |
requests.comment.text | string | Нет | Комментарий к заявке. Любые символы, максимум 1000. |
requests.addTags | array | Нет | Добавление тегов к заявке. Если такие теги уже есть в ЛК, новые не создаются, а используются существующие. Любые символы, максимум 100 в каждом теги. Максимум 100 тегов. |
requests.customSources | object | Нет | Произвольные источники заявки. Используются только когда не указан sessionId. Необязательно. Если не указан ни sessionId ни произвольные источники, то заявка создается без источника. |
requests.customSources. source |
string | Да, если указан customSources. | Произвольный источник |
requests.customSources. medium |
string | Да, если указан customSources. | Произвольный канал |
requests.customSources. campaign |
string | Да, если указан customSources. | Произвольная кампания |
requests.customSources. content |
string | Нет | Произвольное объявление |
requests.customSources. term |
string | Нет | Произвольная ключевая фраза |
requests.customFields |
array | Нет |
Данные по пользовательским полям в заявке. Для использования их необходимо заранее добавить в настройках API ЛК Calltouch. Поля в ЛК Calltouch могут быть или числовыми, или текстовыми. В числовые можно передавать только цифры, дробная часть отделяется точкой, максимум 100 символов. В текстовые поля допустимо передавать любые символы, максимум 100. Формат: "customFields": [ В field передается название пользовательского поля в API, в value передается значение пользовательского поля. |
Ответ
Если валидация всех параметров прошла успешно, то запускается процесс импорта заявок и в ответ отдается информация по импортированным заявкам, пример:
{
"meta": [],
"data": {
"requests": [
{
"imported": true,
"requestNumber": "HG6Z4qxVEoI4ewZ8",
"calltouchRequestId": 1257831,
"error": null
}
]
}
}
{
"meta": [],
"data": {
"message": "Ошибка доступа"
}
}
{
"meta": [],
"data": {
"message": "Ошибка доступа"
}
}
Параметры ответа
Параметр | Формат | Описание |
data.requests.imported | boolean | Флаг импортирована ли заявка или нет |
datarequests.requestNumber | string | ID заявки с сайта |
datarequests.calltouchRequestId | string | ID заявки в Calltouch, может быть null |
datarequests.error | string | Отображется причина ошибки импорта заявок |
Если в запросе обнаруживаются ошибки валидации, то импорт заявок не выполняется и выводится ошибка:
{
"meta": [],
"data": {
"type": "validationError",
"apiErrorData": null,
"validationErrorData": {
"violations": [
{
"fieldPath": "requests[0].requestDate",
"message": "Значение даты и времени недопустимо."
}
]
}
}
}
Система баллов API Calltouch
Система баллов API - механизм, регулирующий нагрузку на сервера Calltouch. Для каждого проекта выдается индивидуальное суточное количество баллов
За каждый успешно выполненный запрос списываются баллы. Подробнее читайте в статье: Система баллов API Calltouch
Количество запросов в секунду к API Calltouch ограничено – не более 5 запросов в секунду с одного IP-адреса. Например, если в 1 секунду с одного IP-адреса поступит 11 API-запросов, то 5 выполнятся сразу, а остальные API-запросы завершатся с ошибкой.
и мы поможем вам
- A/B тестирование (раздел «Подключение»)
- Email-трекинг (раздел «Подключение»)
- Отслеживание офлайн конверсии (раздел «Подключение»)
- Подключение к отслеживанию дополнительных доменов (раздел «Подключение»)
- Подмена номеров на AMP-страницах Google (раздел «Подключение»)