Skip to main content
На этой странице — публичные структуры объектов, связанных с обучением: course, courseProgress, courseLesson, courseLessonPractice, courseLessonPracticeAttempt. Они возвращаются в методах работы с курсами и в вебхуках (CourseCompleted, CourseProgressChanged, CourseLessonPracticeCompleted).
Метод course/list/raw отдаёт компактную проекцию (courseId, productId, name, type, groupIds). Ниже — полные публичные схемы сущностей.

course

Возвращается методами course/create, course/:courseId/update, course/:courseId/get и в вебхуках о курсах.
integer
обязательно
ID курса.
enum
обязательно
Тип: Bundle, Webinar, TextCourse, Assessment, VideoCourse, PersonalLesson.
integer | null
ID продукта, через который продаётся курс и выдаётся доступ к нему.
integer | null
ID контентной категории. Зарезервировано: в текущей версии в ответе не заполняется.
enum
обязательно
Состояние сборки курса: Ready — курс готов (значение по умолчанию); AiGenerating — курс ещё собирается мастером создания курса с ИИ, такой курс скрыт от всех, кроме автора.
string
обязательно
Название.
string
обязательно
Описание.
string | null
Символьный алиас.
string[]
обязательно
Теги.
string[]
обязательно
SEO-теги.
object | null
Изображения: { main } — URL основного изображения курса.
string | null
Промо-видео.
object
обязательно
Настройки курса (произвольный объект).
integer
обязательно
Порядок сортировки.
boolean | null
Является ли бандлом.
string
обязательно
Дата создания (ISO 8601).
string
обязательно
Дата обновления (ISO 8601).
string | null
Дата архивации или null.

courseProgress

Возвращается методом course/:courseId/progresses. Запись описывает прогресс пользователя по конкретному уроку.
integer
обязательно
ID записи прогресса.
integer | null
ID курса.
integer
обязательно
ID пользователя.
integer
обязательно
ID урока.
enum | null
Статус урока. Этапы прохождения, которые сохраняются в записи прогресса (они же приходят в вебхуке CourseProgressChanged):
  • NotStarted — доступ есть, урок ещё не открывали;
  • OnTheory — студент изучает теорию;
  • OnPractice — студент открыл практическую часть;
  • OnReview — задание отправлено куратору и ждёт проверки;
  • OnCorrection — куратор вернул задание на доработку;
  • Completed — урок полностью пройден.
Остальные значения описывают доступность урока и вычисляются на лету: NotInitialized (записи прогресса ещё нет), NotParticipant, AvailableAsDemo, ExpiredByGroup, DisabledByGroup, AllowedByProgress, BlockedByProgress, StartScheduled, StartScheduledWaitPrev, BundleStartBlocked, BundleStartPendingConfirmation.
string | null
Старт по расписанию (ISO 8601).
string | null
Окончание по расписанию (ISO 8601).
string | null
Дедлайн практики (ISO 8601).
boolean | null
Урок завершён.
boolean | null
На проверке.
string | null
Дата завершения (ISO 8601).
string | null
Дата отправки на проверку (ISO 8601).
object[] | null
История статусов: { timestamp, status }.
string
обязательно
Дата создания (ISO 8601).
string
обязательно
Дата обновления (ISO 8601).
string | null
Дата архивации или null.

courseLesson

integer
обязательно
ID урока.
integer
обязательно
ID курса.
enum
обязательно
Тип: Regular, Webinar.
enum
обязательно
Тип доступа: Demo, Participant.
string | null
Статус урока.
string
обязательно
Название.
string
обязательно
Описание.
string | null
Превью.
integer
обязательно
Порядок.
boolean
обязательно
Есть теоретический контент.
boolean
обязательно
Есть практическая часть.
string | null
Дата публикации (ISO 8601).
object
обязательно
Настройки урока.
boolean | null
Опубликован.
string
обязательно
Дата создания (ISO 8601).
string
обязательно
Дата обновления (ISO 8601).
string | null
Дата архивации или null.

courseLessonPractice

integer
обязательно
ID практики.
string | null
Название.
string
обязательно
Описание.
enum
обязательно
Режим вопросов: List, Sequence.
enum
обязательно
Режим результатов: ResultOnly, ShowCorrect, ShowIncorrect.
enum
обязательно
Режим вариантов: Random, Sequence.
enum
обязательно
Режим вариантов при пересдаче: Random, Sequence.
integer | null
Макс. число попыток.
integer | null
Лимит времени (мин).
integer | null
Дедлайн (дней).
integer | null
Порог прохождения.
integer | null
Звёзд за балл задания.
boolean
обязательно
Требуются ответы на все задания.
integer
обязательно
Количество заданий.
string
обязательно
Дата создания (ISO 8601).
string
обязательно
Дата обновления (ISO 8601).
string | null
Дата архивации или null.

courseLessonPracticeAttempt

Возвращается при выгрузке попыток практик и в вебхуке CourseLessonPracticeCompleted.
integer
обязательно
ID попытки.
string | null
UUID попытки.
integer
обязательно
ID варианта.
integer
обязательно
ID пользователя.
enum | null
Статус: Created, OnReview, OnCorrection, AutoVerified, Verified, Failed, Stacked.
integer
обязательно
Номер попытки.
boolean
обязательно
Попытка завершена.
string | null
Отправлена на проверку (ISO 8601).
boolean
обязательно
Отправлена после дедлайна.
string | null
Дедлайн (ISO 8601).
string | null
Дата прохождения (ISO 8601).
integer
обязательно
Количество решённых заданий.
integer
обязательно
Набрано баллов.
integer
обязательно
Максимум баллов.
boolean
обязательно
Попытка не засчитана.
boolean | null
Пройдена.
number | null
Процент правильных.
boolean | null
Просрочена.
object[] | null
История статусов: { timestamp, status }.
string
обязательно
Дата создания (ISO 8601).
string
обязательно
Дата обновления (ISO 8601).
string | null
Дата архивации или null.

Обновлено: 2026-09-28 05:04 UTC