AlayaCare Medication API

The Medication API from AlayaCare — 5 operation(s) for medication.

Operations 9

GET /medications Get a list of medications
POST /medications Create a medication
GET /medications/{medication_id} Get details of a medication
PUT /medications/{medication_id} Update a medication
GET /client/{client_id}/medications Fetch a list of medications by client
POST /client/{client_id}/medications Create a new medication for a specific client
GET /client/by_id/{external_client_id}/medications Fetch a medication by external client id #
POST /client/by_id/{external_client_id}/medications Create a new medication for a specific client
POST /medications/{medication_id}/change_status/{new_status} Update a medication status #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/alayacare-medication-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

alayacare-medication-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Alayacare Medication API
  version: '1.0'
  description: 'Operations tagged Medication across 2 of this provider''s published API definitions: alayacare-clinical-openapi.yml, alayacare-medication-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://homecare.alayacare.ca/ext/api/v2/clinical
- url: https://homecare.alayacare.ca/ext/api/v3/clinical
tags:
- name: Medication
paths:
  /medications:
    get:
      tags:
      - Medication
      summary: Get a list of medications
      description: 'The fields `count_administered_today` and `last_administered_at` will NOT be populated.

        '
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/count'
      - name: client_id
        description: The ID of a client.
        in: query
        schema:
          type: integer
      - name: external_client_id
        description: The external ID of a client.
        in: query
        schema:
          type: string
      - name: status
        description: The status of a medication.
        in: query
        schema:
          type: string
      - name: with_last_administration
        description: The fields `count_administered_today` and `last_administered_at` will be populated.
        in: query
        schema:
          type: boolean
      responses:
        200:
          description: A list of medications
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MedicationList'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/InvalidRequest'
    post:
      tags:
      - Medication
      summary: Create a medication
      responses:
        201:
          description: Medication created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateSuccess'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/InvalidRequest'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MedicationCreate'
        description: Medication data in JSON format
        required: true
    servers:
    - url: https://homecare.alayacare.ca/ext/api/v2/clinical
  /medications/{medication_id}:
    parameters:
    - description: Medication ID
      name: medication_id
      in: path
      required: true
      schema:
        type: string
        format: uuid
    get:
      tags:
      - Medication
      summary: Get details of a medication
      parameters:
      - description: The fields `count_administered_today` and `last_administered_at` will be populated.
        name: with_last_administration
        in: query
        schema:
          type: boolean
      responses:
        200:
          description: Medication details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Medication'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/InvalidRequest'
        404:
          $ref: '#/components/responses/NotFound'
    put:
      tags:
      - Medication
      summary: Update a medication
      responses:
        200:
          description: Medication updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateSuccess'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/InvalidRequest'
        404:
          $ref: '#/components/responses/NotFound'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MedicationUpdate'
        description: Medication data in JSON format
        required: true
    servers:
    - url: https://homecare.alayacare.ca/ext/api/v2/clinical
  /client/{client_id}/medications:
    get:
      tags:
      - Medication
      summary: Fetch a list of medications by client
      responses:
        '200':
          $ref: '#/components/responses/MedicationList'
        '400':
          $ref: '#/components/responses/InvalidRequest_2'
        '401':
          $ref: '#/components/responses/AuthChallenge_2'
      parameters:
      - name: client_id
        schema:
          type: integer
        in: path
        required: true
        description: Client ID to fetch the medications from
      - $ref: '#/components/parameters/include'
      - $ref: '#/components/parameters/medications'
      - $ref: '#/components/parameters/medication_ids'
      - $ref: '#/components/parameters/exclude_medication_ids'
      - $ref: '#/components/parameters/status'
      - $ref: '#/components/parameters/frequency_setting'
      - $ref: '#/components/parameters/administration_type'
      - $ref: '#/components/parameters/discrepancy_type'
      - $ref: '#/components/parameters/start_date'
      - $ref: '#/components/parameters/end_date'
      - $ref: '#/components/parameters/is_archived'
      - $ref: '#/components/parameters/is_high_alert'
      - $ref: '#/components/parameters/is_narcotic'
      - $ref: '#/components/parameters/page_2'
      - $ref: '#/components/parameters/count_2'
      - $ref: '#/components/parameters/sort_by'
      - $ref: '#/components/parameters/sort_order'
      security:
      - basicAuth: []
    post:
      tags:
      - Medication
      summary: Create a new medication for a specific client
      parameters:
      - name: client_id
        in: path
        required: true
        description: Client ID to save the medications
        schema:
          type: integer
      requestBody:
        $ref: '#/components/requestBodies/CreateMedication'
      responses:
        '201':
          $ref: '#/components/responses/Medication'
        '400':
          $ref: '#/components/responses/InvalidRequest_2'
        '401':
          $ref: '#/components/responses/AuthChallenge_2'
        '409':
          $ref: '#/components/responses/ValidationError'
      security:
      - basicAuth: []
    servers:
    - url: https://homecare.alayacare.ca/ext/api/v3/clinical
  /client/by_id/{external_client_id}/medications:
    get:
      tags:
      - Medication
      summary: Fetch a medication by external client id
      operationId: get_medication
      responses:
        '200':
          $ref: '#/components/responses/MedicationList'
        '400':
          $ref: '#/components/responses/InvalidRequest_2'
        '401':
          $ref: '#/components/responses/AuthChallenge_2'
      parameters:
      - name: external_client_id
        schema:
          type: integer
        in: path
        required: true
        description: External client ID to fetch the medications from
      - $ref: '#/components/parameters/include'
      - $ref: '#/components/parameters/medications'
      - $ref: '#/components/parameters/medication_ids'
      - $ref: '#/components/parameters/exclude_medication_ids'
      - $ref: '#/components/parameters/status'
      - $ref: '#/components/parameters/frequency_setting'
      - $ref: '#/components/parameters/administration_type'
      - $ref: '#/components/parameters/discrepancy_type'
      - $ref: '#/components/parameters/start_date'
      - $ref: '#/components/parameters/end_date'
      - $ref: '#/components/parameters/is_archived'
      - $ref: '#/components/parameters/is_high_alert'
      - $ref: '#/components/parameters/is_narcotic'
      - $ref: '#/components/parameters/page_2'
      - $ref: '#/components/parameters/count_2'
      - $ref: '#/components/parameters/sort_by'
      - $ref: '#/components/parameters/sort_order'
      security:
      - basicAuth: []
    post:
      tags:
      - Medication
      summary: Create a new medication for a specific client
      parameters:
      - name: external_client_id
        schema:
          type: integer
        in: path
        required: true
        description: Client external ID to save the medications
      requestBody:
        $ref: '#/components/requestBodies/CreateMedication'
      responses:
        '201':
          $ref: '#/components/responses/Medication'
        '400':
          $ref: '#/components/responses/InvalidRequest_2'
        '401':
          $ref: '#/components/responses/AuthChallenge_2'
        '409':
          $ref: '#/components/responses/ValidationError'
      security:
      - basicAuth: []
    servers:
    - url: https://homecare.alayacare.ca/ext/api/v3/clinical
  /medications/{medication_id}/change_status/{new_status}:
    post:
      tags:
      - Medication
      summary: Update a medication status
      operationId: update_status
      responses:
        '204':
          description: Medication status updated successfully
        '400':
          $ref: '#/components/responses/InvalidRequest_2'
        '401':
          $ref: '#/components/responses/AuthChallenge_2'
        '409':
          $ref: '#/components/responses/ValidationError'
      parameters:
      - name: medication_id
        schema:
          type: integer
        in: path
        required: true
        description: Medication id
      - name: new_status
        schema:
          type: string
        in: path
        required: true
        description: New medication status
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                reason:
                  type: string
                edited_by:
                  type: string
                edited_at:
                  type: string
                archive:
                  type: boolean
                  default: false
                is_discontinue_replacing_end_date:
                  type: boolean
                  default: false
      security:
      - basicAuth: []
    servers:
    - url: https://homecare.alayacare.ca/ext/api/v3/clinical
