Configuration reference
Minimal config
BridgeConfig.yaml
bridge:
facility-code: BRANCH-01
hapi-fhir-url: http://hapi:8080/fhir
consent:
enabled: true
fail-closed: true
Full reference
BridgeConfig.yaml
bridge:
facility-code: BRANCH-01
facility-name: Apollo Branch 01
hapi-fhir-url: http://hapi:8080/fhir
hapi-fhir-timeout-ms: 5000
hapi-fhir-circuit-breaker:
enabled: true
failure-threshold: 5
wait-duration-s: 30
retry-attempts: 10
mpi:
url: http://jammpi:8081/fhir
cache-ttl-minutes: 5
min-grade: PROBABLE
facility-registry:
url: http://jamfr:8089/fhir
cache-ttl-minutes: 5
auto-provision: true
consent:
enabled: true
fail-closed: true
url: http://jamconnect:8091/jamconnect/consent/check
timeout-ms: 3000
terminology:
enabled: true
url: http://jamts:8085/fhir
translate-local-loinc: true
deduplication:
enabled: true
window-hours: 24
mllp:
adt: 2575
oru: 2576
orm: 2577
mdm: 2578
qbp: 2579
rde: 2580
siu: 2581
mfn: 2582
subscriptions:
enabled: true
seed-default: true
audit:
enabled: true
transport: both
syslog-host: auditstore
syslog-port: 6514
fhir-balp-url: http://hapi:8080/fhir
dhis2:
enabled: false
url: http://dhis2/api
username: admin
password: ${DHIS2_PASSWORD}
notifiable-loincs:
- "80823-7"
- "32700-2"
- "11545-1"
- "625-4"
Key decisions
Always use fail-closed in production
consent.fail-closed: false means an unreachable consent service is treated as a permit. This is not a safe default for clinical data. Only use false in local development where the consent service may not be running.
consent.fail-closed
When true, JamBridge NACKs if the consent service is unreachable. Recommended for production. When false, an unreachable consent service is treated as permitted — do not use in production.
mpi.min-grade
| Grade | Score | Use case |
|---|---|---|
CERTAIN | ≥ 0.95 | High national ID coverage |
PROBABLE | ≥ 0.85 | Mixed ID coverage (recommended) |
POSSIBLE | ≥ 0.70 | Low ID coverage, manual review |
hapi-fhir-circuit-breaker
When the circuit opens (5 consecutive failures), messages queue in SecondaryRetryQueue with exponential backoff. The sending HIS receives MSA|AA — it is not aware the FHIR write is pending. The queue drains automatically when HAPI recovers.