АПІ 2.0 / API v 2.0

 

API (Application Programming Interface) — це інструмент, який дозволяє вашим застосункам, сайтам, CRM «спілкуватися» та обмінюватися даними з платформою Leeloo.ai. За допомогою API ви можете отримати інформацію про ваших клієнтів, передати дані про клієнтів (оффери) в таблицю, підключити систему онлайн-оплати або доставки без складної та затратної розробки.

Вступ до використання API

Заголовок запиту (Headers)

При виконанні запитів до Leeloo.AI вам необхідно використовувати Headers. У полі «Ключ» вставте X-Leeloo-AuthToken, а в полі «Значення» — ваш API токен Leeloo.ai.

 

 

Де взяти API токен?

API токен можна знайти в розділі Leeloo.ai API на платформі Leeloo.ai . Він необхідний для автентифікації запитів до API, підтверджуючи, що запити надходять від авторизованого користувача..

 

Типи запитів

На платформі доступні різні типи запитів, які можна використовувати для інтеграції із зовнішніми системами:

  • GET: для отримання даних. Запитує інформацію з API.

  • POST: для надсилання даних. Відправляє дані (наприклад, реєстрація нового користувача).

  • PUT: для оновлення існуючих даних.

 

Використання змінних та користувацьких полів

Змінні можна створювати в розділі Вміст → Змінні.
Користувацькі поля (Custom Fields) можна створювати в розділі Вміст → Поля.

Змінні та користувацькі поля можна вставляти в тіло запиту (Body), якщо потрібна динамічна передача даних. Наприклад, якщо потрібно передати дані про користувача або статус замовлення, вставляйте змінні в поля запиту для передачі індивідуальної інформації.

 

 

 

 

Список системних ID (змінних), доступних на платформі::

  • category_id - id категорії шаблонів повідомлень. Цей category_id беремо з посилання при відкритті категорії шаблону в розділі Тунелі продажів, Шаблони повідомлень.
    Приклад - https://app.leeloo.ai/campaigns-templates/category_id/templates

  • account_id - id каналу зв’язку беремо з посилання у картці клієнта в розділі Чати.
    Приклад - https://app.leeloo.ai/chats/unread/account_id/5e60191da0fd4a000d3998bc/

  • template_id - id шаблону повідомлення на платформі беремо зі створеного шаблону в категорії шаблонів.
    Приклад - https://app.leeloo.ai/campaigns-templates/category_id/templates/creator/template_id

  • person_id - id каналу комунікації беремо з посилання клієнта в розділі Чати.
    Приклад - https://app.leeloo.ai/chats/all/account_id/person_id

  • leadgentool_id - id Інструменту Лідогенерації (LGT) беремо з тунелю продажів, вашого вже створеного ЛГТ. Натисніть правою кнопкою миші на ньому, потім «Скопіювати ID LGT».

  • paymentCreditsId - id платіжної системи. Можна дізнатися в налаштуваннях платформи, розділі Платежі, натиснувши «Детальніше» на підключеному платежі.
    Приклад - https://app.leeloo.ai/settings/integrations/payments/credits/payment-credit/manual/paymentCreditsId

  • offerId - id Пропозиції беремо з створеної вами Пропозиції в розділі Тунель Продажів.
    Приклад - https://app.leeloo.ai/campaigns-offers/offerId/offers/1

  • managerId - id менеджера (Користувача), якого ви додали на платформу через розділ Користувачі, натисніть на створеного користувача і скопіюйте id в посиланні.
    Приклад - https://app.leeloo.ai/settings/company/users/user/managerId

  • order_id - id замовлення, тобто коли ваша пропозиція перейшла в статус замовлення. Цей id можна отримати, виконавши запит на Отримання Списку Замовлень, де у відповіді буде інформація про замовлення, включаючи id замовлення..
    Приклад - "{"data":[{"id":"order_id","person_id":"person_i","title":"Курс9","price":20,"currency":"USD","status":"REJECTED","createdAt":"2024-10-03T08:00:02.853Z","updatedAt":"2024-10-03T15:25:49.028Z"},

  • user_id - id користувача (Підписника) саме аудиторії. Отримати можна, виконавши запит Отримати Список Користувачів Платформи, де у відповіді буде інформація про id користувача.
    Приклад - "{"data":{"id":"user_id","name":"Andrew","createdAt":"2024-02-21T12:32:55.085Z","updatedAt":"2024-10-07T06:42:52.631Z"},"status":1}"

  • tunnel_id - id тунелю продажів. Отримати можна, перейшовши у ваш тунель продажів та скопіювавши з адресного рядка.
    Приклад - https://app.leeloo.ai/tunnels/tunnel_id/tree

  • tunnel_block_id - id блоку в тунелі продажів. Отримати можна, перейшовши в тунель продажів, натиснувши на блок і скопіювавши з адресного рядка.
    Приклад - https://app.leeloo.ai/tunnels/tunnel_id/tree/tunnel_block_id

  • connection_id - id каналу зв’язку. Отримати можна, виконавши запит на отримання інформації про користувачів або конкретного користувача. Приклад запиту Отримати Інформацію по Конкретній Людині.
    Приклад -
    {
    "account_id": "account_id",
    "connection_id": "connection_id",
    "connection_status": "OK",
    "from": "TELEGRAM"
    }

  • tag_id - id Тега, який ми присвоюємо користувачам (підписникам). Отримати можна, перейшовши в Налаштування платформи, розділ Налаштування CRM, Теги, натиснувши «Скопіювати ID» праворуч від створеного Тега.

  • У всіх запитах дату необхідно вказувати з урахуванням нульового часового поясу UTC-0.

  • Усі запити, що використовують Body, мають надсилатися у форматі JSON.

