Layman manual
AUTH_MODE=off — you are logged in automatically as a devAUTH_MODE=sso — log in via the PDHC SSO portal; theX-PDHC-User header set by the SSO reverse proxy.After login you land on /:
- Patient list — one row per patient in your organisation with at least
one observation. Columns: Patient GUID (clickable), total observation
count, count per concept (names only), date of the latest observation
overall.
- Concept picker — check up to two concept boxes and click
"Show curves (max 2)" to overlay time-activity curves for the cohort.
- Refresh from gateway (top-right button) — pulls the latest observations
from gateway.pdhc for your organisations. This is the single canonical way
to update the data; there is no background polling.
Click a patient GUID on the landing page to open /patient/<guid>:
- Latest values table — one row per concept with the most recent value,
unit, and timestamp.
- Time-activity chart — every concept the patient has data for is shown
as its own line on the chart.
- Back link returns to the landing page.
The Refresh from gateway button is visible on every page. Clicking it:
1. Clears the local observation cache for each organisation you belong to.
2. Pulls the current Observation bundle from gateway.pdhc.
3. Repopulates the cache and writes an entry to the refresh log.
If the refresh fails, the error is stored in the refresh log and the existing
cache remains untouched.
The dashboard exposes its curve data as FHIR R5 so it can be re-consumed
elsewhere:
- GET /api/v1/series?patient=<guid>&concept=<guid> — returns a FHIR Bundle
of Observation resources.
- GET /metadata — CapabilityStatement describing all endpoints.
results/<timestamp>_results/app.logdocs/technical.mdreadme.md, progress.md