Skip to main content

Per-service diagrams (container + sequence)

Purpose: Satisfy Deliverable 3 diagram depth: one container-style view and one representative sequence per backend under apps/services/.
Evidence: Route prefixes and upstream ports from ../../infra/kong/kong.yml; Docker hostnames match Kong url: entries.

Conventions

  • Kong is the external HTTP edge for routes listed here (browser/BFF calls Kong, not raw container ports in production).
  • JWT validation is described in baseline as occurring at gateway and service (ARCHITECTURE_BASELINE.md §7); sequences show Bearer forwarding unless noted.
  • NATS appears where async is typical (orders, interop); omit if service has no publisher in this pass—verify in service code for production docs.

iam (Kong: iam :3001)

Public / internal routes: /api/iam, /internal/iam

Container

Sequence (representative API call)


tenant (Kong: tenant :3002)

Routes: /api/tenants, /internal/tenants

Container

Sequence


hierarchy (Kong: hierarchy :3003)

Routes: /api/hierarchy, /internal/hierarchy

Container

Sequence


licensing (:3004)

Routes: /api/licenses, /internal/licenses

Container

Sequence


access-policy (Kong: access-policy :3005)

Routes: /api/access, /internal/access, /internal/governance

Container

Sequence (ABAC evaluation)


audit (Kong: audit :3006)

Routes: /api/audit

Container

Sequence


platform-admin (Kong: platform-admin :3007)

Routes: /api/platform, /internal/admin

Container

Sequence


terminology (:3028)

Routes: /v1/terminology, /internal/terminology

Container

Sequence


registration (:3010)

Routes: /v1/patients, /v1/encounters

Container

Sequence


scheduling (:3011)

Routes: /v1/schedules, /v1/slots, /v1/appointments, /v1/waitlist, /fhir/R4/Appointment

Container

Sequence


provider-directory (:3012)

Routes: /v1/practitioners, /v1/practitioner-roles, /v1/endpoints

Container

Sequence


facility (:3013)

Routes: /v1/locations, /v1/beds, /v1/resource-catalog

Container

Sequence


patient-chart-service (:3020)

Routes: /v1/chart

Container

Sequence (chart read + registration lookup)


clinical-notes (:3021)

Routes: /v1/notes, /v1/note-templates

Container

Sequence


orders (:3022)

Routes: /v1/orders, /v1/order-sets, /svc/orders (FHIR strip)

Container

Sequence


results (:3023)

Routes: /v1/results

Container

Sequence


medication (:3024)

Routes: /v1/medications

Container

Sequence


problem-list (:3025)

Routes: /v1/problems

Container

Sequence


allergies (:3026)

Routes: /v1/allergies, /v1/patients/:id/allergies/nkda|nka, /internal/allergies

Container

Sequence


vitals (:3027)

Routes: /v1/vitals, /fhir/R4/Observation

Container

Sequence


radiology-pacs (:3029)

Routes: /studies, /reports (root-level paths on upstream)

Container

Sequence


patient-portal-api (:3030)

Routes: /v1/portal

Container

Sequence


immunizations (:3031)

Routes: /v1/immunizations

Container

Sequence


care-plans-service (:3032)

Routes: /v1/careplans

Container

Sequence


digital-communication (:3033)

Routes (Kong): /v1/digital-communication (prefix; strip_path: false) — see API_DOCS.md for full paths.
Specs: specs/modules/digital-communication/SPEC.md, NOTIFICATIONS_PLATFORM.md
ADR: ADR-0047-unified-digital-communication-service.md

Container

Sequence (secure message)

Sequence (outbound notification — conceptual)

Domain services or portal queue intents; digital-communication resolves templates and calls provider adapters (PHI-minimized). See NOTIFICATIONS_PLATFORM.md.


laboratory-lis (:3034)

Routes: /catalog, /accessions, /specimens, /results (root-level on upstream)

Container

Sequence


billing (:3035)

Routes: /v1/billing/charges, /invoices, /payments, /refunds, /adjustments

Container

Sequence


insurance (:3036)

Routes: /coverages, /authorizations

Container

Sequence


claims (:3037)

Routes: /claims, /remittances, /denials

Container

Sequence


hl7v2-interop (:3038)

Routes: /v1/interop

Container

Sequence


fhir-gateway (:3039)

Routes: /fhir (FHIR R4 surface)

Container

Sequence


ai-orchestrator (:3040)

Routes: /v1/ai

Container

Sequence


config-resolver (:3015)

Routes: /api/config, /admin/ui, /internal/config, /internal/v1/offline

Container

Sequence


seed-runner (tooling — not in Kong)

Role: Database seeding via pnpm scripts (package.json root db:seed*).

Container

Sequence