Интеграция с Госключом через ЕПГУ: полный жизненный цикл¶
Домен: D12 · Тип: лучшая практика — руководство по интеграции
Источник: перенесено из framework.univercon.aplicon.ru/docs/about/api/ExtAPI/GosKeyAPI/index.md;
структурировано под фреймворк.
Полный сквозной цикл интеграции ОО с сервисом «Отправка документов на подпись в Госключ» — от настройки прав в ЕСИА до скачивания подписанных документов. Применимо для юридически значимого документооборота с обучающимися, работниками, контрагентами.
Важно: API Госключ для интеграторов — это не прямое API к мобильному приложению. Это API ЕПГУ для услуги «Отправка документов на подпись в Госключ». Все взаимодействия идут через инфраструктуру государственных услуг.
Общая схема¶
timeline
section Подготовка
Настройка организации в ЕСИА и получение КЭП
Выдача доверенностей сотрудникам
Генерация API-Key в ЛК ИЭП
section Разработка
Реализация механизма подписания запросов
Интеграция с REST API ЕСИА для получения токенов
Реализация работы с API услуги Госключ
section Эксплуатация
Формирование пакетов документов
Отправка на подпись через API ЕПГУ
Мониторинг статусов и получение результатов
Обработка подписанных документов
1. Ключевые понятия¶
| Термин | Смысл |
|---|---|
| API-KEY | Уникальный UUID уполномоченного сотрудника ОО. Не пароль, а идентификатор, используемый вместе с ЭП для получения токена |
| Access Token | Временный маркер доступа. Приложение получает его в обмен на API-Key + подпись |
| Организация-потребитель | ОО, использующая API (например, для отправки договоров на подпись) |
| Организация-вендор | Разработчик ПО, зарегистрировавший приложение в ЕСИА и дающий право использовать его для генерации API-Key |
| ЕСИА | Единая система идентификации и аутентификации |
| ЕПГУ | Единый портал государственных услуг |
| ЛК ЮЛ ЕСИА | Личный кабинет юридического лица в ЕСИА |
| ЛК ИЭП | Личный кабинет Инфраструктуры электронного правительства |
2. Подготовка организации-потребителя¶
2.1 Регистрация ОО в ЕСИА¶
- Руководитель ОО получает квалифицированную электронную подпись (КЭП).
- Регистрируется подтверждённая учётная запись руководителя в ЕСИА.
- Регистрируется сама организация в ЕСИА.
- Добавляются сотрудники в организацию через портал ЕСИА.
2.2 Выдача доверенностей¶
- Руководитель через ЛК ЮЛ ЕСИА выдаёт сотрудникам доверенности на право формирования API-Key.
- Сотруднику также выдаются права «Администратор профиля организации».
- Сотрудник включается в группу «Технологический портал» в ЛК ИЭП.
2.3 Формирование API-Key¶
- Уполномоченный сотрудник авторизуется в ЛК ИЭП.
- Переходит в раздел «Мои системы» → выбирает систему вендора (которая дала полномочия).
- Генерирует API-Key для конкретного сотрудника ОО.
Результат: API-Key (UUID), привязанный к сотруднику + сертификату ЭП.
3. Получение маркера доступа (Access Token)¶
Приложение ОО обращается к специальному REST API ЕСИА:
sequenceDiagram
participant App as Приложение ОО
participant API as REST API ЕСИА
participant ESIA as Сервис авторизации ЕСИА
Note over App: Имеет: API-Key, Сертификат ЭП
App->>App: Формирует подпись для API-Key
App->>API: POST запрос с API-Key и подписью
Note over API: Проверяет подпись и валидность API-Key
API->>ESIA: Запрос на генерацию токена
ESIA->>API: Access Token + данные об организации
API->>App: 200 OK + Access Token
Note over App: Токен действителен ограниченное время
Что подписывать: API-Key, сертификатом ЭП сотрудника или обезличенным сертификатом ОО.
Что получаем: Access Token с ограниченным временем жизни — используется для вызовов API услуг ЕПГУ (в том числе Госключа).
4. Спецификация API «Отправка документов на подпись в Госключ»¶
4.1 Суть услуги¶
Приложение ОО (внешняя информационная система) отправляет через API ЕПГУ пакет документов конкретному физическому лицу, чтобы тот подписал их в мобильном приложении «Госключ» (УНЭП или УКЭП).
4.2 Ограничения¶
- Кто может использовать: руководители юрлиц, ИП или сотрудники со специальной доверенностью.
- Получатель: только одно физическое лицо в одном запросе.
4.3 Требования к документам¶
- Форматы: PDF, TIFF, XML, TXT
- Не более 15 документов в одном запросе
- Общий объём — не более 100 МБ
4.4 Требования к архиву¶
Отправляется ZIP-архив, который должен содержать:
req.xml— файл с метаданными в строгом соответствии с XSD-схемой ЕПГУ- Файлы документов для подписи
- Файлы отсоединённой электронной подписи
.sigдля каждого файла в архиве, включая самreq.xml. Подпись — КЭП отправителя (ОО).
4.5 Основные методы API¶
| Метод | Назначение |
|---|---|
POST /api/gusmev/order |
Создание заявления (получение orderId) |
POST /api/gusmev/push |
Загрузка архива с документами (обычный режим) |
POST /api/gusmev/push/chunked |
Загрузка архива по чанкам (для больших пакетов) |
POST /api/gusmev/order/{orderId} |
Получение деталей и статуса заявления |
GET /api/storage/v2/files/{orderId}/3/download?mnemonic={fileName} |
Скачивание подписанных документов и подписей |
5. Жизненный цикл запроса на подпись¶
- Приложение ОО, используя Access Token, создаёт заявление и загружает подписанный архив.
- Заявление получает статус 17 — «В очереди на отправку».
- Документы направляются в мобильное приложение «Госключ» указанному получателю.
- Получатель подписывает или отклоняет документы в приложении «Госключ».
- Приложение ОО периодически проверяет статус заявления.
- При успешном подписании (статус 3 — «Документы подписаны») ОО скачивает файлы с подписями, полученными от «Госключ».
6. Типовые применения в ОО¶
- Договоры с обучающимися (платное обучение) — подписание договора и допсоглашений.
- Трудовые договоры и допсоглашения с работниками (интерфейс с D07).
- Согласия на обработку персональных данных — от абитуриентов, обучающихся, их родителей.
- Заявления и справки — юридически значимая переписка с обучающимися.
- Договоры с контрагентами — сетевая форма (D04), базы практик, поставщики.
Отличие от электронного документооборота внутри ОО: Госключ — для документов, требующих подписи физлица со стороны получателя, не самой ОО.
7. Типовые ошибки¶
Считать Госключ отдельным API. Все операции идут через ЕПГУ. Госключ — это одна из услуг в экосистеме ЕПГУ. Прямого API приложения «Госключ» для интеграторов нет.
Пропустить включение в «Технологический портал». Права «Администратор профиля организации» недостаточно. Без группы «Технологический портал» ЛК ИЭП не даст сгенерировать API-Key.
Использовать req.xml без подписи.
Все файлы в ZIP-архиве должны быть подписаны, включая сам req.xml. Пропуск подписи
req.xml — типовая причина отказа на этапе загрузки.
Игнорировать ограничение на одного получателя. Один запрос — один получатель. Массовые рассылки требуют цикла и, возможно, батчирования через несколько заявлений.
Долгий polling без backoff. Проверять статус каждые несколько секунд — быстро упрётесь в rate limit ЕПГУ. Используйте экспоненциальный backoff: 30 сек → 1 мин → 5 мин → 15 мин.
8. Тестовая среда¶
Разработку начинайте с тестового контура:
Продуктивная среда — только после полного цикла тестирования и получения продуктового API-Key.
9. Ссылки на нормативные документы¶
- Руководство пользователя для организации-потребителя по формированию API-Key и получению маркера доступа (версия 3.3 от 31.01.2023) — общий гайд по получению API-Key
- Спецификация API ЕПГУ «Отправка документов на подпись в Госключ» (версия 1.8) — конкретная спецификация услуги
- ФЗ от 06.04.2011 № 63-ФЗ «Об электронной подписи» — базовое правовое регулирование ЭП
- Постановление Правительства РФ от 05.07.2021 № 1076 (ЕСИА)
10. Стык с другими доменами¶
| Домен | Что использует Госключ |
|---|---|
| D09 (финансы) | Подписание договоров на платные услуги, актов, допсоглашений |
| D07 (персонал) | Трудовые договоры, допсоглашения, согласия работников |
| D05 (контингент) | Согласия обучающихся на обработку ПД, заявления |
| D02 (лицензирование) | Заявления в Рособрнадзор через ЕПГУ |
| D11 (коммуникации) | Официальные ответы на обращения граждан через ЕПГУ |