Шаблони повідомлень

Отримати список категорій шаблонів повідомлень

GET https://api.leeloo.ai/api/v2/categories/templates

ВАЖЛИВО: У Headers, «Заголовок запиту» в поле «Ключ» вставте X-Leeloo-AuthToken, а в поле «Значення» — ваш API токен Leeloo.ai.

Response

"data": {         "categories": [             {                 "id": "5e3bf3fdb70492000f72cd6c",                 "name": "Category 1"             },             {                 "id": "5e18a2a3ed0b7a000d6c948f",                 "name": "Category 2"             }         ]     },     "status": 1 }

 

Отримати список шаблонів повідомлень всередині категорії

GET https://api.leeloo.ai/api/v2/categories/templates/category_id

Path Params
category_id (example: 5b3f543bb2737000133d25b0) - id категорії шаблонів повідомлень
Цей category_id беремо з посилання при відкритті категорії шаблону в розділі Тунелі продажів, Шаблони повідомлень.
Приклад: https://app.leeloo.ai/campaigns-templates/category_id/templates

ВАЖЛИВО: У Headers, «Заголовок запиту» в поле «Ключ» вставте X-Leeloo-AuthToken, а в поле «Значення» — ваш API токен Leeloo.ai.

Response

{     "data": {         "templates": [             {                 "id": "5e42be758d4fff000cafe6ef",                 "message_name": "test template 2"             },             {                 "id": "5e42be688d4fff000cafe5cc",                 "message_name": "test template 1"             }         ]     },     "status": 1 }

 

Відправка шаблону повідомлення

POST https://api.leeloo.ai/api/v2/messages/send-template

Request Body(json)
account_id (example: 513f543gb2737020133d25b0) - id каналу зв’язку беремо з посилання у картці клієнта в розділі Чати. Приклад: https://app.leeloo.ai/chats/unread/account_id/5e60191da0fd4a000d3998bc/
template_id (example: 6b3f543bb2737003133d25b4) - id шаблону повідомлення на платформі

{ "account_id": "66fac2b853d5123567d207b7", "template_id": "65fc3f2656789099e157e817", "variables": { "key1": "value1", "key2": "value2" } }

Response

 

Повідомлення

Отримати список повідомлень з чату за каналом комунікації

Запит

GET https://api.leeloo.ai/api/v2/communication-channels/{person_id}/chat-messages?limit=2&offset=0

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id каналу комунікації беремо з посилання клієнта в розділі Чати. Приклад https://app.leeloo.ai/chats/all/66fac2b853d5470e1ed207b6/person_id

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес).
offset - Кількість результатів для пропуску (за замовчуванням 0).

