11. Юридическое досье — REST API Design
Date: 2026-01-22
Status
Accepted
Context
Необходим API для Angular-фронтенда с поддержкой workflow-действий.
Decision
RESTful API с дополнительными action-эндпоинтами:
/api/v2/legal-dossier/conclusions/
├── GET/POST — список/создание
├── GET/PATCH/{id}/ — детали/обновление
├── POST /{id}/take-to-work/
├── POST /{id}/submit-review/
├── POST /{id}/approve/
├── POST /{id}/reject/
├── POST /{id}/return/
├── POST /{id}/cancel/
├── GET/PUT /{id}/contract-analysis/
├── GET/POST /{id}/risks/
├── GET/POST /{id}/check-criteria/
├── GET/POST /{id}/documents/
└── GET/POST /{id}/verifications/Обоснование
- Стандартность — следование REST conventions проекта
- Атомарность — каждое действие workflow — отдельный endpoint
- Вложенные ресурсы — логическая группировка связанных данных
- Batch-операции — массовое обновление критериев/документов одним запросом
Consequences
- (+) Понятный, предсказуемый API
- (+) Совместимость с существующей инфраструктурой
- (-) Много endpoint'ов для документирования
Источник: backend/narmak_v2/app/legal_dossier/ADR.md (ADR-006)