---
title: "List medications"
method: GET
path: "/api/2026-01-01/medical-record/medications"
tags: ["Medications"]
---

# List medications

`GET /api/2026-01-01/medical-record/medications`

List medications for the current user's accessible patients

## Query parameters

- `page[limit]` integer
- `page[cursor]` string
- `sort` string

## Response `200`

List of medications

- MedicationsResponse
  - `items` Medication[], required — Array of medication objects
    - `id` string, uuid, required — UUIDv7 identifier for the medication
    - `patient_id` string, uuid, required — Reference to the patient
    - `practitioner_id` string, uuid, required — Reference to the practitioner
    - `encounter_id` string, uuid, nullable — Reference to the encounter where medication was prescribed (optional)
    - `medication_code` MedicationCode, required
      - `coding` object[], nullable — Array of coded values for the medication (optional — manually added meds won't have formal codes)
        - `display` string, required — Human-readable display name
        - `code` string, required — The medication code
        - `system` string, required — The coding system (e.g., 'http://snomed.info/sct')
      - `text` string, required — Plain text representation of the medication name
    - `ingredients` Ingredient[], nullable — Array of ingredient objects (optional — not all medications have detailed ingredient info)
      - `name` string, nullable — Name of the ingredient
      - `strength` union — Strength or amount of the ingredient
        - string
        - number
      - `strength_unit` string, nullable — Unit of measurement for the strength (e.g., mg, mL, %)
    - `dose_form` string, nullable — Pharmaceutical form (tablet, capsule, suspension, etc.) (optional)
    - `route` string, nullable — Route of administration (oral, IV, topical, etc.) (optional)
    - `frequency` string, nullable — Textual frequency (daily, bid, etc.) (optional)
    - `quantity` integer, nullable — Number of units (e.g., tablets, capsules) dispensed
    - `period_start` string, date, nullable — When the medication course starts (optional)
    - `period_end` string, date, nullable — Planned end date (if any) (optional)
    - `instructions` string, nullable — Free-text administration instructions for the patient (optional)
    - `status` 'active' | 'inactive', required — Lifecycle state of the medication
    - `source` 'prescribed' | 'patient_reported', required — Origin of record – prescribed (from practitioner) or reported (self-reported)
    - `change_reason` string, nullable — Selected reason for status change (e.g., adverse_reaction, completed, patient_request)
    - `prescription_valid_until` string, date, nullable — Expiry date after which repeats aren't valid (optional)
    - `prescription_refills` integer, nullable — Allowed refill count (optional)
    - `prescription_days_supply` integer, nullable — Number of days that the dispensed medication is intended to last (optional)
    - `prescription_reason` string, nullable — Clinical indication or problem being treated (optional)
    - `created_at` string, date-time, required — When the medication record was created
  - `pagination` object, required
    - `cursor` string, nullable, required — Current cursor position
    - `next_cursor` string, nullable — Cursor for the next page
    - `prev_cursor` string, nullable — Cursor for the previous page
    - `has_next_page` boolean — Whether there are more items available

## Other responses

- `401` — Unauthorized
- `403` — Forbidden - insufficient permissions

---

[API](https://skmtc.net/jane/apis/jdp-api.md) · [All operations](https://skmtc.net/jane/apis/jdp-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/jane/jdp-api/revisions/119f3c4ad601/schema)
