TorbatYar/frontend/docs/healthcare-api-connection-report.md
Mortezakoohjani 625275e55b feat(healthcare): add backend service and finalize frontend build
Add the Healthcare platform backend (phases 13.0–13.7) with Alembic migration revision fix, production deploy script, validation reports, shared UI exports, and loyalty list page client directives so Next.js build succeeds.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 11:38:31 +03:30

3.9 KiB
Raw Permalink Blame History

Healthcare API Connection Report

Service: healthcare-service v0.13.7.0
BFF: /api/healthcare/* → port 8010
Client: frontend/src/modules/healthcare/services/healthcare-api.ts


Connection Architecture

Browser (portal page)
  → healthcareApi.* (tenant + JWT headers)
  → /api/healthcare/* (Next.js route handler)
  → healthcare-service:8010/api/v1/*

All mutations use optimistic invalidation of TanStack Query keys scoped by tenant.


API Surface Used by UI

Foundation (Phase 13.0)

Resource List Get Create Update Delete UI Screen
clinics ClinicsResourcePage
branches BranchesResourcePage
departments DepartmentsResourcePage
doctors DoctorsResourcePage
patients PatientsResourcePage
external_providers ExternalProvidersResourcePage
settings upsert upsert SettingsResourcePage
audit AuditExplorerPage
permissions/catalog PermissionsCatalogPage

Appointments & Visits (13.113.2)

Resource Operations wired in UI
appointments list, book, confirm, cancel, no-show
waiting_list list, create
visit_sessions list, create, start, finish, defer, callNext
schedules list, create
availability_windows list, create
doctor_panel/dashboard doctor dashboard stats
visit_notes via doctor encounters (create in records flow)

Clinic Admin (13.3)

Resource UI
clinic_services CRUD create + list
staff_assignments CRUD create + list
clinic_policies CRUD create + list
operating_hours_policies list (via resources)

Patient Portal (13.4)

Endpoint UI Page
patient-portal/me Patient profile
patient-portal/appointments upcoming / past / cancel
POST patient-portal/appointments book wizard
patient-portal/documents lab results, reviews, attachments
patient-portal/notification-preferences notifications toggle

Medical Records (13.513.6)

Endpoint UI
medical-records POST/GET lookup panel + create
clinical-lists + conditions/allergies/medications/immunizations tabs + add
encounters create/update/finalize encounters panel
prescription-orders full pipeline doctor + pharmacy portals
pharmacies admin + pharmacy dashboard

Delivery (13.7)

Endpoint UI
delivery-integrations pharmacy delivery page
delivery-job-intents pharmacy delivery page

Integrations (accounting / CRM / communication)

Mapped via external_providers filtered by provider_kind on payments, messages, income pages.


Headers & Auth

Header Source
Authorization Keycloak JWT via getValidAccessToken()
X-Tenant-ID useTenantId()
X-Patient-ID patient portal routes only

401 triggers silent refresh via refreshSession().


Validation

Check Result
All entity screens call healthcareApi
No hardcoded mock arrays in module pages
BFF route exists app/api/healthcare/[...path]/route.ts
Error mapping HealthcareApiError with code + message

Gaps (backend)

  • Collection list for medical-records and encounters not in client API — UI uses ID lookup / create flows.
  • Dedicated insurance, laboratory, imaging request resources not in v0.13.7 OpenAPI — documented as future endpoints.