Response

 

Відправка повідомлень

POST https://api.leeloo.ai/api/v2/messages/send-message

Request Body(json)
account_id (example: 5b3f543bb2737000133d25b0) - id каналу зв’язку
text - Текст повідомлення, яке хочемо надіслати

Response

Канали комунікації

Отримати список каналів комунікації (з зовнішніми UTM-мітками)

GET https://api.leeloo.ai/api/v2/communication-channels?limit=20&offset=0&filter[last_message][from]=2020-02-10&filter[last_message][to]=2020-04-14

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес).
offset - Кількість результатів для пропуску (за замовчуванням 0).
filter[last_message][from] - фільтр за останнім повідомленням від зазначеної дати

filter[last_message][to] - фільтр за останнім повідомленням до зазначеної дати

Response

 

Отримання списку каналів зв’язку

GET https://api.leeloo.ai/api/v2/connections

Response


Отримання інформації про людину за каналом комунікації (отримати person_id, знаючи параметр account_id)

GET https://api.leeloo.ai/api/v2/communication-channels/{account_id}/person 

Path Params
account_id (example: 5b3f543bb2737000133d25b0) - id каналу комунікації

Response

LGT

Створити джерело трафіку в LGT

POST https://api.leeloo.ai/api/v2/leadgentools/{leadgentool_id}/create-traffic-source

Path Params
leadgentool_id (example: 5b3f543bb2737000133d25b0) - id інструмента лідогенерації (LGT)

Request Body (json)
name - назва джерела трафіку
description - опис джерела трафіку

Response

Замовлення

Створити ручне замовлення

POST https://api.leeloo.ai/api/v2/orders

Request Body(json)
paymentCreditsId (example: 5b3f543bb2737000133d25b2) - id платіжної системи. Можна дізнатися в налаштуваннях платформи, розділ з платіжними системами.
email - Email адреса особи
phone - Телефон особи
transactionDate - Бажана дата проведення транзакції (для відображення на платформі) вказується у форматі 2020-02-04T11:46:48.803Z
offerId (example: 5b3f543bb2737000133d25b0) - id оффера (пропозиції)
isNotifyAccount - Повідомляти особу про створення замовлення (може бути значення true або false)
personId (example: 5b3f543bb2737000133d25b1) - id особи
managerId (example: 5b3f543bb2737000133d25b0) - id користувача платформи, за яким буде закріплено замовлення. Необов’язково. Якщо не вказати конкретного користувача — продаж буде System.

Response

 

Отримати список замовлень

GET https://api.leeloo.ai/api/v2/orders?limit=20&offset=0

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес).
offset - Кількість результатів для пропуску (за замовчуванням 0)

Response

Отримати інформацію за окремим замовленням

GET https://api.leeloo.ai/api/v2/orders/{order_id}

Path Params
order_id (example: 5b3f543bb2737000133d25b0) - id конкретного замовлення

Response

 

Оновити інформацію в МАНУАЛЬНОМУ (ручному) замовлені

Замовлення НЕ МОЖЕ мати часткових оплат.

POST https://api.leeloo.ai/api/v2/orders/{order_id}

Path Params
order_id (example: 5b3f543bb2737000133d25b0) - id ручного замовлення без часткових оплат.

IMPORTANT: Pass your auth token in 'X-Leeloo-AuthToken' header.

Request Body (form-data)
status example: 'RESOLVED', (one_of: RESOLVED REJECTED)
paymentDate example: '2018-06-27 07:32',
currency example: 'RUB',
price example: '100' (actual price that you receive from account),
userComments example: 'actual date dont match'

Response

 

Підписники

Отримати список усіх підписників

GET https://api.leeloo.ai/api/v2/people?limit=20&offset=100&filter[tags]=vip&filter[tags]=tag2&filter[last_message][from]=2015-04-02&filter[last_message][to]=2015-04-03&filter[phone]=+380966565556&filter[email]=feliks@gmail.com

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес).
offset - Кількість результатів для пропуску (за замовчуванням 0)
filter[tags] - Фільтрація за тегами, якщо необхідна Необов'язково
filter[last_message] { from: 'js_date', to: 'js_date' } - Фільтр за датою останнього повідомлення. Обов’язковий.
filter[phone] - Фільтр за номером телефону. Необов’язково
filter[email] - Фільтр за email. Необов’язково

