Быстрый старт
Примеры запросов к API на разных языках программирования. Скопируйте код и адаптируйте под свои нужды.
Аутентификация
Все эндпоинты API (кроме системных) требуют B2B-токен в заголовке запроса.
B2B TokenДля серверных интеграций
Передайте токен в заголовке запроса:
token: YOUR_API_TOKENТокен выдаётся при подключении. Запросите через info@migcon.ru
Система
Проверка доступности API и состояния компонентов системы.
GET
/_pingPublicHealth-check
Response
"pong"
200 — API доступен
GET
/_healthPublicСостояние системы (БД + очередь)
Response
{
"db": "ok",
"queue": "ok"
}200 — Все компоненты работают503 — Один или несколько компонентов недоступны
Персоналии (B2B)
CRUD-операции с персоналиями для B2B-интеграций. Авторизация через заголовок token.
POST
/api/v1/personsB2B TokenДобавить персоналии (до 50 шт.)
Автоматически ставятся в очередь на первичную проверку по реестрам.
Request
[
{
"first_name": "Рашид",
"last_name": "Алиев",
"middle_name": "Маратович",
"bday": "1990-05-15",
"doc_num": "4512 123456",
"doc_issued": "2015-03-20",
"patent_series": "77",
"patent_number": "1234567"
}
]Response
[
{
"person_id": "550e8400-...",
"first_name": "Рашид",
"last_name": "Алиев",
"bday": "1990-05-15",
"doc_num": "4512 123456",
...
}
]200 — Персоналии добавлены400 — Превышен лимит или невалидные данные
GET
/api/v1/persons/{person_id}B2B TokenПолучить персоналию
Response
{
"person_id": "550e8400-...",
"first_name": "Рашид",
"last_name": "Алиев",
"bday": "1990-05-15",
"monitoring_enabled": true,
"never_checked": false,
"registries": {
"rkl": { "present": false, "checked_at": "2025-02-20T09:41Z" },
"patent": { "present": true, "comment": "Истекает 2025-08-12" },
"fines": { "present": false, "checked_at": "2025-02-20T09:41Z" }
}
}200 — Данные персоналии404 — Персоналия не найдена
PUT
/api/v1/persons/{person_id}B2B TokenОбновить персоналию
Автоматически ставится в очередь на повторную проверку.
Request
{
"first_name": "Рашид",
"last_name": "Алиев",
"bday": "1990-05-15",
"doc_num": "4512 123456",
"doc_issued": "2015-03-20",
"patent_number": "7654321"
}Response
{
"person_id": "550e8400-...",
"first_name": "Рашид",
...
}200 — Обновлено
DELETE
/api/v1/persons/{person_id}B2B TokenУдалить персоналию
Response
{
"status": "deleted",
"person_id": "550e8400-..."
}200 — Удалено404 — Не найдена
Мониторинг (B2B)
Управление регулярным мониторингом персоналий по реестрам.
POST
/api/v1/checks/startB2B TokenЗапустить мониторинг
Передаётся массив UUID персоналий. Система будет периодически проверять их по реестрам.
Request
[ "550e8400-e29b-41d4-a716-446655440000", "660e8400-e29b-41d4-a716-446655440001" ]
Response
{ "status": "started" }200 — Мониторинг запущен
POST
/api/v1/checks/stopB2B TokenОстановить мониторинг
Request
[ "550e8400-e29b-41d4-a716-446655440000" ]
Response
{ "status": "stopped" }200 — Мониторинг остановлен
Коды ошибок
Все ошибки возвращаются в формате JSON с полем detail.
{
"detail": "Описание ошибки"
}| Код | Описание |
|---|---|
400 | Невалидные данные запроса |
401 | Не авторизован (невалидный или просроченный токен) |
403 | Доступ запрещён (недостаточно прав или аккаунт деактивирован) |
404 | Ресурс не найден |
409 | Конфликт (дублирование email, организации и т.д.) |
429 | Превышен лимит (например, 2 проверки/месяц для ФЛ) |
503 | Сервис недоступен (БД или очередь сообщений) |