Build a FHIR Bulk Data import pipeline to ingest large volumes of FHIR NDJSON resources from an external source into a FHIR server using the proposed $import operation or alternative bulk import patterns
Prepare NDJSON files where each line is a valid FHIR resource JSON object of the same resource type; organize files per resource type as most bulk import implementations require type-homogeneous NDJSON files
Upload NDJSON files to a location accessible to the FHIR server such as Azure Blob Storage, AWS S3, or a shared file system, and generate pre-signed URLs or SAS tokens that the FHIR server can use to retrieve the files
Submit the import kick-off request to the FHIR server's $import endpoint (or vendor-specific equivalent) with a Parameters body listing the input files, their resource types, and the import mode (InitialLoad or IncrementalLoad)
Poll the status URL returned in the Content-Location response header until the import completes, then retrieve the operation outcome report to identify any resources that failed validation or caused conflicts
Implement idempotent import logic using conditional create or upsert semantics to ensure re-running the import after a partial failure does not create duplicate resources
Known gotchas
The FHIR $import operation is not yet a finalized HL7 standard; many FHIR server vendors implement proprietary bulk import endpoints with different request formats — always consult vendor-specific documentation
Large imports can overwhelm FHIR server indexing pipelines and degrade query performance during the import window; schedule imports during low-traffic periods and monitor server metrics
Resource references within imported NDJSON files (e.g., Observation.subject referencing a Patient) must resolve to existing resources in the server or be included in the same import batch in the correct dependency order
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp