Заголовки запроса
string
обязательно
API-токен сервисного пользователя в формате
Bearer YOUR_TOKEN. Токен выпускает владелец школы в кабинете:
Управление → Школа → Для разработчиков → API-ключи — подробнее в разделе «Аутентификация».integer
обязательно
Числовой ID продавца — аккаунта, которому принадлежит школа. Скопируйте его на странице API-ключи в
карточке «Данные для интеграции → Идентификаторы». По этому ID проверяются права токена.
integer
обязательно
Числовой ID школы, берётся там же, где
Seller-Id. Значение должно совпадать со школой продавца — иначе
вернётся ошибка 400 с cause: "ForbiddenSchoolMismatch".Как это работает
Генерация отчета выполняется через асинхронный workflow. Процесс состоит из трех шагов:1
Создание задачи на генерацию
Отправьте
POST запрос на /saas/v2/query-export/generate с указанием типа отчета, переменных фильтрации и
формата.
В ответ (HTTP 201) вы получите объект с полем payload, содержащим uuid — идентификатор для
отслеживания результата. Сам файл на этом шаге еще не создан.2
Получение результата
Отправляйте
подставив
GET запрос
на /saas/v2/workflow-execution/:executionUuid/result, подставив
uuid из первого шага, с интервалом 2–5 секунд.
Повторяйте запрос до тех пор, пока status не станет Completed (или Failed). Сразу после запуска
payload может быть null — задача еще не начала выполняться, продолжайте опрос.3
Скачивание файла
При
status: Completed скачайте файл по ссылке payload.result.fileUrl. Скачивайте сразу: результат
хранится ограниченное время (подробнее — на странице получения результата).Сразу, со статусом
400 и cause: "validation", отклоняется только запрос с неизвестным type, format
или с variables, которое не является объектом. Ошибки внутри variables (неизвестное поле фильтра, неверное значение enum, отсутствующий filter) и нехватка прав
на данные не приводят к ошибке этого запроса: задача создается, а при опросе результата приходит
status: Failed. Причина ошибки в ответе не передается — сверьте запрос со страницей типа отчета и
правами токена.Создание запроса на выгрузку
Rate limit: 100 запросов в час на сервисного пользователя (токен). При превышении возвращается HTTP
429 —
подробнее в разделе Rate-limit. Опрос результата в этот лимит не входит.string
Язык заголовков колонок и переводимых значений в файле:
ru, en, uz, qa. Если заголовок не передан,
колонки называются по-английски. Названия колонок на страницах типов отчетов приведены для ru.Параметры запроса
string
обязательно
Тип отчета. Определяет, какие данные будут выгружены. Доступные значения:
QUERY_EXPORT_TYPE_SCHOOL_USER_FIND_MANY— пользователи школыQUERY_EXPORT_TYPE_SCHOOL_STUDENT_FIND_MANY— студенты школыQUERY_EXPORT_TYPE_GROUP_MEMBER_FIND_MANY— участники группыQUERY_EXPORT_TYPE_COURSE_LESSON_PRACTICE_ATTEMPT_FIND_MANY— попытки практических заданийQUERY_EXPORT_TYPE_INVOICE_MANAGE_FIND_MANY— счетаQUERY_EXPORT_TYPE_PRODUCT_BILLING_ACCESS_FIND_MANY— биллинг доступов к продуктам
object
обязательно
Переменные для запроса:
filter (обязателен для всех типов; чтобы выгрузить все записи, передайте {}) и
sort (необязателен). Набор полей зависит от выбранного type и описан на странице типа отчета — ссылки
в списке выше.Поля проверяются при генерации, а не при создании задачи: неизвестное поле или неверное значение приводит
к status: Failed на шаге получения результата. Даты в диапазонах (...DateRange) передаются в формате
ISO 8601, например 2025-01-01T00:00:00Z.string
Формат выходного файла. По умолчанию —
EXPORT_FORMAT_XLSX.EXPORT_FORMAT_XLSX— Excel (.xlsx). Единственный формат с дополнительными листами (например, Course Progress или Billing Details — см. страницу типа отчета).EXPORT_FORMAT_CSV— CSV (.csv): только основной лист, разделитель — запятая, кодировка UTF-8 с BOM (открывается в Excel без проблем с кириллицей), первая строка — заголовки колонок.EXPORT_FORMAT_JSON— JSON (.json): массив объектов, по одному на строку отчета. Ключи — технические имена колонок на английском (userId,fullName, …), они не зависят отUx-Language.
Поля ответа
boolean
Результат выполнения запроса.
number
HTTP-код ответа (например,
201).object
Объект задачи генерации.
Требования к правам доступа
Сам запрос на генерацию требует только аутентификации по токену сервисного пользователя школы. Данные для файла собираются от имени этого же пользователя, поэтому токену нужно право на выгружаемые данные — одно из перечисленных для типа отчета:Обновлено: 2026-09-25 13:43 UTC