Формат запросов и ответов

Базовый адрес, заголовки, пагинация и структура JSON.

Методы V2 доступны относительно адреса используемого экземпляра AXKED.

Базовый адрес

https://example.axked.ru/api/v2

Формат данных

Запросы и ответы используют UTF-8 и JSON. Для GET-запросов фильтры передаются в строке запроса.

Authorization: Bearer ACCESS_TOKEN
Accept: application/json
Content-Type: application/json

Заголовок Content-Type нужен при отправке JSON-тела, например при регистрации оплаты. Запрос получения токена POST /oauth/token использует другой тип: application/x-www-form-urlencoded, как показано в инструкции авторизации.

Приёмник /api/add-req-from-site/... и исходящие вебхуки заявок имеют собственный контракт. OAuth-токен V2 не заменяет параметры доступа сформированного адреса приёмника. Формат результата response_format=json описан в инструкции по заявкам с сайта.

Списки и пагинация каталога

Постраничные методы возвращают массив data и объект meta.

{
  "data": [],
  "meta": {
    "current_page": 1,
    "last_page": 3,
    "per_page": 20,
    "total": 54
  }
}

Допустимый размер страницы указан в документации конкретного метода: каталог групп принимает per_page от 1 до 100, поиск ученика - от 1 до 50. Методы, возвращающие одну операцию, не используют пагинацию.

Страницы выгрузки данных аккаунта

Новые списки учеников, контактов, связей с группами, истории, абонементов, пакетов и финансовых операций используют after_id и per_page от 1 до 50. Ответ содержит data и meta: per_page, has_more, next_after_id. Передавайте следующий ID с теми же фильтрами. Начинайте новую выгрузку без after_id. Это переход по страницам текущих данных, а не журнал изменений.

Лимит новых методов вместе: 30 запросов в минуту на подключение и 60 на компанию, одна выгрузка компании одновременно. При 429 следующий запрос допустим после паузы из Retry-After. Для финансов и истории баланса обязателен период до 31 календарного дня включительно.