Интеграция через входящий webhook
1. Для начала получим URL для отправки запросов. Для этого нам необходимо войти в аккаунт вионви.CRM и перейти в раздел «Ещё» → «Источники». На открывшейся странице кликаем на кнопку Создать.
В открывшемся окне в поле Тип выберите webhook и укажите название (Его будут видеть менеджеры в качестве источника откуда пришел лид, например название сайта) и сохраните.
Далее мы увидим URL на который необходимо отправлять запросы.
2. Отправка запроса на создание лида
Необходимо отправлять POST запрос с перечислением параметров в формате JSON , кодировке UTF-8 .
Параметры запроса
| Параметр | Тип данных | Описание | Обязательно | |
| name | string | Имя | Нет | |
| phone | string | Телефон | Да, если не указан email | |
| email | string | Email | Нет, если указан phone | |
| int | ID Ответственного сотрудника | Нет | |
| sourceId | int | ID рекламного источника | Нет | |
| remoteId | int | Внешний ID | Нет | |
| locationUnitId | int | ID Офиса | Нет | |
| locationCityId | int | ID Города | Нет | |
| funnelStageId | int | ID Этапа воронки | Нет | |
| cost | int | Сумма (Бюджет) | Нет | |
| utmSource | string | UTM Source | Нет | |
| utmMedium | string | UTM Medium | Нет | |
| utmCampaign | string | UTM Campaign | Нет | |
| utmContent | string | UTM Content | Нет | |
| utmTerm | string | UTM Term | Нет | |
| utmReferrer | string | UTM Referrer | Нет | |
| openstatService | string | openstat Service | Нет | |
| openstatCampaign | string | openstat Campaign | Нет | |
| openstatAd | string | openstat Ad | Нет | |
| openstatSource | string | openstat Source | Нет | |
| from | string | Метка From | Нет | |
| yclid | string | Метка Яндекс.Директ | Нет | |
| ymclid | string | Метка Яндекс.Маркет | Нет | |
| ymClientId | string | Client ID Яндекс.Метрика | Нет | |
| gclid | string | Метка Google Adwords | Нет | |
| yqrid | string | Метка Яндекс QR | Нет | |
| fbclid | string | Метка Facebook | Нет | |
| roistatId | string | Roistat ID | Нет | |
| referrer | string | Источник перехода | Нет | |
| ip | string | IP адрес клиента | Нет |
Пример запроса с перечислением параметров:
{
"name": "test",
"phone": 79998888888,
"email": "fff@mail.ru",
"userIdOwner": 1
}
Параметры ответа
| Параметр | Описание | |
| id | id созданного лида | |
| firstId | id первого лида с данными контактами (показывает на то, что созданный вами лид возможно является дублем) | |
| name | Имя | |
| phone | Телефон | |
| email | Email | |
| ID Ответственного сотрудника | |
| sourceId | ID рекламного источника | |
| remoteId | Внешний ID | |
| dtCreate | Дата и время создания (в unixtime) | |
| dtUpdate | Дата и время последнего изменения (в unixtime) | |
| cost | Сумма (Бюджет) | |
| utmSource | UTM Source | |
| utmMedium | UTM Medium | |
| utmCampaign | UTM Campaign | |
| utmContent | UTM Content | |
| utmTerm | UTM Term | |
| utmReferrer | UTM Referrer | |
| openstatService | openstat Service | |
| openstatCampaign | openstat Campaign | |
| openstatAd | openstat Ad | |
| openstatSource | openstat Source | |
| from | Метка From | |
| yclid | Метка Яндекс.Директ | |
| ymclid | Метка Яндекс.Маркет | |
| ymClientId | Client ID Яндекс.Метрика | |
| gclid | Метка Google Adwords | |
| yqrid | Метка Яндекс QR | |
| fbclid | Метка Facebook | |
| roistatId | Roistat ID | |
| referrer | Источник перехода | |
| ip | IP адрес клиента |
Мы используем обычные коды ответов HTTP для обозначения результата выполнения запроса.
Ответ от сервера приходит в формате JSON и кодировке UTF-8.
При успешном ответе возвращаемый сервером результат будет представлен в теле ответа массивом data.
При ошибке выполнения запроса вы можете получить в теле ответа массив errors.
Пример успешного ответа:
201 Created
Content-Type: application/json
{
"data": {
"id": 50,
"firstId": null,
"name": "test",
"sourceId": 8,
"clientId": null,
"phone": "79998888888",
"email": "fff@mail.ru",
"notAnswer": null,
"userIdCreate": null,
"userIdUpdate": null,
"dtCreate": 1690290640,
"dtUpdate": 1690290640,
"dtNotAnswer": null,
"locationUnitId": null,
"locationCityId": null,
"funnelStageId": null,
"userIdOwner": 1,
"otherCount": 0,
"cost": null,
"remoteId": null,
"utmSource": null,
"utmMedium": null,
"utmCampaign": null,
"utmContent": null,
"utmTerm": null,
"utmReferrer": null,
"openstatService": null,
"openstatCampaign": null,
"openstatAd": null,
"openstatSource": null,
"from": null,
"yclid": null,
"ymclid": null,
"ymClientId": null,
"gclid": null,
"yqrid": null,
"fbclid": null,
"roistatId": null,
"referrer": null,
"ip": null
}
}
Пример неуспешного ответа:
422 Unprocessable Content
Content-Type: application/json
{
"errors": {
"phone": [
"Поле Телефон обязательно для заполнения."
]
}
}