Перейти к содержанию

D12-P01: Интеграция с ФИС ГИА и Приём

Домен: D12 · Применимость: ВУЗ, СПО, Аспирантура
Статус: draft

Назначение

Процесс описывает технические взаимодействия ИС ОО с Федеральной информационной системой ГИА и Приём в ходе приёмной кампании: передачу данных в ФИС, получение событий с ЕПГУ и управление сессионными ключами. Процесс обеспечивает соответствие требованиям Приказа № 821 в части электронного документооборота с ФИС.

Бизнес-процесс приёмной кампании описан в D05. Здесь — только технический уровень: протоколы, форматы, авторизация, обработка ошибок.

Нормативное основание

  • Приказ Минобрнауки № 821 от 27.11.2024 — Порядок приёма на ВО; требования к ИС ОО
  • ПП РФ № 555 от 26.04.2019 — суперсервис «Поступление в вуз онлайн»
  • ФЗ-63 от 06.04.2011 — об электронной подписи (ГОСТ 34.10-2012)
  • ФЗ-152 от 27.07.2006 — о персональных данных (требования к каналам передачи)

Ключевые понятия

Две версии API: - API ВО (v3.5.0) — для программ высшего образования и аспирантуры. Формат данных: XML/XSD, CamelCase, операции Add/Edit/GetBy/GetDirect/GetAll/Remove. Аспирантура использует этот же API без исключений. - API СПО (v1.0) — для программ среднего профессионального образования. Формат данных: JSON Schema, snake_case, операции add/edit/get_by/get_direct/get_all/remove.

Асинхронный паттерн (все операции с данными):

POST /api/token/new → IdJwt
GET  /api/token/own/get?idJwt=...  → ждём DONE/ERROR

Despatch (входящие события):

GET /api/token/despatch/get → события с ЕПГУ и из ЛК ФИС

Session-Key: Действует 12 часов. Один активный ключ на организацию. Запрос нового ключа аннулирует предыдущий. Не чаще одного запроса в 3 минуты.

Входы

  • Данные приёмной кампании из ИС ОО (кампании, ОПОП, конкурсные группы, заявления)
  • Сертификат электронной подписи (ГОСТ 34.10-2012), загруженный в ЛК ФИС
  • ОГРН и КПП организации
  • Адрес сервера ФИС (тестовый / боевой — уточняется в тех. поддержке)

Шаги

Этап 0. Первичная настройка (один раз перед кампанией)

  1. Зарегистрировать сертификат ЭП в личном кабинете ФИС
  2. Получить доступ к тестовой среде (заявка в тех. поддержку)
  3. Проверить интеграцию: отправить тестовый запрос /api/session/new
  4. Проверить наличие нужных версий XSD-схем (ВО) или JSON Schema (СПО)

