Skip to main content
На этой странице собраны публичные структуры объектов, возвращаемых в Exode API и вебхуках. Состав полей строго соответствует серверным zod-схемам публичных контрактов: служебные и приватные поля не отдаются.
Списочные методы (.../list/raw) часто возвращают компактную проекцию объекта. Полная структура каждой сущности описана на её странице ниже.

Пользователи и доступ

Пользователь

user и profile: логины, контакты, статусы, extId, права.

Сессия

session: токен авторизации, устройство, статус онлайн.

Группа

group: учебные/продуктовые группы, ограничения, Telegram.

Участник группы

groupMember: связь пользователя и группы, блокировки.

Обучение и продажи

Курс и обучение

course, courseProgress, courseLesson, courseLessonPractice, courseLessonPracticeAttempt.

Продукт и доступы

product, productAccess, productPrice, discount.

Платёж и счёт

payment, invoice, invoiceProduct, acquiring.

Школа и продавец

school, seller, organization.

Сертификат

certificate: именной сертификат за завершение курса и его проверка.

Формы

Формы и поля

formLayout и formFieldValue: макеты форм и значения кастомных полей.

Общие соглашения по полям

  • Даты (createdAt, expireAt, …) — строки ISO 8601 (UTC). Поля с суффиксом At и значением null означают, что событие не наступило.
  • Денежные поля (totalAmount, amount, balance, …) — числа.
  • Поля аудита присутствуют у большинства сущностей: id, createdAt, updatedAt, archivedAt.
  • *Id-поля ссылаются на другую сущность (например, courseId, userId).
  • Необязательные поля (тип … | null, без отметки required) могут прийти со значением null или не прийти вовсе — обрабатывайте оба случая.
  • Enum-значения — строки в PascalCase (Active, OnReview); сравнивайте их с учётом регистра.

Обновлено: 2026-09-25 13:43 UTC