WebHooks (API)
Что такое Webhook
Вебхук (Webhook) – это механизм оповещения о происходящих в системе событиях посредством функций обратных вызовов. Когда случается интересующее клиента событие, сервер отправляет запрос на URL-адрес, предоставленный клиентом для приема вебхуков.
Активация вебхуков (Webhook enabling)
Чтобы активировать вебхуки в Вашей компании, необходимо перейти в раздел "Настройки", подраздел "Leeloo API", и, на странице, которая открылась, поставить отметку в чекбоксе "Включён Webhook", как изображено на скриншоте ниже.
Далее необходимо ввести URL вашего webhook-сервера (1).
Выберите интересующие Вас параметры, о которых будет приходить информация на сервер (2), и сохраните настройки (3).
Внимание! Вебхуки передают время в UTC таймзоне
Примеры ответов
- events - массив событий с последней синхронизации;
- type - тип события:
- SUBSCRIBE - приходит при подписке на ЛГТ:
- account_id - идентификатор аккаунта;
- account_name - имя аккаунта;
- created_at - время события;
- leadgentool_id - идентификатор ЛГТ;
- leadgentool_name - название ЛГТ;
- tunnel_id - идентификатор туннеля;
- tunnel_name - название туннеля;
- email - адрес электронной почты, введенный в ЛГТ перед подпиской;
- phone - номер телефона, введенный в ЛГТ перед подпиской.
- SALE - приходит при успешной покупке:
- account_id - идентификатор аккаунта;
- account_name - имя аккаунта;
- created_at - время события;
- currency - валюта оффера;
- offer_id - идентификатор оффера;
- offer_name - название оффера;
- payment_method - платежная система оффера;
- price - цена в валюте оффера;
- price_usd - цена в долларах США;
- email - адрес электронной почты, введенный в ЛГТ перед подпиской;
- phone - номер телефона, введенный в ЛГТ перед подпиской.
- ORDER - приходит при формировании заказа:
- account_id - идентификатор аккаунта;
- account_name - имя аккаунта;
- created_at - время события;
- currency - валюта оффера;
- offer_id - идентификатор оффера;
- offer_name - название оффера;
- payment_method - платежная система оффера;
- price - цена в валюте оффера;
- price_usd - цена в долларах США;
- email - адрес электронной почты, введенный в ЛГТ перед подпиской;
- phone - номер телефона, введенный в ЛГТ перед подпиской.
- SUBSCRIBE - приходит при подписке на ЛГТ:
INCOME_MESSAGE -
приходит при получении входящего сообщения в чат.
- "text": - текст сообщения
- "account_id": - id канала связи
- "person_id": - id человека
- "connection_id": - id канала коммуникации
- "email": - email пользователя
- "phone": - телефон пользователя
- "created_at": "2020-07-13T12:01:44.333Z", - время получения сообщения
- "account_name": "Feliks", - имя отправителя сообщения
- "connection_name": "Лилу в Телеграмм" - название канал связи
{ "events": [ { "events": [ { "type": "SUBSCRIBE", "data": { "tunnel_id": "5e1c853bf5be49000db58723", "account_id": "5f46a0ce5fa0ee000e697436", "person_id": "5f46a0ce5fa0ee000e697435", "leadgentool_id": "5e1c8578c7f2f8000ce843da", "connection_id": "5e11c3264f997e000ca66433", "traffic_source_id": "5e1c8578c7f2f8000ce843dd", "utm_marks": { "utm_campaign": "leeloo" }, "email": "tesst@gmail.com", "phone": "+380952938955", "created_at": "2020-09-04T10:09:44.394Z", "tunnel_name": "первый туннель", "account_name": "Feliks", "leadgentool_name": "подписка1", "connection_name": "teslaclub", "traffic_source_name": "Default traffic source" } } ] } { "data": { "order_id": "5eabfdfb4eee28000e33dac7", "account_id": "5e9eed3c8b2dc7000faff207", "person_id": "5e9eed3c8b2dc7000faff206", "offer_id": "5c90ca21bc87a6000d7cc67a", "offer_name": "1111", "price": 10770, "price_usd": 165.69, "currency": "RUB", "payment_method": "5d08cd71bcc043000c4bc5fc", "email": "test@gmai.com", "phone": "+380952938955", "connection_id": "5e11c3264f997e000ca66433", "created_at": "2020-05-01T10:47:06.474Z", "account_name": "Feliks", "connection_name": "teslaclub" }, "type": "SALE" }, { "data": { "order_id": "5eabfeadaf2213000cc5ee1e", "account_id": "5e9eed3c8b2dc7000faff207", "person_id": "5e9eed3c8b2dc7000faff206", "offer_id": "5c90ca21bc87a6000d7cc67a", "offer_name": "1111", "price": 10770, "price_usd": null, "currency": "RUB", "payment_method": "5d08cd71bcc043000c4bc5fc", "email": "test@gmai.com", "phone": "+380952938955", "connection_id": "5e11c3264f997e000ca66433", "created_at": "2020-05-01T10:49:17.260Z", "account_name": "Feliks", "connection_name": "teslaclub" }, "type": "ORDER" { "events": [ { "type": "INCOME_MESSAGE", "data": { "text": "подписка", "account_id": "5dd691740f69bb000d45dbcb", "person_id": "5dd691740f69bb000d45dbca", "connection_id": "5ae9dee9ad5e5e0010374ac7", "email": "test@gmail.com", "phone": "+380664445432", "created_at": "2020-07-13T12:01:44.333Z", "account_name": "Feliks", "connection_name": "Лилу в Телеграмм" } } ] }
На запрос по webhook Ваш сервер должен предоставлять ответ response status 200 не позднее чем через 2 секунды после того, как Ваш сервер получает событие.