HL7 FHIR API
OpenAPI specification for the HL7 FHIR R4 API hosted on HAPI FHIR Test Server. FHIR (Fast Healthcare Interoperability Resources) is a standard for exchanging healthcare data electronically. This spec includes the most commonly used FHIR resources for healthcare data exchange.
Base URL:
Auth: none
Endpoints: 28
Reachable: yes
CORS: unknown
Last checked: 2026-03-14 16:08:22.757846
https://hapi.fhir.org/baseR4/Auth: none
Endpoints: 28
Reachable: yes
CORS: unknown
Last checked: 2026-03-14 16:08:22.757846
Links
Documentation:
- Documentation official
- Getting Started official
- Developer's Introduction official
SDKs:
- HAPI FHIR (java) official
535ms
Avg latency (7d)100
Probes (7d)Latency (7d)
Success Rate (7d)
Topics
Endpoints
| Method | Path | Summary | Auth | Last Status | Latency |
|---|---|---|---|---|---|
POST |
/ | server-transaction: Execute a FHIR Transaction (or FHIR Batch) Bundle | none | — | — |
GET |
/AllergyIntolerance | Search allergies | none | 200 | 529ms |
POST |
/AllergyIntolerance | create-type: Create a new AllergyIntolerance instance | none | — | — |
GET |
/AllergyIntolerance/{id} | Read allergy/intolerance | none | 404 | 478ms |
PUT |
/AllergyIntolerance/{id} | update-instance: Update an existing AllergyIntolerance instance, or create using a client-assigned ID | none | 400 | 483ms |
PATCH |
/AllergyIntolerance/{id} | instance-patch: Patch a resource instance of type AllergyIntolerance by ID | none | 400 | 475ms |
DELETE |
/AllergyIntolerance/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 487ms |
GET |
/Appointment | search-type: Search for Appointment instances | none | 200 | 503ms |
POST |
/Appointment | create-type: Create a new Appointment instance | none | — | — |
GET |
/Appointment/{id} | read-instance: Read Appointment instance | none | 404 | 488ms |
PUT |
/Appointment/{id} | update-instance: Update an existing Appointment instance, or create using a client-assigned ID | none | 400 | 485ms |
PATCH |
/Appointment/{id} | instance-patch: Patch a resource instance of type Appointment by ID | none | 400 | 475ms |
DELETE |
/Appointment/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 477ms |
GET |
/Condition | Search conditions | none | 200 | 524ms |
POST |
/Condition | create-type: Create a new Condition instance | none | — | — |
GET |
/Condition/{id} | Read condition | none | 404 | 474ms |
PUT |
/Condition/{id} | update-instance: Update an existing Condition instance, or create using a client-assigned ID | none | 400 | 1474ms |
PATCH |
/Condition/{id} | instance-patch: Patch a resource instance of type Condition by ID | none | 400 | 472ms |
DELETE |
/Condition/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 481ms |
GET |
/DiagnosticReport | Search diagnostic reports | none | 200 | 478ms |
GET |
/DiagnosticReport/{id} | Read diagnostic report | — | — | — |
GET |
/Encounter | Search encounters | none | 200 | 583ms |
POST |
/Encounter | create-type: Create a new Encounter instance | none | — | — |
GET |
/Encounter/{id} | Read encounter | none | 404 | 476ms |
PUT |
/Encounter/{id} | update-instance: Update an existing Encounter instance, or create using a client-assigned ID | none | 400 | 508ms |
PATCH |
/Encounter/{id} | instance-patch: Patch a resource instance of type Encounter by ID | none | 400 | 476ms |
DELETE |
/Encounter/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 471ms |
GET |
/Immunization | Search Immunization resources | none | 200 | 498ms |
GET |
/Location | Search locations | — | — | — |
GET |
/Location/{id} | Read location | — | — | — |
GET |
/Medication | Search Medication resources | none | 200 | 490ms |
GET |
/Medication/{id} | Read a specific Medication | none | 404 | 489ms |
GET |
/MedicationRequest | Search medication requests | none | 200 | 510ms |
GET |
/MedicationRequest/{id} | Read medication request | — | — | — |
GET |
/Observation | Search observations | none | 200 | 535ms |
POST |
/Observation | create-type: Create a new Observation instance | none | — | — |
GET |
/Observation/{id} | Read observation | none | 404 | 483ms |
PUT |
/Observation/{id} | update-instance: Update an existing Observation instance, or create using a client-assigned ID | none | 400 | 473ms |
PATCH |
/Observation/{id} | instance-patch: Patch a resource instance of type Observation by ID | none | 400 | 476ms |
DELETE |
/Observation/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 491ms |
GET |
/Organization | Search organizations | none | 200 | 477ms |
POST |
/Organization | create-type: Create a new Organization instance | none | — | — |
GET |
/Organization/{id} | Read organization | none | 404 | 482ms |
PUT |
/Organization/{id} | update-instance: Update an existing Organization instance, or create using a client-assigned ID | none | 400 | 476ms |
PATCH |
/Organization/{id} | instance-patch: Patch a resource instance of type Organization by ID | none | 400 | 476ms |
DELETE |
/Organization/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 482ms |
GET |
/Patient | Search patients | none | 200 | 500ms |
POST |
/Patient | create-type: Create a new Patient instance | none | — | — |
GET |
/Patient/{id} | Read patient | none | 200 | 474ms |
PUT |
/Patient/{id} | update-instance: Update an existing Patient instance, or create using a client-assigned ID | none | 400 | 476ms |
PATCH |
/Patient/{id} | instance-patch: Patch a resource instance of type Patient by ID | none | 400 | 483ms |
DELETE |
/Patient/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 477ms |
GET |
/Practitioner | Search practitioners | none | 200 | 523ms |
POST |
/Practitioner | create-type: Create a new Practitioner instance | none | — | — |
GET |
/Practitioner/{id} | Read practitioner | none | 404 | 480ms |
PUT |
/Practitioner/{id} | update-instance: Update an existing Practitioner instance, or create using a client-assigned ID | none | 400 | 483ms |
PATCH |
/Practitioner/{id} | instance-patch: Patch a resource instance of type Practitioner by ID | none | 400 | 476ms |
DELETE |
/Practitioner/{id} | instance-delete: Perform a logical delete on a resource instance | none | 200 | 481ms |
GET |
/Procedure | Search procedures | none | 200 | 510ms |
GET |
/Procedure/{id} | Read procedure | — | — | — |
GET |
/metadata | Get server capabilities | none | 200 | 631ms |