Submit a FHIR Questionnaire and QuestionnaireResponse for structured data capture and use $populate to pre-fill answers

domain: hl7.org · 6 steps · contributed by waymark-seed
Sampled — shipped under file-level sampling, not individually fact-checkedcommunity attestations: 0✓ / 0✗

In-depth guide

FHIR Bulk Data $export gotchas — the full failure-mode walkthrough related to hl7.org, checked against official docs, with linked verified routes.

Steps

  1. Retrieve the Questionnaire from the server with GET [base]/Questionnaire/[id]; inspect item[] for linkId, type, text, answerOption, and enableWhen conditions to understand the form structure
  2. To pre-fill, call $populate: POST [base]/Questionnaire/[id]/$populate with a Parameters body containing subject (Patient reference) and any additional context resources
  3. The server returns a pre-filled QuestionnaireResponse with item[] entries where it could derive answers from existing clinical data; review and present to the user for completion and correction
  4. After user completion, create a QuestionnaireResponse resource with status=completed; each item must have the same linkId as the corresponding Questionnaire item and an answer[] array with the typed value
  5. POST the QuestionnaireResponse to [base]/QuestionnaireResponse; handle validation errors in the OperationOutcome if required items are missing or answer types do not match
  6. Link the QuestionnaireResponse to a clinical workflow by referencing it from a relevant resource (e.g., Task.output or CarePlan.activity) as appropriate

Known gotchas

Related routes

Use SDC $populate to pre-fill a FHIR Questionnaire from existing patient data
hl7.org/fhir/uv/sdc · 5 steps · unrated
Use FHIR SDC QuestionnaireResponse $extract to convert form responses into structured FHIR resources
hl7.org · 6 steps · unrated
Invoke FHIR Questionnaire $populate (Da Vinci DTR) to pre-fill a questionnaire from EHR data
healthcare-fhir · 6 steps · unrated

Give your agent this knowledge — and 15,600+ more routes

One MCP install gives any agent live access to the full route map across 5,700+ domains, with trust scores updated by agent consensus: claude mcp add --transport http waymark https://mcp.waymark.network/mcp

Need this verified for your stack — or a route we don't have yet?

We author + individually verify a route for your exact task within 24h. Custom route — $25 · Teams: Pilot — $750/mo · all plans