Этап 1. Получение Session-Key

  1. Сформировать Token-Header:
    { "Ogrn": "1234567890123", "Kpp": "123456789", "Month": 5 }
    
  2. Закодировать в Base64
  3. Подписать по ГОСТ 34.10-2012 (detached PKCS#7)
  4. POST /api/session/new → получить Session-Key
  5. Сохранить ключ; использовать в заголовке всех последующих запросов

Ошибки: 401 (нет сертификата), 209 (подпись не соответствует), 211 (сертификат не найден).

Этап 2а. Передача данных кампании [ВУЗ]

Порядок передачи важен — сущности связаны ссылками:

  1. CampaignList — создать кампанию (Add)
  2. OrgDirectionList — направления подготовки (Add)
  3. CompetitiveGroupList — конкурсные группы привязываются к OrgDirection
  4. EntranceTestListEntranceTestPlaceList — вступительные испытания и места

Каждый шаг: сформировать XML → подписать → POST /api/token/new → дождаться DONE.

Этап 2б. Передача данных кампании [СПО]

  1. spo_campaign_list — создать кампанию (add)
  2. spo_specialty_list — специальности (add)
  3. spo_specialty_event_list — события кампании (add)
  4. spo_entrance_test_schedule_list — расписание испытаний (add)

Этап 3. Работа с заявлениями

ВУЗ: Заявления поступают двумя путями: - С ЕПГУ через Despatch-событие EpguApplication — ОО получает, не создаёт - Непосредственно в ИС ОО → ApplicationList.Add

СПО: Аналогично через spo_epgu_application или spo_application_list.add.

Polling Despatch:

GET /api/token/despatch/get
Рекомендуемый интервал опроса: 30–60 секунд.

Этап 4. Ранжирование и конкурсные списки

  1. Рассчитать рейтинг в ИС ОО (логика — в D05-P03)
  2. Сформировать XML/JSON пакета ранжированных списков
  3. Подписать и передать: RankedCompetitionListPackage.Add / spo_ranked_competition_list_package.add
  4. Ожидать DONE, проверить статус пакета через GetDirect

Этап 5. Приказы о зачислении

  1. Получить согласия на зачисление через ConsentToEnrollList.GetBy / spo_consent_to_enroll_list.get_by
  2. Сформировать приказы в ИС ОО
  3. Передать в ФИС: OrderList.Edit [ВУЗ]
  4. Обновить статусы заявлений через CompetitiveGroupStatusList / spo_application_status_list

Выходы / артефакты

  • Session-Key (хранится в ИС ОО, не в репозитории)
  • IdJwt-лог переданных операций (для диагностики)
  • Статусы ответов ФИС по каждой переданной сущности
  • Журнал Despatch-событий с ЕПГУ

Участники

Роль Действие
Администратор ИС Настройка интеграции, управление сертификатами ЭП
Разработчик ИС Реализация API-клиента, обработка асинхронного паттерна
Ответственный за приёмную кампанию Инициирует передачу данных (D05)
Техническая поддержка ФИС Предоставляет адреса сред, помогает с подключением

Типовые ошибки

  • Синхронные вызовы к асинхронному API. Нельзя считать операцию выполненной сразу после POST /api/token/new. Всегда нужен polling через /api/token/own/get.
  • Частая ротация Session-Key. Запрос нового ключа аннулирует старый немедленно. При параллельных потоках — один ключ на организацию, кэшировать.
  • Игнорирование breaking changes. В v3.5.0: NeedHostel стал массивом; CostOfStudy разделился на CostOfStudyRf + CostOfStudyForeigner (оба обязательны). Без обновления схем — ошибка валидации.
  • Передача данных не в том порядке. Конкурсные группы ссылаются на OrgDirection — если OrgDirection не создан, Add провалится с ошибкой ссылочной целостности.
  • Подпись для операций чтения. GetBy/GetDirect/GetAll — подпись не нужна. signature_base64 = пустая строка. Лишняя подпись не ломает, но тратит время.

Лучшие практики

  • best-practices/fis-egia-api/getting-started/async-pattern.md — подробная схема асинхронного паттерна с примерами polling
  • best-practices/fis-egia-api/scenarios/ — сценарии кампании от начала до конца (01-setup → 06-incoming-events)
  • best-practices/fis-egia-api/reference/error-codes.md — полный справочник кодов ошибок
  • best-practices/fis-egia-api/getting-started/environments.md — адреса тестовой и боевой сред

Связанные процессы

  • D05-P01 — Организация приёмной кампании (бизнес-процесс, который инициирует интеграцию)
  • D05-P03 — Конкурсный отбор и ранжирование (данные для RankedCompetitionListPackage)
  • D05-P02 — Зачисление обучающегося (получает статусы из этапа 5 данного процесса)

Справочная документация

Полная документация API ФИС ГИА размещена в: - best-practices/fis-egia-api/ — ВО (XSD, v3.5.0) - best-practices/fis-egia-api/spo/ — СПО (JSON Schema, v1.0)