Документация LMS версия 2026.08.2

Документация/Начало/Перенос данных с GetCourse

Написано наполовину

Перенос данных с GetCourse

Техническая инструкция: что переносится автоматически, что руками, и почему автоматическая часть идёт часами. Ограничения ниже — их, а не наши: они следуют из того, что API GetCourse отдаёт наружу.

Что их API отдаёт #

Через API GetCourse забираются:

  • пользователи с контактами и дополнительными полями;
  • группы;
  • заказы;
  • платежи.

Этого достаточно, чтобы люди оказались в новой установке с историей покупок.

Что их API не отдаёт #

Что Как переносится
Курсы, модули, уроки Ручной выгрузкой либо собирается заново
Содержимое уроков Копированием: разметка у платформ разная
Ответы учеников на задания Ручной выгрузкой по подготовленному шаблону
Промокоды Ручной выгрузкой
Сегменты Собираются заново: язык условий другой

Учебную структуру их API не создаёт и не отдаёт вовсе — ни в классическом API, ни в Tech API. Ответы учеников тоже: это работа ваших учеников и кураторов за годы, и переносится она выгрузкой, а не вызовом.

Планируйте эту часть временем человека, а не временем скрипта.

Почему автоматическая часть идёт часами #

Ограничения классического API GetCourse:

  • 100 запросов экспорта за 2 часа на весь аккаунт — не на ключ и не на интеграцию;
  • каждый опрос «готов ли файл» расходует квоту — ожидание готовности стоит столько же, сколько заказ выгрузки;
  • экспорт однопоточный: пока формируется один файл, второй не начнётся;
  • чтения одного объекта нет — только массовая выгрузка.

База в десятки тысяч человек выгружается часами. Это закладывается в план заранее, а не обнаруживается в день переезда.

Отсюда же требование к модулю переноса: продолжать с места обрыва. Процесс, который идёт часами, обязан переживать разрыв связи и перезапуск.

Порядок переноса #

  1. Запустить перенос людей и истории покупок. Автоматическая часть, идёт долго и без вашего участия.
  2. Собрать курсы в новой установке параллельно — это ручная работа, ждать выгрузки для неё не нужно.
  3. Выдать доступы. Соответствие «человек → курс» восстанавливается из перенесённых заказов; выдать можно руками или импортом.
  4. Проверить на себе: войти учеником, открыть урок, отправить ответ.
  5. Переключить продажи и только после этого отключать старое.

Дата старта доступа — проверить отдельно #

В новой установке расписание курса считается от даты старта доступа, а не от даты оплаты и не от даты переноса.

При переносе дату старта надо проставить осознанно: иначе у перенесённых учеников уроки откроются не тогда, когда они ожидают, — все разом либо не откроются вовсе. Как устроены правила открытия — Доступы.

Что проверить после переноса #

  • число людей совпадает с числом в старой школе;
  • у нескольких человек наугад — контакты, дополнительные поля, история заказов;
  • доступы: открывается ли курс у того, кто его купил;
  • даты открытия уроков у перенесённого ученика — см. выше;
  • ответы учеников, если переносились: на месте ли и видны ли куратору.

Состояние #

Модуль переноса спроектирован, но не написан. Сегодня автоматической части нет: переносить придётся выгрузками целиком, включая людей и заказы.

Ограничения их API от появления модуля не изменятся — они такие же и будут такими же. Поэтому страница описывает процесс, а не кнопку: процесс верен уже сейчас.

Следить — в Обновлениях.

Эта страница в Markdown