Locate a patient, then pull their US Core laboratory DiagnosticReports, read one report, and retrieve the discrete result Observations.
1 workflow3 source APIs1 provider
View SpecView on GitHubHealthInteroperabilityFHIRClinical DataLab OrderingTEFCAQHINHealth Information ExchangeLab ResultsClinical DocumentsSMART on FHIRPatient RecordsHL7ArazzoWorkflows
Retrieve laboratory diagnostic reports and result observations for a matched patient.
Finds the patient by date of birth, searches their laboratory DiagnosticReports, reads one report by id, and retrieves the patient's result Observations.
arazzo: 1.0.1
info:
title: Health Gorilla Lab Results Retrieval
summary: Locate a patient, then pull their US Core laboratory DiagnosticReports, read one report, and retrieve the discrete result Observations.
description: >-
A results-retrieval flow against the Health Gorilla FHIR R4 clinical and lab
network API. The patient is located by demographics, their laboratory
DiagnosticReports are searched, a single report is read by id, and the
discrete Observation results are retrieved for the patient. This mirrors the
US Core DiagnosticReport and laboratory-result pattern over the /fhir/R4
server base. Every step inlines its request so the flow is self-contained.
version: 1.0.0
x-realizes-capability-ids:
- BC-2860.60
- BC-2900.60
x-capability-derivation:
method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
min_confidence: 0.7
sources:
- capability_id: BC-2860.60
capability_name: Diagnostic Results Management
spec: health-gorilla-diagnosticreport-api-openapi.yml
confidence: 0.8
- capability_id: BC-2900.60
capability_name: Healthcare Interoperability Operations
spec: health-gorilla-patient-api-openapi.yml
confidence: 0.7
model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: diagnosticreportApi
url: ../openapi/health-gorilla-diagnosticreport-api-openapi.yml
type: openapi
- name: observationApi
url: ../openapi/health-gorilla-observation-api-openapi.yml
type: openapi
- name: patientApi
url: ../openapi/health-gorilla-patient-api-openapi.yml
type: openapi
workflows:
- workflowId: results-retrieval
summary: Retrieve laboratory diagnostic reports and result observations for a matched patient.
description: >-
Finds the patient by date of birth, searches their laboratory
DiagnosticReports, reads one report by id, and retrieves the patient's result
Observations.
inputs:
type: object
required:
- birthdate
properties:
birthdate:
type: string
description: Patient date of birth (YYYY-MM-DD) to locate the results subject.
steps:
- stepId: findPatient
description: Locate the patient by date of birth.
operationId: searchPatients
parameters:
- name: birthdate
in: query
value: $inputs.birthdate
successCriteria:
- condition: $statusCode == 200
outputs:
patientId: $response.body#/entry/0/resource/id
- stepId: getReports
description: Search the patient's US Core laboratory DiagnosticReports.
operationId: searchDiagnosticReports
parameters:
- name: patient
in: query
value: $steps.findPatient.outputs.patientId
- name: category
in: query
value: LAB
successCriteria:
- condition: $statusCode == 200
outputs:
reports: $response.body
reportId: $response.body#/entry/0/resource/id
- stepId: readReport
description: Read a single DiagnosticReport by id.
operationId: readDiagnosticReport
parameters:
- name: id
in: path
value: $steps.getReports.outputs.reportId
successCriteria:
- condition: $statusCode == 200
outputs:
report: $response.body
- stepId: getObservations
description: Retrieve the discrete result Observations for the patient.
operationId: searchObservations
parameters:
- name: patient
in: query
value: $steps.findPatient.outputs.patientId
successCriteria:
- condition: $statusCode == 200
outputs:
observations: $response.body
outputs:
patientId: $steps.findPatient.outputs.patientId
reports: $steps.getReports.outputs.reports
report: $steps.readReport.outputs.report
observations: $steps.getObservations.outputs.observations
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.