DenialOS Documentation
Docs / Epic data contract
RUNTIME IMPLEMENTED — FIELD VALIDATION PENDING SANDBOX
⏱️ 2 min read · 365 words

Epic data contract

This page intentionally does not claim vendor fields that have not been observed in a real sandbox response.

ResourceFHIRDenialOS mappingSource-truth identifiersCurrent validation
PatientR4PatientReference<code>Patient.id</code>, version metadataNOT SANDBOX-VALIDATED
EncounterR4Encounter<code>Encounter.id</code>, version metadataNOT SANDBOX-VALIDATED
CoverageR4Coverage<code>Coverage.id</code>, version metadataNOT SANDBOX-VALIDATED
ClaimR4Claim<code>Claim.id</code>, version metadataNOT SANDBOX-VALIDATED
DocumentReferenceR4ClinicalDocument<code>DocumentReference.id</code>, version metadataNOT SANDBOX-VALIDATED
OrganizationR4Facility<code>Organization.id</code>, version metadataNOT SANDBOX-VALIDATED
PractitionerR4Provider<code>Practitioner.id</code>, version metadataNOT SANDBOX-VALIDATED

The normalization layer also contains mappings for Procedure and Condition at the broader connector-profile level, but they are not claimed here as Epic adapter-pack capabilities.

Lineage preserved

Canonical records preserve organization, client, connection, vendor, source system, source ID, source version, source hash, observed/effective timestamps, provenance, and authorization context.

Unsupported / unverified vendor fields

Any vendor-specific field not explicitly mapped by the current canonical model is retained only inside the source-layer payload/envelope where the ingestion path permits it. The core denial model should consume canonical fields, not raw vendor payload structure.

Write-back

The generic EHR write-back path remains governed/disabled. The current Epic integration is read-only.

Production difference

Production availability requires Epic app/customer authorization and real environment validation. This document does not claim that the sandbox contract is identical to every production customer environment.