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

API — обзор

MedInsight предоставляет REST API на FastAPI.

Базовый URL

https://medinsight.fileguardian.info/api

Локально: http://localhost:8000/api

Интерактивная документация

URL Формат
/docs Swagger UI (OpenAPI 3)
/redoc ReDoc
/openapi.json OpenAPI JSON

OpenAPI генерируется автоматически из кода FastAPI.

Аутентификация

JWT Bearer token:

curl -H "Authorization: Bearer YOUR_TOKEN" \
  https://example.com/api/patients

Получение токена: auth.md

Формат ответов

Успех — JSON с данными.

Ошибки:

{
  "detail": "Сообщение об ошибке"
}
Код Значение
400 Неверный запрос
401 Не авторизован
403 Нет прав
404 Не найдено
402 Лимит тарифа
422 Ошибка валидации
500 Ошибка сервера

Пагинация

Списки поддерживают skip и limit:

GET /api/patients?skip=0&limit=20

Мультитенантность

При регистрации/логине указывается subdomain клиники. JWT содержит tenant_id — все данные изолированы.

Разделы API

Документ Префикс
Аутентификация /api/auth
Пациенты /api/patients
Документы /api/documents
DICOM /api/dicom
Аналитика /api/analytics, /api/dashboard
Прогнозы /api/predictions

WebSocket

ws://host/ws/notifications?token=JWT

События: document_parsed, prediction_ready, dicom_processed.

Rate limiting

На проде рекомендуется nginx rate limit. В приложении — лимиты тарифа на прогнозы.

Версионирование

Текущая версия API не версионирована в URL. Breaking changes документируются в Changelog.