Вступ
У цій документації ви дізнаєтеся про те, як використовувати REST API Zenedu для інтеграції нашої платформи з іншими сервісами.
API базується на протоколі HTTP, і всі відповіді повертаються у форматі JSON. Усі запити повинні мати значення Accept: application/json
у заголовках.
Базовый URL
Базовий URL для всіх методів API: https://app.zenedu.io/api/v1/
Усі запити повинні мати значення Accept: application/json
в заголовках.
Аутентифікація
API Zenedu використовує аутентифікацію за допомогою токена-носія (Bearer token) для забезпечення безпечного доступу до захищених методів. Для взаємодії з API в кожному запиті необхідно включити заголовок авторизації.
Отримання API Токена
Щоб отримати токен API, перейдіть на сторінку облікового запису в розділі API. Токен генерується під час реєстрації та залишається дійсним безстроково.
Дуже важливо не розкривати ваш токен API у загальнодоступному коді чи репозиторіях. Якщо ви підозрюєте, що ваш токен API був скомпрометований, відразу скиньте його та отримайте новий через ту саму сторінку.
Виконання запитів
Після отримання токена API, увімкніть його у ваші запити, використовуючи заголовок Authorization. Встановіть заголовок на Bearer YOUR_API_TOKEN
.
Приклад запиту:
curl -X GET "https://app.zenedu.io/api/v1/endpoint" -H "Accept: application/json" -H "Authorization: Bearer YOUR_API_TOKEN"
Методи
Bots
Опис
Отримайте список всіх ваших роботів за допомогою цього методу.
URL:
https://app.zenedu.io/api/v1/bots
Метод: GET
Автентифікація: Заголовок Authorization зі значенням
Bearer YOUR_API_TOKEN
Параметри: Немає
Результати: Список роботів відсортований за датою створення в порядку зменшення.
Приклад запиту
curl -X GET "https://app.zenedu.io/api/v1/bots" -H "Accept: application/json" -H "Authorization: Bearer YOUR_API_TOKEN"
Приклад відповіді
{
"data": [
{
"id": 2,
"name": "Test Bot 2",
"username": "test_bot_2",
"is_active": true,
"created_at": "2023-07-24T07:58:52.000000Z"
},
{
"id": 1,
"name": "Test Bot",
"username": "test_bot",
"is_active": true,
"created_at": "2023-06-23T09:41:34.000000Z"
}
]
}
Subscribers
Описание
Отримайте список усіх підписників за допомогою цього методу. Результати розбито на сторінки по 30 елементів на сторінку.
URL:
https://app.zenedu.io/api/v1/bot/{botId}/subscribers
Метод: GET
Автентифікація: Заголовок Authorization зі значенням
Bearer YOUR_API_TOKEN
Результати: Список передплатників відсортовано за датою створення в порядку зменшення.
Параметри: Використовуйте параметри
per_page
таpage
для керування кількістю результатів на сторінці.
Приклад запиту
curl -X GET "https://app.zenedu.io/api/v1/bot/1/subscribers?per_page=30&page=1" -H "Accept: application/json" -H "Authorization: Bearer YOUR_API_TOKEN"
Приклад відповіді
{
"data": [
{
"id": 3,
"user_id": 1002,
"first_name": "Sarah",
"last_name": "Connor",
"username": "sarah_connor",
"phone": null,
"email": null,
"notes": null,
"tags": null,
"is_active": true,
"is_blocked": false,
"last_active_at": "2023-07-24T14:43:12.000000Z"
"created_at": "2023-07-24T14:43:10.000000Z"
},
{
"id": 2,
"user_id": 1001,
"first_name": "Foo",
"last_name": "Bar",
"username": "foo_bar",
"phone": null,
"email": null,
"notes": null,
"tags": null,
"is_active": true,
"is_blocked": false,
"last_active_at": "2023-07-24T14:43:12.000000Z"
"created_at": "2023-07-24T14:41:44.000000Z"
},
{
"id": 1,
"user_id": 1000,
"first_name": "John",
"last_name": null,
"username": "john",
"phone": null,
"email": null,
"notes": null,
"tags": null,
"is_active": true,
"is_blocked": false,
"last_active_at": "2023-07-24T14:43:12.000000Z"
"created_at": "2023-06-23T09:51:07.000000Z"
}
],
"links": {
"first": "https://app.zenedu.io/api/v1/bot/1/subscribers?page=1",
"last": "https://app.zenedu.io/api/v1/bot/1/subscribers?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "https://app.zenedu.io/api/v1/bot/1/subscribers?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "https://app.zenedu.io/api/v1/bot/1/subscribers",
"per_page": 30,
"to": 3,
"total": 3
}
}
Orders
Опис
Отримайте список всіх замовлень за допомогою цього методу. Результати розбито на сторінки по 30 елементів на сторінку.
URL:
https://app.zenedu.io/api/v1/bot/{botId}/orders
Метод: GET
Автентифікація: Заголовок Authorization зі значенням
Bearer YOUR_API_TOKEN
Результати: Список замовлень відсортований по даті створення в порядку зменшення.
Параметри: Використовуйте параметри
per_page
іpage
для керування кількістю результатів на сторінці.
Пример запроса
curl -X GET "https://app.zenedu.io/api/v1/bot/1/orders?per_page=30&page=1" -H "Accept: application/json" -H "Authorization: Bearer YOUR_API_TOKEN"
Пример ответа
{
"data": [
{
"id": 2,
"uuid": "9d76cf9c-fdb4-4f7b-98e4-76b96159df93",
"number": 2,
"offer_id": 2,
"offer_name": "Offer 2",
"price": 1,
"currency": "USD",
"subscriber_id": 2,
"type": "one-time",
"payment_system_type": "fondy",
"payment_system_name": "Fondy",
"status_changed_at": "2023-07-24T14:43:52.000000Z"
"created_at": "2023-07-24T14:43:24.000000Z",
"subscriber": {
"id": 1,
"user_id": 1000,
"first_name": "John",
"last_name": null,
"username": "john",
"phone": null,
"email": null,
"notes": null,
"tags": null,
"is_active": true,
"is_blocked": false,
"last_active_at": "2023-07-27T08:39:03.000000Z",
"created_at": "2023-06-23T09:51:07.000000Z"
}
},
{
"id": 1,
"uuid": "a9e58c73-f6a8-413e-b6c5-7af312bf315b",
"number": 1,
"offer_id": 1,
"offer_name": "Offer 1",
"price": 1,
"currency": "USD",
"subscriber_id": 1,
"type": "subscription",
"payment_system_type": "stripe",
"payment_system_name": "Stripe",
"status_changed_at": "2023-07-24T14:42:12.000000Z"
"created_at": "2023-07-24T14:41:52.000000Z",
"subscriber": {
"id": 2,
"user_id": 1001,
"first_name": "Foo",
"last_name": "Bar",
"username": "foo_bar",
"phone": null,
"email": null,
"notes": null,
"tags": null,
"is_active": true,
"is_blocked": false,
"last_active_at": "2023-07-27T08:39:03.000000Z",
"created_at": "2023-06-23T09:51:07.000000Z"
}
}
],
"links": {
"first": "https://app.zenedu.io/api/v1/bot/1/orders?page=1",
"last": "https://app.zenedu.io/api/v1/bot/1/orders?page=1",
"prev": null,
"next": null
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 1,
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "https://app.zenedu.io/api/v1/bot/1/orders?page=1",
"label": "1",
"active": true
},
{
"url": null,
"label": "Next »",
"active": false
}
],
"path": "https://app.zenedu.io/api/v1/bot/1/orders",
"per_page": 30,
"to": 2,
"total": 2
}
}