components:
  schemas:
    ErrorResponse:
      description: Error response
      type: object
      properties:
        code:
          type: integer
          description: Response code
        message:
          type: string
          description: Detailed error message
      required:
      - code
      - message
    DiscrepancyStatus:
      type:
      - string
      - 'null'
      description: The status of the discrepancy.
      enum:
      - continue
      - discharge
      - hold
      example: continue
    InformationSource:
      type: string
      description: The information source for the medication.
      enum:
      - client
      - family_caregiver
      - rx_vials
      - blister_packs
      - physician_rx
      - physician_samples
      - pharmacist_list
      - referral_source
      - staff_nurse
      - other
      example: staff_nurse
    MedicationList:
      allOf:
      - $ref: '#/components/schemas/PaginatedList'
      description: Paginated list of the medications
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/Medication'
    DosageType:
      type: string
      description: The unit used for the dosage.
      enum:
      - li
      - meq
      - sol
      - ung
      - cap
      - international_units
      - millions_of_units
      - mcg
      - mg
      - g
      - ml
      - units
      - gtt
      - tab
      - oz
      - fl_oz
      - tsp
      - tbsp
      - gal
      - pt
      - other
      example: mg
    MedicationUpdate:
      type: object
      description: Update a Medication
      required:
      - id
      - created_employee_id
      - updated_employee_id
      properties:
        administered_by_nurse:
          $ref: '#/components/schemas/AdministeredByNurse'
        administrator:
          type: string
          description: Whether a health care professional has been notified.
          example: true
        basal_rate_range:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        bolus_frequency:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        bolus_rate_range:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        comments:
          type: string
        concentration:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        created_employee_id:
          type: integer
          description: The ID of the employee that created the entity.
        delivery_mode:
          $ref: '#/components/schemas/DeliveryMode'
        delivery_mode_other:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_other`.
          example: ambulatory_pump_pca
        discrepancy:
          $ref: '#/components/schemas/Discrepancy'
        discrepancy_note:
          type: string
        discrepancy_status:
          $ref: '#/components/schemas/DiscrepancyStatus'
        external_client_id:
          type: string
          description: The external ID of the client.
          example: client_1234
        high_alert:
          type: boolean
          description: Whether the medication has been flagged as a high alert.
          example: true
        information_source:
          $ref: '#/components/schemas/InformationSource'
        max_boluses:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        special_instructions:
          type: string
          description: Special instructions if required.
        status:
          $ref: '#/components/schemas/Status'
        updated_employee_id:
          type: integer
          description: The ID of the employee that last updated the entity.
    DeliveryMode:
      type:
      - string
      - 'null'
      description: The delivery mode of the medication.
      enum:
      - ambulatory_pump_continuous
      - ambulatory_pump_intermittent
      - ambulatory_pump_pca
      - ambulatory_pump_taper
      - ambulatory_pump_other
      - iv_pump
      - iv_push
      - gravity
      example: ambulatory_pump_continuous
    Medication:
      type: object
      description: Medication details
      required:
      - administered_by_nurse
      - created_at
      - created_employee_id
      - dose
      - dosage_type
      - id
      - information_source
      - medication
      - medication_type
      - route
      - status
      - time_instruction
      - updated_at
      - updated_employee_id
      properties:
        administered_by_nurse:
          $ref: '#/components/schemas/AdministeredByNurse'
        administration_times:
          type:
          - string
          - 'null'
          description: The times that the medication should be administered.
          example: In the mornings or evenings
        administrator:
          type:
          - string
          - 'null'
          description: Whether a health care professional has been notified.
          example: true
        basal_rate_range:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        bolus_frequency:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        bolus_rate_range:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        comments:
          type:
          - string
          - 'null'
        concentration:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        created_at:
          type: string
          description: The created date using ISO 8601 date-time formatting.
          example: '2018-01-01T00:30:00+00:00'
        created_employee_id:
          type: integer
          description: The ID of the employee that created the entity.
        count_administered_today:
          type: integer
          description: The number of times today that the medication has been administered. This is only populated when specifying `with_last_administration`.
          example: 3
        delivery_mode:
          $ref: '#/components/schemas/DeliveryMode'
        delivery_mode_other:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_other`.
          example: ambulatory_pump_pca
        discrepancy:
          $ref: '#/components/schemas/Discrepancy'
        discrepancy_note:
          type:
          - string
          - 'null'
        discrepancy_status:
          $ref: '#/components/schemas/DiscrepancyStatus'
        dosage_type:
          $ref: '#/components/schemas/DosageType'
        dose:
          type: string
          description: The dosage of the medication to administer.
          example: 2
        end_date:
          type:
          - string
          - 'null'
          description: The end date of the medication using ISO 8601 date formatting.
          example: '2018-01-01'
        end_date_unknown:
          type: boolean
          description: Whether the end date is unknown.
          example: false
        episode_id:
          type:
          - integer
          - 'null'
          description: The ID of the episode.
          example: 1
        external_client_id:
          type:
          - string
          - 'null'
          description: The external ID of the client.
          example: client_1234
        high_alert:
          type: boolean
          description: Whether the medication has been flagged as a high alert.
          example: true
        id:
          type: string
          format: uuid
          description: The ID of the medication.
          example: 445e1b60-7287-47fb-ae00-2ca35fb4d58e
        information_source:
          $ref: '#/components/schemas/InformationSource'
        last_administered_at:
          type:
          - string
          - 'null'
          description: The last administration date using ISO 8601 date-time formatting. This is only populated when specifying `with_last_administration`.
          example: '2018-01-01T00:30:00+00:00'
        max_boluses:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        medication:
          type: string
          description: The medication name.
          example: Ibuprofen
        medication_type:
          $ref: '#/components/schemas/Type'
        ordering_physician:
          type:
          - string
          - 'null'
        client_id:
          type: integer
          description: The ID of the client.
        pca_special_instructions:
          type:
          - string
          - 'null'
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        route:
          $ref: '#/components/schemas/Route'
        special_instructions:
          type:
          - string
          - 'null'
          description: Special instructions if required.
        start_date:
          type:
          - string
          - 'null'
          description: The start date of the medication using ISO 8601 date formatting.
          example: '2018-01-01'
        start_date_unknown:
          type:
          - boolean
          - 'null'
          description: Whether the start date is unknown.
          example: false
        status:
          $ref: '#/components/schemas/Status'
        time_instruction:
          $ref: '#/components/schemas/TimeInstruction'
        updated_at:
          type: string
          description: The last updated date using ISO 8601 date-time formatting.
          example: '2018-01-01T00:30:00+00:00'
        updated_employee_id:
          type: integer
          description: The ID of the employee that last updated the entity.
    AdministeredByNurse:
      type: string
      description: Whether the medication is administered by a nurse or whether it is self-administered.
      enum:
      - assisted
      - not_assisted
      example: assisted
    Route:
      type: string
      description: The route that the medication is administered.
      enum:
      - po_oral
      - im_intramuscular
      - sq_subcutaneous
      - iv_intraveneous
      - bu_buccal
      - ep_epidural
      - ex_external
      - id_intradermal
      - in_inhalation
      - na_nasal
      - op_ophthalmic
      - ot_optic
      - re_rectal
      - sl_sublingual
      - transdermal
      - ur_urethral
      - v_vaginal
      - topical
      - reg_percutaneous_end_gastro_tube
      - it_intrathecal
      - au_ear
      - ad_right_ear
      - as_left_ear
      - au_both_ears
      - eye_right
      - eye_left
      - eye_both
      - ngt_nasal_gastric
      - g_gastronomy_tube
      - jejunostomy_tube
      - g_j_tube
      example: po_oral
    PaginatedList:
      description: Base model of all paginated lists
      type: object
      properties:
        count:
          type: integer
          description: Number of items in the response
          example: 1
        page:
          type: integer
          description: Current page number
          example: 1
        total_pages:
          type: integer
          description: Total number of pages availbale
          example: 1
        items:
          type: array
          items:
            type: object
      required:
      - count
      - page
      - total_pages
      - items
    Type:
      type: string
      description: The medication type.
      enum:
      - prescriptions
      - over_the_counter
      - supplements
      - herbals
      - patches
      - inhalers
      - eye_drops
      - ointments
      - physician_samples
      - chelation
      - nutriceuticals
      - other
      example: prescriptions
    CreateSuccess:
      type: object
      description: Success returned from the API when creating or updating an entity.
      properties:
        id:
          type: string
          description: The entity ID.
          example: 70ad613a-376c-4389-bb45-78374dddd03e
        type:
          type: string
          description: The clinical document type.
          example: medication
        uri:
          type: string
          description: The entity URI.
          example: /medication/70ad613a-376c-4389-bb45-78374dddd03e
    TimeInstruction:
      type: array
      description: A list of time instructions for the medication administration.
      items:
        type: string
        enum:
        - daily
        - qam_once_a_day_am
        - qhs_once_a_day_bedtime
        - bid_twice_a_day
        - tid_three_times_a_day
        - qid_four_times_a_day
        - ac_before_meals
        - pc_after_meals
        - prn_as_required
        - other_use_note
        - q1h
        - q2h
        - q3h
        - q4h
        - q6h
        - q8h
        - q12h
        - q24h
        - q72h
        example: daily
    MedicationCreate:
      allOf:
      - $ref: '#/components/schemas/MedicationUpdate'
      type: object
      description: Create a Medication
      required:
      - administered_by_nurse
      - client_id
      - external_client_id
      - dose
      - dosage_type
      - information_source
      - medication
      - medication_type
      - route
      - status
      - time_instruction
      - created_employee_id
      - updated_employee_id
      properties:
        administration_times:
          type: string
          description: The times that the medication should be administered.
          example: In the mornings or evenings
        dosage_type:
          $ref: '#/components/schemas/DosageType'
        dose:
          type: string
          description: The dosage of the medication to administer.
          example: '2'
        end_date:
          type: string
          description: The end date of the medication using ISO 8601 date formatting.
          example: '2018-01-01'
        end_date_unknown:
          type: boolean
          description: Whether the end date is unknown.
          example: false
        medication:
          type: string
          description: The medication name.
          example: Ibuprofen
        medication_type:
          $ref: '#/components/schemas/Type'
        ordering_physician:
          type: string
        client_id:
          type: integer
          description: The ID of the client.
          example: 1234
        external_client_id:
          type: string
          description: The external ID of the client.
          example: client_1234
        pca_special_instructions:
          type: string
          description: Set only if `delivery_mode` is  `ambulatory_pump_pca`.
        route:
          $ref: '#/components/schemas/Route'
        start_date:
          type: string
          description: The start date of the medication using ISO 8601 date formatting.
          example: '2018-01-01'
        start_date_unknown:
          type: boolean
          description: Whether the start date is unknown.
          example: false
        time_instruction:
          $ref: '#/components/schemas/TimeInstruction'
    Status:
      type: string
      description: The medication status.
      enum:
      - active
      - on_hold
      - completed
      - discontinued
      example: active
    Discrepancy:
      type:
      - string
      - 'null'
      description: The discrepancy code.
      enum:
      - none
      - dose_different
      - route_different
      - frequency_different
      - medication_not_currently_prescribed
      - client_no_longer_taking_medication
      - otc_not_taken_as_prescribed
      - allergy_to_prescribed_medication
      - duplicate_of_medication
      - drug_interaction
      - formulation_incorrect_or_omitted
      - expired_medication
      - other
      example: dose_different
    MedicationList_2:
      properties:
        items:
          $ref: '#/components/schemas/Medication_2'
        count:
          type: integer
        items_per_page:
          type: integer
        page:
          type: integer
        total_pages:
          type: integer
    Medication_2:
      type: object
      allOf:
      - type: object
        properties:
          name:
            type: string
          brand_name:
            type: string
          status:
            type: string
          code:
            type: string
          ingredient_strength:
            type: string
            example: '350'
          ingredient_strength_unit:
            type: string
            example: mg
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_unit_setting?is_ingredient_strength=true"
          dosage:
            type: string
            example: '350'
          dosage_unit:
            type: string
            example: mg
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_unit_setting?is_dosage_quantity=true"
          dosage_form:
            type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_unit_setting?is_dosage_form=true"
          drug_info_number:
            type: string
          drug_family:
            type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_drug_family_setting"
          route:
            type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_medication_route_setting"
          administration_type:
            type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_administration_type_setting
          prn_reason:
            type: string
            description: Its only accepted when prn_as_needed is true
          prn_as_needed:
            type: boolean
          purpose:
            type: string
          types:
            type: array
            items:
              type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_medication_type_setting
          website:
            type: string
          high_alert:
            type: boolean
          narcotic:
            type: boolean
          ordering_physician:
            type: string
          status_reason:
            type: string
          frequency_setting:
            type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_frequency_setting"
          start_date:
            type: string
            description: 'Format: YYYY-MM-DD'
          start_time:
            type: string
            description: 'Format: HH:mm:ss'
          end_date:
            type: string
            description: 'Format: YYYY-MM-DD'
          end_time:
            type: string
            description: 'Format: HH:mm:ss'
          start_date_unknown:
            type: boolean
            default: false
          end_date_unknown:
            type: boolean
            default: false
          administration_instructions:
            type: string
          timing_notes:
            type: string
          administration_site_details:
            type: array
            items:
              type: string
            description: Options are the response of GET "/medication_settings/{branch_id}/medication_administration_site_details_setting"
          healthcare_professional_notified:
            type: string
          needs_education:
            type: boolean
          frequency:
            type: integer
            example: 2
          frequency_max:
            type: integer
          period:
            type: integer
            example: 1
          period_max:
            type: integer
          period_unit:
            type: string
          duration:
            type: integer
          duration_unit:
            type: string
          timings:
            type: array
            items:
              type: string
          weekdays:
            type: array
            items:
              type: string
            example: MO, TU, WE, TH, FR, SA, SU
          count:
            type: integer
          time_of_day:
            type: string
            description: 'Options are '
          days_of_month:
            type: array
            items:
              type: string
            description: Options are from 01 to 31
          when:
            type: string
          strict:
            type: boolean
          create_user_id:
            type: integer
          update_user_id:
            type: integer
          created_at:
            type: string
          updated_at:
            type: string
      - type: object
        properties:
          delivery_mode:
            type: string
            description: Required for infusion routes.
          concentration:
            type: number
            format: float
          concentration_unit:
            type: string
          infusion_fluid:
            type: string
          ongoing:
            type: boolean
          infusion_duration:
            type: integer
          infusion_duration_unit:
            type: string
          infusion_volume:
            type: number
            format: float
          infusion_volume_unit:
            type: string
          infusion_rate:
            type: number
            format: float
          infusion_rate_unit:
            type: string
          is_simplified_infusion:
            type: boolean
            description: Required for infusion routes.
          pre_infusion_flush_fluid:
            type: string
          pre_infusion_flush_volume:
            type: number
            format: float
          pre_infusion_flush_volume_max:
            type: number
            format: float
          pre_infusion_flush_volume_unit:
            type: string
          post_infusion_flush_fluid:
            type: string
          post_infusion_flush_volume:
            type: number
            format: float
          post_infusion_flush_volume_max:
            type: number
            format: float
          post_infusion_flush_volume_unit:
            type: string
          basal_rate:
            type: number
            format: float
          basal_rate_max:
            type: number
            format: float
          basal_rate_unit:
            type: str

# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/alayacare/refs/heads/main/openapi/alayacare-medication-api-openapi.yml