Response

 

Отримати інформацію про конкретну особу

GET https://api.leeloo.ai/api/v2/people/{person_id}?include=contactedUsers,orders

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id особи на платформі

Response

 

Оновити інформацію в картці клієнта

PUT https://api.leeloo.ai/api/v2/people/{person_id}

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id людини на платформі

Request Body(json)

 

Додати (створити) особу на платформі

POST https://api.leeloo.ai/api/v2/people

Request Body (json)

Response

 

Додати SMS-з'єднання до особи

POST https://api.leeloo.ai/api/v2/people/sms

Request Body(json)

Response

 

Додати коментар до особи

PUT https://api.leeloo.ai/api/v2/people/{person_id}/add-comment

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id людини на платформі

Request Body(json)

Response

 

Додати дзвінок в акаунт

POST https://api.leeloo.ai/api/v2/calls

Request Body(form-data, all required)
user_id example: ‘5b0d313b307879002915b3cc’
from example: ‘606'
to example: ‘607'
date example: ‘2024-03-22T15:30:17.339Z'
account_id example: '6b0d313b307879002915b3c1’
record_link example: 'https://file-examples.com/storage/2017/11/file_example_MP3_5MG.mp3’ or 'NOT_DEFINED’
status example: 'SUCCESS' (one of: 'TALKING', 'SUCCESS', 'NO_ANSWER', 'CLOSED_BY_SYSTEM')
duration example: '100' (seconds)
type example: INBOUND or OUTBOUND

Response

 

Теги

Отримати список тегів

GET https://api.leeloo.ai/api/v2/tags

Response

 

Видалити тег у людини

PUT https://api.leeloo.ai/api/v2/people/{person_id}/remove-tag

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id особи на платформі

Request Body
tag_id - ID тега, який потрібно видалити. Скопіюйте його з розділу «Налаштування» > «Теги» (Скопіювати ID).

Response

 

Додати тег людині

PUT https://api.leeloo.ai/api/v2/people/{person_id}/add-tag

Path Params
person_id (example: 5b3f543bb2737000133d25b0) - id особи на платформі

Request Body(form-data)
tag_id - ID тега, який потрібно видалити. Скопіюйте його з розділу «Налаштування» > «Теги» (Скопіювати ID).

Response

Тунелі продаж

Отримати список тунелів

GET https://api.leeloo.ai/api/v2/tunnels?limit=20&offset=0

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес).
offset - Кількість результатів для пропуску (за замовчуванням 0).

Response

Отримати інформацію про тунель

GET https://api.leeloo.ai/api/v2/tunnels/{tunnel_id}?include=leadgentools

Path Params
tunnel_id (example: 5b3f543bb2737000133d25b0) - id тунелю продажів

Response

 

Отримати статистику по всіх тунелях

GET https://api.leeloo.ai/api/v2/tunnels/stats

Response

 

Отримати статистику по одному тунелю


GET https://api.leeloo.ai/api/v2/tunnels/{tunnel_id}/stats

Path Params
tunnel_id (example: 5b3f543bb2737000133d25b0) - id тунелю продажів

Response

Підписка на тунель і блок тунелю

POST https://api.leeloo.ai/api/v2/communication-channels/{account_id}/manual-subscribe

Path Params
account_id - id каналу комунікації, який потрібно підписати

Request Body (form-data)
tunnel_id (example: 5b3f543bb2737000133d25b0) - id тунеля
tunnel_block_id (example: 5b3f543bb2737000133d25b0) - id блока в тунеле

Response

Користувачі

Отримати список користувачів платформи

GET https://api.leeloo.ai/api/v2/users?limit=20&offset=0

Query Params
limit - Обмеження кількості результатів (не рекомендується завантажувати велику кількість даних одночасно, оскільки це може уповільнити процес)
offset - Кількість результатів для пропуску (за замовчуванням 0)

Ответ

Отримати інформацію про конкретного користувача платформи

GET https://api.leeloo.ai/api/v2/users/{user_id}

Path Params
user_id - id користувача платформи

Response