FHIR Complete

Medication

Medication catalog, prescriptions, and statements

Medication Catalog

Search Medications

GET /Medication?name={name}&code={code}&_count={limit}&_offset={offset}

Create Medication

POST /Medication
Content-Type: application/json
{
  "resourceType": "Medication",
  "code": {
    "coding": [
      {
        "system": "http://www.nlm.nih.gov/research/umls/rxnorm",
        "code": "197361",
        "display": "Amlodipine 5 MG Oral Tablet"
      }
    ]
  },
  "form": {
    "coding": [
      {
        "system": "http://snomed.info/sct",
        "code": "385055001",
        "display": "Tablet"
      }
    ]
  }
}

Read / Update / Delete

GET /Medication/{resource_id}
PUT /Medication/{resource_id}
DELETE /Medication/{resource_id}

MedicationRequest (Prescriptions)

GET /MedicationRequest?patient={id}&status={status}&authoredon={date}

Create Prescription

POST /MedicationRequest
Content-Type: application/json
{
  "resourceType": "MedicationRequest",
  "status": "active",
  "intent": "order",
  "medicationReference": { "reference": "Medication/med-amlodipine-5mg" },
  "subject": { "reference": "Patient/ZCT_patient_001" },
  "requester": { "reference": "Practitioner/ZCT_doctor_001" },
  "dosageInstruction": [
    {
      "text": "Take 1 tablet daily in the morning",
      "timing": {
        "repeat": { "frequency": 1, "period": 1, "periodUnit": "d" }
      },
      "doseAndRate": [
        {
          "doseQuantity": { "value": 1, "unit": "tablet" }
        }
      ]
    }
  ],
  "dispenseRequest": {
    "numberOfRepeatsAllowed": 3,
    "quantity": { "value": 30, "unit": "tablet" }
  }
}

MedicationStatement

Track what a patient is actually taking:

GET /MedicationStatement?patient={id}&status={status}
POST /MedicationStatement
PUT /MedicationStatement/{resource_id}
DELETE /MedicationStatement/{resource_id}

Medication Catalog

GET /MedicationCatalog?name={name}&_count={limit}

Search the medication catalog for use in prescribing.

Pharmacy Endpoints

EndpointDescription
GET /Pharmacy/formularyOrganization's medication formulary
POST /Pharmacy/dispenseRecord medication dispensing
GET /Pharmacy/interactions?medications={ids}Check drug interactions
GET /Pharmacy/controlled-substancesList controlled substances