MedicationStatement

The FHIR R4 MedicationStatement resource represents a record of a medication that a patient is taking, has taken, or may take in the future. This may be reported by the patient, a caregiver, or a provider, and is often derived from patient intake forms, interviews, or imported clinical records. Unlike MedicationRequest, which documents intent to prescribe, MedicationStatement focuses on what is actually being taken or reported.

Use Cases

  • Collect self-reported medications during patient intake
  • Display all known active and historical medications from multiple sources
  • Normalize medication history from external providers and networks

Base URLs

Authentication

All requests require OAuth 2.0 authentication using a Bearer Token. Unauthorized requests return 401 Unauthorized responses.

Required Scopes

  • medicationstatement.read for GET
  • medicationstatement.write for POST, PUT, DELETE

For more information, go to: OAuth 2.0 Authentication.

Supported Methods

MethodOperationDescription
GETRead MedicationStatementRetrieves a specific MedicationStatement record by its FHIR ID.
GETSearch MedicationStatementSearches for MedicationStatement records for a specified patient.
POSTCreate MedicationStatementSubmits a new MedicationStatement record to the Health Gorilla FHIR server.
PUTUpdate MedicationStatementUpdates an existing MedicationStatement record by full resource replacement.
DELETEDelete MedicationStatementRemoves an existing MedicationStatement record from the system by full deletion.

Frequently Used Search Parameters

ParameterDescriptionFHIR Value Set / Example ValuesFHIR Data TypeRequired
patientFilters by patient IDPatient/{id}ReferenceYes
statusFilters by the statement's current stateactive, completed, entered-in-errortokenNo
effectiveFilters by when the medication was actually takenge2023-01-01, le2023-12-31dateNo
medicationFilters by the medication codeRxNorm code (e.g., 1049630)tokenNo
contextFilters by encounter or episode contextEncounter/{id}ReferenceNo
dateAssertedFilters by when the statement was recordedge2022-01-01, le2023-12-31dateNo

Commonly Returned Resource Attributes

AttributeDescriptionExample ValuesFHIR Data TypeRequired
idUnique FHIR ID for the medication statementmedstmt-456789idYes
statusCurrent state of the medication statementactive, completedcodeYes
medicationCodeableConceptMedication being takenMetformin 500 MG Oral TabletCodeableConceptYes
subjectPatient who is/was taking the medicationPatient/{id}Reference(Patient)Yes
effectiveDateTimeWhen the medication was taken2024-01-15T08:00:00-08:00dateTimeNo
dateAssertedWhen the statement was made2024-01-16dateTimeNo
informationSourceWho reported the medicationPractitioner/{id}, Patient/{id}ReferenceNo
dosageInstructions for how the medication was or is being takenTake one tablet twice dailyDosage[]No
reasonCodeReason for taking the medicationDiabetes mellitus type 2CodeableConcept[]No
contextAssociated encounter or contextEncounter/{id}Reference(Encounter)No

Webhooks

Clients can subscribe to receive webhook notifications when new MedicationStatement records are added to a patient’s chart or existing records are updated.

For more information, go to: Webhooks & Polling.

Error Handling

All MedicationStatement operations follow standard Health Gorilla error handling, including use of FHIR OperationOutcome for structured responses.
For more information, go to: Error Handling.

Additional Resources

HL7 FHIR MedicationStatement