drivli.
Попробовать бесплатно

Open API

REST API только на чтение. Подключайте 1С, BI-дашборд, собственный сайт школы или свой скрипт — он будет читать данные вашей школы по защищённому ключу. Записать через API нельзя ничего. Если разработчик ошибётся в коде, учеников или платежи в Drivli это не сломает.

Доступно на тарифах «Профи» и «VIP». На Free и «Стандарт» ключ не выдаётся.

Авторизация

Получите ключ в кабинете директора: Реквизиты → 🔑 API → Создать ключ. Передавайте его в заголовке каждого запроса:

Authorization: Bearer drivli_pk_<32 hex>
  • Ключ показывается ровно один раз — копируйте при создании.
  • Один ключ = одна школа, чужие данные физически недоступны.
  • До 10 активных ключей на школу. Неиспользуемые отзывайте.
  • В БД хранится только хэш ключа — компрометация БД не даёт рабочих ключей.

Лимиты

  • Профи: 60 запросов в минуту.
  • VIP: 600 запросов в минуту.
  • Превышение → ответ 429 Too Many Requests с заголовком Retry-After: 60.

Быстрый старт

Список первых 10 активных учеников:

curl -H "Authorization: Bearer drivli_pk_..." \
  "https://api.drivli.ru/api/public/v1/students?status=learning_practice&limit=10"

Ответ:

{
  "items": [
    {
      "id": "9b8a...",
      "full_name": "Иванов И. И.",
      "phone": "+7 555 ...",
      "email": "ivanov@example.com",
      "category": "B",
      "status": "learning_practice",
      "group_id": "f3c1...",
      "branch_id": null,
      "created_at": "2026-04-12T08:30:00Z"
    }
  ],
  "meta": { "total": 142, "limit": 10, "offset": 0 }
}

Эндпоинты

МетодПутьОписание
GET/api/public/v1/students
Список учеников школы.
Параметры: status, category, group_id, limit (≤200), offset
GET/api/public/v1/students/{id}
Карточка одного ученика.
GET/api/public/v1/instructors
Список инструкторов.
Параметры: is_active, limit, offset
GET/api/public/v1/vehicles
Список учебных автомобилей с датами ОСАГО и ТО.
Параметры: limit, offset
GET/api/public/v1/lessons
Список занятий за период.
Параметры: period_from, period_to, instructor_id, student_id, limit, offset
GET/api/public/v1/contracts
Договоры с учениками.
Параметры: student_id, limit, offset
GET/api/public/v1/payments
Платежи за период.
Параметры: period_from, period_to, limit, offset
GET/api/public/v1/leads
Заявки на обучение.
Параметры: status, period_from, period_to, limit, offset
GET/api/public/v1/reports/finance-summary
Финансовая сводка за период: доход, расход, прибыль.
Параметры: period_from, period_to

Безопасность

152-ФЗ требует от нас защищать данные учеников. Поэтому API устроен так:

  • Только HTTPS. По HTTP не отвечаем вообще.
  • Только GET. Записать или удалить что-то через API нельзя.
  • В БД у нас лежит только хэш ключа. Если кто-то унесёт нашу базу — рабочих ключей оттуда не достанет.
  • Один ключ = одна школа. Чужие данные ключ не увидит даже если очень захочет — изоляция на уровне SQL-схемы.
  • Каждый запрос отмечается в карточке ключа: видна дата последнего использования и счётчик. Если ключ кто-то перехватил — это будет заметно.
  • Отозвали ключ — следующий запрос с ним вернёт 401. Без задержек на репликацию или кэш.

Коды ответов

  • 200успех.
  • 400некорректный параметр запроса.
  • 401нет ключа, неверный ключ или ключ отозван.
  • 402школа на тарифе ниже «Профи», Open API закрыт.
  • 404запрашиваемая сущность не найдена.
  • 429превышен лимит запросов в минуту.
  • 503сервис rate-limit недоступен (редко).

Готовы подключаться?

Откройте кабинет директора → «Реквизиты» → «🔑 API» — создайте ключ за минуту.