This
page
is
part
of
the
FHIR
Specification
(v5.0.0:
R5
-
STU
v6.0.0-ballot1:
Release
6
Ballot
(1st
Draft)
(see
Ballot
Notes
).
This
is
the
The
current
published
version
in
it's
permanent
home
(it
will
always
be
available
at
this
URL).
is
5.0.0
.
For
a
full
list
of
available
versions,
see
the
Directory
of
published
versions
.
Page
versions:
R5
R4B
R4
R3
FHIR
Infrastructure
Work
Group
|
Maturity Level : N/A | Standards Status : Informative |
The RESTful API defines a set of common interactions (read, update, search, etc.) performed on a repository of typed resources. For further information concerning how operations are defined and invoked, see Extended Operations on the RESTful API .
This is a full list of the operations defined by this specification:
| Base Operations (All resource types) | |
| Validate a resource | [base]/[Resource]/$validate | [base]/[Resource]/[id]/$validate |
| Access a list of profiles, tags, and security labels | [base]/$meta | [base]/[Resource]/$meta | [base]/[Resource]/[id]/$meta |
| Add profiles, tags, and security labels to a resource | [base]/[Resource]/[id]/$meta-add |
| Delete profiles, tags, and security labels for a resource | [base]/[Resource]/[id]/$meta-delete |
| Convert from one form to another | [base]/$convert |
| Execute a graphql statement | [base]/$graphql | [base]/[Resource]/[id]/$graphql |
| Return a graph of resources | [base]/[Resource]/[id]/$graph |
| Add to an array in a large resource | [base]/[Resource]/[id]/$add |
| Remove from an array in a large resource | [base]/[Resource]/[id]/$remove |
| Filter an array in a large resource | [base]/[Resource]/[id]/$filter |
| Fetch the current version of a canonical resource (based on canonical versioning) | [base]/$current-canonical | [base]/[CanonicalResource]/$current-canonical |
| Operations Defined by Resource Types | |
| Apply | [base]/ActivityDefinition/$apply | [base]/ActivityDefinition/[id]/$apply |
| Data Requirements | [base]/ActivityDefinition/[id]/$data-requirements |
| Fetch a subset of the CapabilityStatement resource | [base]/CapabilityStatement/$subset | [base]/CapabilityStatement/[id]/$subset |
| Test if a server implements a client's required operations | [base]/CapabilityStatement/$implements | [base]/CapabilityStatement/[id]/$implements |
| Test if a server implements a client's required operations | [base]/CapabilityStatement/$conforms |
| Discover what versions a server supports | [base]/$versions |
| Apply | [base]/ChargeItemDefinition/[id]/$apply |
| Submit a Claim resource for adjudication | [base]/Claim/$submit |
| Concept Look Up & Decomposition | [base]/CodeSystem/$lookup | [base]/CodeSystem/[id]/$lookup |
| Code System based Validation | [base]/CodeSystem/$validate-code | [base]/CodeSystem/[id]/$validate-code |
| Subsumption Testing | [base]/CodeSystem/$subsumes | [base]/CodeSystem/[id]/$subsumes |
| Finding codes based on supplied properties | [base]/CodeSystem/$find-matches | [base]/CodeSystem/[id]/$find-matches |
| Generate a Document | [base]/Composition/[id]/$document |
| Concept Translation | [base]/ConceptMap/$translate | [base]/ConceptMap/[id]/$translate |
| Closure Table Maintenance | [base]/$closure |
| Submit an EligibilityRequest resource for assessment | [base]/CoverageEligibilityRequest/$submit |
| Generate a DocumentReference from a document | [base]/DocumentReference/$generate |
| Fetch DocumentReference | [base]/DocumentReference/$docref |
| Fetch Encounter Record | [base]/Encounter/[id]/$everything |
| Fetch EpisodeOfCare Record | [base]/EpisodeOfCare/[id]/$everything |
| Fetch a group of Patient Records | [base]/Group/[id]/$everything |
| Data Requirements | [base]/$data-requirements | [base]/Library/[id]/$data-requirements |
| Find a functional list | [base]/List/$find |
| Evaluate Measure | [base]/Measure/$evaluate-measure | [base]/Measure/[id]/$evaluate-measure |
| Data Requirements | [base]/Measure/[id]/$data-requirements |
| Submit Data | [base]/Measure/$submit-data | [base]/Measure/[id]/$submit-data |
| Collect Data | [base]/Measure/$collect-data | [base]/Measure/[id]/$collect-data |
| Care Gaps | [base]/Measure/$care-gaps |
| Fetch Product Record | [base]/MedicinalProductDefinition/$everything | [base]/MedicinalProductDefinition/[id]/$everything |
| Process Message | [base]/$process-message |
| Fetch Preferred id | [base]/NamingSystem/$preferred-id |
| Translate id | [base]/NamingSystem/$translate-id |
| Observation Statistics | [base]/Observation/$stats |
| Last N Observations Query | [base]/Observation/$lastn |
| Find patient matches using MPI based logic | [base]/Patient/$match |
| Fetch Patient Record | [base]/Patient/$everything | [base]/Patient/[id]/$everything |
| Patient Merge | [base]/Patient/$merge |
| Purge Patient Record | [base]/Patient/[id]/$purge |
| Apply | [base]/PlanDefinition/$apply | [base]/PlanDefinition/[id]/$apply |
| Data Requirements | [base]/PlanDefinition/[id]/$data-requirements |
| Apply | [base]/SpecimenDefinition/$apply | [base]/SpecimenDefinition/[id]/$apply |
| Build Questionnaire | [base]/StructureDefinition/$questionnaire | [base]/StructureDefinition/[id]/$questionnaire |
| Generate Snapshot | [base]/StructureDefinition/$snapshot | [base]/StructureDefinition/[id]/$snapshot |
| Model Instance Transformation | [base]/StructureMap/$transform | [base]/StructureMap/[id]/$transform |
| Search and retrieve prior events for a Subscription | [base]/Subscription/[id]/$events |
| Get Current Subscription Status for One or More Subscriptions | [base]/Subscription/$status | [base]/Subscription/[id]/$status |
| Get a binding token for use in a websocket connection | [base]/Subscription/$get-ws-binding-token | [base]/Subscription/[id]/$get-ws-binding-token |
| Value Set Expansion | [base]/ValueSet/$expand | [base]/ValueSet/[id]/$expand |
| Value Set based Validation | [base]/ValueSet/$validate-code | [base]/ValueSet/[id]/$validate-code |
Notes:
meta
element
also
operate
on
previous
versions
of
a
resource
(/_history/).
They
are
the
only
operations
that
can
manipulate
versions
other
than
the
"current"
version.
This specification defines a set of services, which are business level aggregations of Resources and Operations that provide a defined package of functionality that correspond to an identified business need.
Note
that
in
addition
to
the
services
defined
in
this
specification,
many
implementation
guides
define
business
level
services.
This table lists the services currently defined:
| Name | Description | Links |
| Terminology Service |
A service that lets healthcare applications make use of codes, code systems, and value sets without having to become experts in the fine details of the code system, value set and concept map resources, and the underlying code systems and terminological principles. The service provides the following functionality:
|
Capability
statement
module |
| Conformance Service |
A service that provides the underlying services needed to test whether resources conform to the rules defined by the FHIR specification and applicable implementation guides, and to help author implementation guides. The service provides the following functionality:
|
To be developed |
| Knowledge Repository |
A service that provides basic retrieval and maintenance functionality for clinical knowledge artifacts. The service provides the following functionality:
|
Capability
statement
module |
| Measure Processor |
A service that provides measure evaluation functionality. The service provides the following functionality:
|
Capability
statement
module |
Possible candidate Business Services for future versions:
Note that there is already past & current work on some of these in HL7 (though not necessarily FHIR specific).