The HCS FHIR API is an implemenation of HL7 FHIR and their documentation can be used for a general understanding.
Required parameters are in bold
Optional parameters are in italics
All production connections use https for security
Users of the HCS FHIR API will need to have one or more User IDs created in the target HCS Clinicals system. This is done by a written request to HCS and the Healthcare Facility running an instance of HCS Clinicals. All authorization of actions taken through the FHIR APi is done based on these user IDs as they are configured for authorization in HCS Clinicals.
Each API request uses basic authentication, using the User ID and password created for Authorization.
This HCS FHIR API supports the SMART App Launch Framework. To register a SMART client, send a written request to HCS and the Healthcare Facility running an instance of HCS Clinicals.
This should include:
Supported Grant Types:
Authorization Endpoint: GET https://site/api/oath/authorization
When a client doesn't have an access or refresh token or the refresh token has expired, then authentication flow should occur to aquire an authorization code. Open a browser window to load the authorization endpoint. After the user has authenticated and authorized the client by selecting scopes, the browser will be redirected to the client's redirect URI with the authorization code. The authorization code is for a limited time.
Token Endpoint: POST https://site/api/oath/maketoken
Scopes:
Only customers who request application modifications may incur additional costs to support product customization.
Retrieve a FHIR CapabilityStatement for the entire system with
GET /api/metadata
You can also retrieve a CapabilityStatement for each api resource with
GET /api/{Resource}/metadata
AllergyIntolerance resources can be retrieved and searched.
This conforms to US Core AllergyIntolerance Profile
This supports fields in USCDI Allergies and Intolerances
You can retrieve an allergy intolerance by ID with
GET /api/AllergyIntolerance/{id}
If successful, this returns a FHIR AllergyIntolerance with a response code of 200
Other responses:
404 Not Found - An AllergyIntolerance resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the AllergyIntolerance.
403 Forbidden- The system has been configured to cancel viewing of this AllergyIntolerance.
Example:
GET https://site/api/AllergyIntolerance/123456
You can search for existing AllergyIntolerance with
GET /api/AllergyIntolerance?{patient},{date},{category}
If successful, this returns a FHIR Bundle of FHIR AllergyIntolerance entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view allergies.
403 Forbidden- The system has been configured to cancel viewing of the allergies.
Examples:
GET https://site/api/AllergyIntolerance?patient=123456
GET https://site/api/AllergyIntolerance?patient=123456&date=ge2019-10-25&date=lt2019-10-28
GET https://site/api/AllergyIntolerance?patient=123456&category=medication
A Binary resource data can be retrieved by ID.
You can retrieve binary by ID with
GET /api/Binary/{id}
If successful, this returns a FHIR Binary with a response code of 200
Other responses:
404 Not Found - A binary resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the data.
403 Forbidden- The system has been configured to cancel viewing of this data.
400 Bad Request - The document ID did not start with a SOURCECODE.
Example:
GET https://site/api/Binary/PATDOC-123456
CarePlan resources can be searched.
This conforms to US Core CarePlan Profile.
This supports fields in USCDI Assessment and Plan of Treatment Class.
You can search for existing care plans with
GET /api/CarePlan?{encounter},{date},{category}
If successful, this returns a FHIR Bundle of FHIR CarePlan entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view care plans.
403 Forbidden- The system has been configured to cancel viewing of the care plan.
Examples:
GET https://site/api/CarePlan?encounter=123456
GET https://site/api/CarePlan?encounter=123456&category=assess-plan
GET https://site/api/CarePlan?encounter=123456&date=ge2019-10-25,lt2019-11-28
CareTeam resources can be searched.
This conforms to US Core CareTeam Profile.
This supports fields in USCDI Care Team Member(s).
You can search for existing care teams with
GET /api/CareTeam?{encounter},{patient},{status}
If successful, this returns a FHIR Bundle of FHIR CareTeam entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view care teams.
403 Forbidden- The system has been configured to cancel viewing of the care team.
Examples:
GET https://site/api/CareTeam?encounter=123456
GET https://site/api/CareTeam?encounter=123456&status=active
ClaimResponse resources can be retrieved, searched, added, updated and deleted.
You can retrieve a claim response by ID with
GET /api/ClaimResponse/{id}
If successful, this returns a FHIR ClaimResponse with a response code of 200
Other responses:
404 Not Found - An ClaimResponse resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the ClaimResponse.
403 Forbidden- The system has been configured to cancel viewing of this ClaimResponse.
Example:
GET https://site/api/ClaimResponse/123456
You can search for existing ClaimResponse with
GET /api/ClaimResponse?{patient}
If successful, this returns a FHIR Bundle of FHIR ClaimResponse entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view claim responses.
403 Forbidden- The system has been configured to cancel viewing of the claim responses.
Examples:
GET https://site/api/ClaimResponse?patient=123456
You can add a ClaimResponse with
POST /api/ClaimResponse body:{claimResponse}
If successful, this returns a FHIR ClaimResponse with a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to view claim responses.
403 Forbidden- The system has been configured to cancel adding of the claim responses.
You can update a ClaimResponse with
PUT /api/ClaimResponse?{id} body:{claimResponse}
If successful, this returns a FHIR ClaimResponse with a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to view claim responses.
403 Forbidden- The system has been configured to cancel updating of the claim responses.
You can delete a ClaimResponse with
DELETE /api/ClaimResponse?{id}
If successful, this returns a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to delete claim responses.
403 Forbidden- The system has been configured to cancel deleteing of the claim responses.
Examples:
DELETE https://site/api/ClaimResponse?id=123456
Condition resources can be retrieved and searched.
This conforms to US Core Condition Profile and US Core Condition Problems and Health Concerns Profile.
This supports fields in USCDI Health Concerns and USCDI Problems
You can retrieve a Condition by ID with
GET /api/Condition/{id}
If successful, this returns a FHIR Condition with a response code of 200
Other responses:
404 Not Found - A Condition resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the Condition.
403 Forbidden- The system has been configured to cancel viewing of this Condition.
Example:
GET https://site/api/Condition/123456
You can search for existing conditions with
GET /api/Condition?{encounter},{category},{onset-date}
If successful, this returns a FHIR Bundle of FHIR Condition entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view conditions.
403 Forbidden- The system has been configured to cancel viewing of the conditions.
Examples:
GET https://site/api/Condition?encounter=123456
GET https://site/api/Condition?encounter=123456&category=problem-list-item
GET https://site/api/Condition?encounter=123456&onset-date=ge2019-10-25,lt2019-11-28
Coverage resources can be retrieved, searched, added, updated and deleted.
You can retrieve a coverage by ID with
GET /api/Coverage/{id}
If successful, this returns a FHIR Coverage with a response code of 200
Other responses:
404 Not Found - An Coverage resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the Coverage.
403 Forbidden- The system has been configured to cancel viewing of this Coverage.
Example:
GET https://site/api/Coverage/123456
You can search for existing Coverage with
GET /api/Coverage?{patient}
If successful, this returns a FHIR Bundle of FHIR Coverage entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view coverages.
403 Forbidden- The system has been configured to cancel viewing of the coverages.
Examples:
GET https://site/api/Coverage?beneficiary=123456
You can add a Coverage with
POST /api/Coverage body:{coverage}
If successful, this returns a FHIR Coverage with a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to view coverages.
403 Forbidden- The system has been configured to cancel adding of the coverages.
You can update a Coverage with
PUT /api/Coverage?{id} body:{coverage}
If successful, this returns a FHIR Coverage with a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to view coverages.
403 Forbidden- The system has been configured to cancel updating of the coverages.
You can delete a Coverage with
DELETE /api/Coverage?{id}
If successful, this returns a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to delete coverages.
403 Forbidden- The system has been configured to cancel deleteing of the coverages.
Examples:
DELETE https://site/api/Coverage?id=123456
Device resources can be retrieved and searched.
This conforms to US Core ImplantableDevice Profile.
This supports fields in USCDI Unique Device Identifier(s) for a Patient’s Implantable Device(s).
You can retrieve a device by ID with
GET /api/Device/{id}
If successful, this returns a FHIR Device with a response code of 200
Other responses:
404 Not Found - An Device resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the Device.
403 Forbidden- The system has been configured to cancel viewing of this Device.
Example:
GET https://site/api/Device/123456
You can search for existing Device resources with
GET /api/Device?{patient},{date}
If successful, this returns a FHIR Bundle of FHIR Device entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view devices.
403 Forbidden- The system has been configured to cancel viewing of the devices.
Examples:
GET https://site/api/Device?patient=123456
GET https://site/api/Device?patient=123456&date=ge2019-10-25&date=lt2019-10-28
DiagnosticReport resources can be searched.
This conforms to US Core DiagnosticReport Profile for Report and Note Exchange
This supports fields in USCDI Clinical Notes.
You can search for existing diagnostic reports with
GET /api/DiagnosticReport?{encounter},{patient},{category},{code},{date}
If successful, this returns a FHIR Bundle of FHIR DiagnosticReport entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view observations.
403 Forbidden- The system has been configured to cancel viewing of the observations.
Examples:
GET https://site/api/DiagnosticReport?encounter=123456
GET https://site/api/DiagnosticReport?encounter=123456&code=http://loinc.org|21176-3
GET https://site/api/DiagnosticReport?encounter=123456&date=ge2019-10-25&date=lt2019-10-28
GET https://site/api/DiagnosticReport?encounter=123456&category=LP29684-5
DocumentReference resources can be retrieved, searched and generated
This conforms to US Core DocumentReference Profile
All FHIR DocumentReference resources returned will have an Attachment with a URL that points to the Binary resource.
CCDA documents can be generated and retrieved in compliance with §170.315(g)(9) Application Access - All Data Request
This supports fields in USCDI Clinical Notes.
You can retrieve a document by ID with
GET /api/DocumentReference/{id}
If successful, this returns a FHIR DocumentReference with a response code of 200
Other responses:
404 Not Found - A document with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view patient documents.
403 Forbidden- The system has been configured to cancel viewing of this document.
400 Bad Request - The document ID did not start with either PATDOC or VISDOC.
Example:
GET https://site/api/DocumentReference/PATDOC-123456
You can search for existing documents with
GET /api/DocumentReference?{_id},{patient},{encounter},{type},{category},{date}
If successful, this returns a FHIR Bundle of FHIR DocumentReference entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view patient documents.
403 Forbidden- The system has been configured to cancel viewing of this document.
Examples:
GET https://site/api/DocumentReference/?patient=123456
GET https://site/api/DocumentReference/?patient=123456&category=clinical-note
You can generate a CCDA Continuity of Care document with
GET /api/DocumentReference/$docref?{patient},{start},{stop},{type}
If successful, this returns a FHIR Bundle of a single FHIR DocumentReference with a response code of 200
Other responses:
404 Not Found - A patient with the ID was not found in the system.
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view or add patient documents.
403 Forbidden- The system has been configured to cancel viewing or adding of this document.
Example:
GET https://site/api/DocumentReference/$docref?patient=123456&start=2015-07-01&stop=2017-08-20
Encounter resources can be retrieved, searched, added and updated.
You can retrieve an encounter by ID with
GET /api/Encounter/{id}
If successful, this returns a FHIR Encounter with a response code of 200
Other responses:
404 Not Found - An encounter resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the encounter.
403 Forbidden- The system has been configured to cancel viewing of this encounter.
Example:
GET https://site/api/Encounter/123456
You can search for existing encounters with
GET /api/Patient?{_id},{identifier},{service-provider},{patient},{location}
If successful, this returns a FHIR Bundle of FHIR Encounter entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view encounters.
403 Forbidden- The system has been configured to cancel viewing of the encounters.
Examples:
GET https://site/api/Encounter?patient=123456
GET https://site/api/Encounter?identifier=http://site/accountnumber|123456789
You can add an encounter with
POST /api/Encounter
If successful, this returns a FHIR Encounter with a response code of 200
Other responses:
401 Unauthorized - The user is not authorized to add the encounter.
403 Forbidden- The system has been configured to cancel adding of this encounter.
Example:
PUT https://site/api/Encounter
You can update an encounter with
POST /api/Encounter/{id}
If successful, this returns a FHIR Encounter with a response code of 200
Other responses:
404 Not Found - An encounter resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to add the encounter.
403 Forbidden- The system has been configured to cancel adding of this encounter.
Example:
PUT https://site/api/Encounter
Goal resources can be retrieved and searched.
This conforms to US Core Goal Profile
This supports fields in USCDI Goals.
You can retrieve a goal by ID with
GET /api/goal/{id}
If successful, this returns a FHIR Goal with a response code of 200
Other responses:
404 Not Found - An Goal resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the Goal.
403 Forbidden- The system has been configured to cancel viewing of this Goal.
Example:
GET https://site/api/Goal/123456
You can search for existing Goal resources with
GET /api/Goal?{patient},{encounter}
If successful, this returns a FHIR Bundle of FHIR Goal entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view goals.
403 Forbidden- The system has been configured to cancel viewing of the goals.
Examples:
GET https://site/api/Goal?patient=123456
Immunization resources can be retrieved and searched.
This conforms to US Core Immunization Profile
This supports fields in USCDI Immunizations.
You can retrieve an immunization by ID with
GET /api/Immunization/{id}
If successful, this returns a FHIR Immunization with a response code of 200
Other responses:
404 Not Found - An Immunization resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the Immunization.
403 Forbidden- The system has been configured to cancel viewing of this Immunization.
Example:
GET https://site/api/Immunization/123456
You can search for existing Immunization with
GET /api/Immunization?{patient},{date}
If successful, this returns a FHIR Bundle of FHIR Immunization entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view immunizations.
403 Forbidden- The system has been configured to cancel viewing of the immunization.
Examples:
GET https://site/api/Immunization?patient=123456
GET https://site/api/Immunization?patient=123456&date=ge2019-10-25,lt2019-11-28
MedicationRequest resources can be searched.
This conforms to US Core MedicationRequest Profile
This supports fields in USCDI Medications.
You can search for existing Medication Requests with
GET /api/MedicationRequest?{patient},{encounter},{date},{category},{intent},{status}
If successful, this returns a FHIR Bundle of FHIR Procedure entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view medications.
403 Forbidden- The system has been configured to cancel viewing of the medication.
Examples:
GET https://site/api/MedicationRequest?encounter=123456
GET https://site/api/MedicationRequest?encounter=123456&date=ge2019-10-25,lt2019-11-28
GET https://site/api/MedicationRequest?encounter=123456&category=inpatient
Observation resources can be searched, added, updated and deleted.
This conforms to US Core Laboratory Result Observation Profile
This supports fields in USCDI Laboratory and USCDI Smoking Status and USCDI Vital Signs .
You can search for existing observations with
GET /api/Observation?{encounter},{code},{date}
If successful, this returns a FHIR Bundle of FHIR Observation entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view observations.
403 Forbidden- The system has been configured to cancel viewing of the observations.
Examples:
GET https://site/api/Observation?encounter=123456
GET https://site/api/Observation?encounter=123456&code=http://loinc.org|21176-3
GET https://site/api/Observation?encounter=123456&category=health-concern
GET https://site/api/Observation?encounter=123456&date=ge2019-10-25&date=lt2019-10-28
Organization resources can be retrieved, searched, added, updated and deleted.
Organizations can be Facilities, PCUs or Insurance Companies
You can search for existing organizations with
GET /api/Organization?{name},{active},{partof}
If successful, this returns a FHIR Bundle of FHIR Organization entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view observations.
403 Forbidden- The system has been configured to cancel viewing of the observations.
Examples:
GET https://site/api/Organization?name=Medicare
Patient resources can be retrieved, searched, added, updated and deleted.
This conforms to US Core Patient Profile.
This supports fields in USCDI Patient Demographics.
Patient resources have these extensions:
You can retrieve a patient by ID with
GET /api/Patient/{id}
If successful, this returns a FHIR Patient with a response code of 200
Other responses:
404 Not Found - A patient resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the patient.
403 Forbidden- The system has been configured to cancel viewing of this patient.
Example:
GET https://site/api/Patient/123456
You can search for existing patients with
GET /api/Patient?{_id},{identifier},{family},{given}
If successful, this returns a FHIR Bundle of FHIR Patient entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view patients.
403 Forbidden- The system has been configured to cancel viewing of the patients.
Examples:
GET https://site/api/Patient?family=smith&given=john
GET https://site/api/Patient?identifier=http://hl7.org/fhir/sid/us-ssn|123456789
Procedure resources can be searched.
This conforms to US Core Procedure Profile
This supports fields in USCDI Procedures.
You can search for existing procedures with
GET /api/Procedure?{encounter},{patient},{date}
If successful, this returns a FHIR Bundle of FHIR Procedure entries with a response code of 200
Other responses:
501 Not Implemented - A parameter was sent that was not recognized (only if FHIR strict parameter handling was sent in the request header).
401 Unauthorized - The user is not authorized to view procedures.
403 Forbidden- The system has been configured to cancel viewing of the procedure.
Examples:
GET https://site/api/Procedure?encounter=123456
GET https://site/api/Procedure?encounter=123456&date=ge2019-10-25,lt2019-11-28
Provenance resources can be retrieved.
This conforms to US Core Provenance Profile
This supports fields in USCDI Provenance.
You can retrieve a provenance by ID with
GET /api/Provenance/{id}
If successful, this returns a FHIR Patient with a response code of 200
Other responses:
404 Not Found - A provenance resource with the ID was not found in the system.
401 Unauthorized - The user is not authorized to view the provenance.
403 Forbidden- The system has been configured to cancel viewing of this provenance.
Example:
GET https://site/api/provenance/123456
These sections explain how the HCS FHIR API can be used to gather information related to Meaningful Use.
This in compliance with
Assessment and Plan of Treatment uses the CarePlan resource.
Example:
GET https://site/api/CarePlan?encounter=123456
Care Team Members uses the CareTeam resource.
Example:
GET https://site/api/CareTeam/123456
Clinical Notes uses the DocumentReference and DiagnosticReports resources.
Example:
GET https://site/api/DocumentReference/$docref?patient=123456&start=2015-07-01&stop=2017-08-20
GET https://site/api/DiagnosticReport?encounter=123456
Goals use the Goal resource.
Example:
GET https://site/api/Goal?encounter=123456
Health Concerns use the Condition resource
Example:
GET https://site/api/Condition?encounter=123456&category=health-concern
Immunizations use the Immunization resource.
Example:
GET https://site/api/Immunization?patient=123456
Lab Values/Results use the Observation resource.
Example:
GET https://site/api/Observation?encounter=123456&category=laboratory
Lab Tests use the DiagnosticReport resource.
Example:
GET https://site/api/DiagnosticReport?encounter=123456
Medications use the MedicationRequest resource.
Example:
GET https://site/api/MedicationRequest?encounter=123456
Medication Allergies use the AllergyIntolerance resource.
Example:
GET https://site/api/AllergyIntolerance?patient=123456&category=medication
Patient Selection uses the Patient resource search capabilities.
Example:
GET https://site/api/Patient?family=smith&given=john
GET https://site/api/Patient?identifier=http://hl7.org/fhir/sid/us-ssn|123456789
Problems use the Condition resource.
Example:
GET https://site/api/Condition?encounter=123456
Procedures use the Procedure resource.
Example:
GET https://site/api/Procedure?encounter=123456
Smoking Status uses the Observation resource. Simply do a search on an encounter with a code of 72166-2
Example:
GET https://site/api/Observation?encounter=123456&code=72166-2
Unique Device Identifiers use the Device resource.
Example:
GET https://site/api/Device?patient=123456
Vital Signs use the Observation resource.
Conforms to the following profiles:
Example:
GET https://site/api/Observation?encounter=123456&category=vital-signs
HL7.FHIR.R4:
Copyright (c) 2013-2020, HL7, Firely (info@fire.ly), Microsoft Open Technologies and contributors. See the file CONTRIBUTORS for details All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Firely nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
These can be downloaded as a FHIR Bundle from Endpoints