Skip to content

FHIR Resources and Search

Shinren Pan edited this page Jun 12, 2026 · 1 revision

FHIR Resources & Search

Supported Resources

All 23 resources support full CRUD (read, create, update, delete), search, and history.

Resource Compartment
Patient
Observation GET /Patient/:id/Observation
Encounter GET /Patient/:id/Encounter
Condition GET /Patient/:id/Condition
Medication
MedicationRequest GET /Patient/:id/MedicationRequest
AllergyIntolerance GET /Patient/:id/AllergyIntolerance
Procedure GET /Patient/:id/Procedure
DiagnosticReport GET /Patient/:id/DiagnosticReport
Immunization GET /Patient/:id/Immunization
Practitioner
Organization
Location
RelatedPerson GET /Patient/:id/RelatedPerson
ServiceRequest GET /Patient/:id/ServiceRequest
Specimen GET /Patient/:id/Specimen
DocumentReference GET /Patient/:id/DocumentReference
CarePlan GET /Patient/:id/CarePlan
Goal GET /Patient/:id/Goal
MedicationStatement GET /Patient/:id/MedicationStatement
FamilyMemberHistory GET /Patient/:id/FamilyMemberHistory
Appointment GET /Patient/:id/Appointment
MedicationAdministration GET /Patient/:id/MedicationAdministration

Standard Search Parameters

Supported across all resources:

Parameter Description
_id Resource ID
_lastUpdated Last modification date
_count Results per page (default: 20, max: 1000)
_sort Sort field (prefix - for descending)
_total accurate (default) | estimate | none
_summary true | count | data | text
_elements Comma-separated field list
_include Include referenced resources
_revinclude Include referencing resources
_has Reverse chaining

Resource-Specific Search Parameters

Patient

Parameter Type Example
name string (prefix) name=Wang
family string family=Wang
given string given=Xiao
identifier token identifier=http://www.boma.mohw.gov.tw|A123456789
birthdate date birthdate=1990-01-01
gender token gender=male
address string address=Taipei
active token active=true

Observation

Parameter Type Example
patient reference patient=Patient/abc
subject reference subject=Patient/abc
code token code=http://loinc.org|2093-3
category token category=laboratory
date date date=ge2024-01-01
status token status=final
value-quantity quantity value-quantity=gt180|mg/dL

Condition

Parameter Type Example
patient reference patient=Patient/abc
subject reference subject=Patient/abc
code token code=http://snomed.info/sct|73211009
category token category=problem-list-item
clinical-status token clinical-status=active
onset-date date onset-date=ge2024-01-01

Encounter

Parameter Type Example
patient reference patient=Patient/abc
subject reference subject=Patient/abc
status token status=finished
class token class=AMB
date date date=2024-01-15
type token type=http://snomed.info/sct|11429006

MedicationRequest

Parameter Type Example
patient reference patient=Patient/abc
subject reference subject=Patient/abc
status token status=active
intent token intent=order
medication reference medication=Medication/xyz
authoredon date authoredon=ge2024-01-01

Search Modifiers

Modifier Type Description
:exact string Exact match (case-sensitive)
:contains string Substring match
:missing all name:missing=true — resources without the field
:not token Exclude matching code
:above / :below token Hierarchy (where supported)

Date Range

# On or after
GET /Observation?date=ge2024-01-01

# Between (AND two parameters)
GET /Observation?date=ge2024-01-01&date=lt2024-02-01

Chained Search

# Observations where Patient name is Wang
GET /Observation?patient.name=Wang

# Encounters where subject birthdate is 1990-01-01
GET /Encounter?subject.birthdate=1990-01-01

_include / _revinclude

# Include referenced Patient in results
GET /Observation?patient=Patient/abc&_include=Observation:patient

# Include Observations that reference this Patient
GET /Patient?name=Wang&_revinclude=Observation:patient

Pagination

Results use keyset (cursor-based) pagination. Use the next link from the Bundle response:

{
  "link": [
    { "relation": "self", "url": "http://localhost:8080/Patient?_count=20&_sort=-_lastUpdated" },
    { "relation": "next", "url": "http://localhost:8080/Patient?..." }
  ]
}

Clone this wiki locally