Skip to content

yellow444/epgu

Repository files navigation

API Госуслуг (ЕПГУ) — интеграционное решение

Проект автоматизации взаимодействия с API Единого портала государственных услуг (ЕПГУ): подача заявлений, подписание документов через КриптоПро, получение статусов и ответных документов.

Состав репозитория

Каталог Назначение
api-gosuslugi-backend/ FastAPI-сервис: КриптоПро, подпись, проксирование вызовов ЕПГУ
api-gosuslugi-client/ React-приложение (Ant Design): UI для подачи заявлений
docs/ Архитектура, схемы XML, API, диаграммы Mermaid, регламенты ЕПГУ
habr/ Статьи для публикации на Хабре
step/ Пошаговые инструкции с иллюстрациями (настройка ИС, сертификатов)

Быстрый старт

cp .env .env.local              # заполнить apikey, KeyPin и пр.
docker-compose up -d --build

Подробные сценарии установки и использования — в HOWTO.md.

Архитектура (кратко)

flowchart LR
    U[Пользователь] --> FE[React / Nginx :5080]
    FE -->|/api| BE[FastAPI :5000]
    BE -->|pycades| CP[КриптоПро CSP]
    BE -->|HTTPS + JWT| ESIA[ЕСИА / ЕПГУ API]
Loading

Полная архитектура — в docs/architecture.md.

Основные возможности

  1. Авторизация — организация-потребитель получает JWT-токен через ЕСИА, используя API-ключ и подпись КриптоПро.
  2. Создание заявления — генерация XML по спецификации ЕПГУ, подпись КриптоПро (CAdES-BES), отправка через API.
  3. Обработка ответов — статусы поданных заявлений, загрузка ответных документов.
  4. Работа с сертификатами — список, выбор активного, отображение субъекта.
  5. Администрирование — управление API-ключами, услугами (через переменную SERVICES).

Требования

  • Docker / Docker Compose
  • КриптоПро CSP (устанавливается в backend-образ), сертификат и закрытый ключ организации
  • API-ключ организации-потребителя ЕПГУ

Документация

Лицензия

MIT — см. LICENSE.

About

No description, website, or topics provided.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors