Заголовки запроса
string
обязательно
API-токен сервисного пользователя в формате
Bearer YOUR_TOKEN. Токен выпускает владелец школы в кабинете:
Управление → Школа → Для разработчиков → API-ключи — подробнее в разделе «Аутентификация».integer
обязательно
Числовой ID продавца — аккаунта, которому принадлежит школа. Скопируйте его на странице API-ключи в
карточке «Данные для интеграции → Идентификаторы». По этому ID проверяются права токена.
integer
обязательно
Числовой ID школы, берётся там же, где
Seller-Id. Значение должно совпадать со школой продавца — иначе
вернётся ошибка 400 с cause: "ForbiddenSchoolMismatch".Состояния пользователя — это ключ-значение записи в базе, связанные с конкретным пользователем.
Чтение и запись доступны только для ограниченного списка ключей (whitelist). Для некоторых ключей применяется
маскирование при чтении.Эндпоинты ниже работают в контексте школы и требуют прав управления пользователями школы.Установка значения через PUT полностью замещает предыдущее значение ключа.
Частичных обновлений (merge) нет.
Список поддерживаемых ключей
UtmSignupParams
UtmSignupParams
- Тип: object.
- GET/SET: да/да.
- Маскирование: нет.
- Назначение: UTM/реферальные параметры первичного визита/регистрации.
-
UtmSignupParamsхранится как объект произвольных строковых пар ключ-значение (например, utm_source, utm_medium, fbclid).
Success (GET UtmSignupParams)
Body (SET UtmSignupParams)
PersonalInfoFilled
PersonalInfoFilled
- Тип: boolean.
- GET/SET: да/да.
- Маскирование: нет.
- Назначение: Флаг заполнения персональных данных.
PersonalInfoFilled— булево значениеtrue / false, отражающее факт заполнения персональных данных.
Success (GET PersonalInfoFilled)
Body (SET PersonalInfoFilled)
OnBoardingProgress
OnBoardingProgress
- Тип: object.
- GET/SET: да/да.
- Маскирование: нет.
- Назначение: прогресс прохождения онбординга пользователем.
Body (SET OnBoardingProgress)
ContentCategoryIds
ContentCategoryIds
- Тип: array.
- GET/SET: да/да.
- Маскирование: нет.
- Назначение: выбранные пользователем категории контента (массив ID).
Body (SET ContentCategoryIds)
Запись (
SET) разрешена только для ключей: UtmSignupParams, PersonalInfoFilled, OnBoardingProgress,
ContentCategoryIds. Чтение (GET) дополнительно доступно для VkToken (возвращается замаскированным).
Запрос к ключу вне этого списка вернёт ошибку 400 с cause: "Unauthorized" и сообщением
Not allowed key <ключ> — это ограничение ключа, а не проблема с токеном. Несуществующее имя ключа
отклоняется валидацией (400).Получить состояние по ключу
GET /saas/v2/user/:userId/state/get?key=PersonalInfoFilledПараметры
integer
обязательно
string
обязательно
Ключ состояния — одно из значений из списка выше, с учётом регистра.
Ответ
any
обязательно
Значение состояния. Если значение для ключа ещё не записано —
null.Установить состояние по ключу
PUT /saas/v2/user/:userId/state/set?key=PersonalInfoFilledПараметры
integer
обязательно
string
обязательно
Ключ состояния — одно из значений из списка выше, с учётом регистра.
any
обязательно
Значение, записываемое в состояние. Тип зависит от ключа.
Ответ
boolean
обязательно
Флаг успешной записи состояния.
Требования к правам доступа
Требуется аутентификация по токену и право «Управление пользователями школы» (
SchoolManageUsers).Обновлено: 2026-09-25 13:43 UTC