AlayaCare Latest Vitals API

The Latest Vitals API from AlayaCare — 2 operation(s) for latest vitals.

OpenAPI Specification

alayacare-latest-vitals-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: 1.0.19-oas3
  title: AlayaCare Accounting Accounts Latest Vitals API
  description: '**AlayaCare IDs:**

    The following terms are used to reference IDs that identify resources in AlayaCare:

    - id

    - visit_id

    - premium_id

    - visit_premium_id

    - employee_id

    - cost_centre_id

    - client_id


    **External IDs**

    The following terms are used to reference IDs that identify resources systems external to AlayaCare:

    - employee_external_id

    - client_external_id


    External IDs are required to be unique.

    No other assumptions are made regarding their format they are treated as strings.

    '
servers:
- url: https://example.alayacare.com/ext/api/v2/accounting
security:
- basic_auth: []
tags:
- name: Latest Vitals
paths:
  /vitals/client/{client_id}/latest:
    parameters:
    - description: Client ID
      name: client_id
      in: path
      required: true
      type: integer
    get:
      tags:
      - Latest Vitals
      summary: Get a list of the latest vital recordings by the client's AlayaCare ID
      parameters:
      - $ref: '#/parameters/page'
      - $ref: '#/parameters/count'
      responses:
        200:
          description: A list of vitals
          schema:
            $ref: '#/definitions/VitalLatestList'
        401:
          $ref: '#/responses/AuthChallenge'
        400:
          $ref: '#/responses/InvalidRequest'
  /vitals/client/by_id/{external_client_id}/latest:
    parameters:
    - description: External client ID
      name: external_client_id
      in: path
      required: true
      type: string
    get:
      tags:
      - Latest Vitals
      summary: Get a list of the latest vital recordings by the client's external ID
      parameters:
      - $ref: '#/parameters/page'
      - $ref: '#/parameters/count'
      responses:
        200:
          description: A list of vitals
          schema:
            $ref: '#/definitions/VitalLatestList'
        401:
          $ref: '#/responses/AuthChallenge'
        400:
          $ref: '#/responses/InvalidRequest'
components:
  securitySchemes:
    basic_auth:
      type: http
      description: Basic HTTP auth over https
      scheme: basic
definitions:
  VitalLatestList:
    type: object
    allOf:
    - $ref: '#/definitions/PaginatedList'
    description: A list of the latest vital for each type.
    properties:
      items:
        type: object
        description: The vital details for each vital type.
        properties:
          presure_max:
            $ref: '#/definitions/VitalLatest'
  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
  VitalUnits:
    type: string
    description: The unit used to record the vital.
    enum:
    - c
    - f
    - kgs
    - lb
    - bpm
    - breaths_pm
    - mmhg
    - cm
    - in
    - mmol_l
    - mg_dl
    - kg_m2
    - '%'
    example: mmhg
  VitalName:
    type: string
    description: The name identifying the vital type.
    enum:
    - blood_glucose
    - bmi
    - height
    - pulse
    - pressure_min
    - pressure_max
    - weight
    - respiratory_rate
    - spo2
    - temperature
    example: pressure_max
  ErrorResponse:
    description: Error response
    type: object
    properties:
      code:
        type: integer
        description: Response code
      message:
        type: string
        description: Detailed error message
    required:
    - code
    - message
  VitalLatest:
    type: object
    description: Latest vital details
    required:
    - name
    - group
    - date
    - value
    - unit
    properties:
      comments:
        type: string
        description: A comment.
        example: No unexpected results
      date:
        type: string
        description: The created date using ISO 8601 date-time formatting.
        example: '2018-01-01T00:30:00+00:00'
      group:
        type: string
        description: The vital group. This is used to group together separate vitals that are measured together like low and high blood pressure. If no group, this should default to `name`.
        example: blood_pressure
      name:
        $ref: '#/definitions/VitalName'
      session_guid:
        type: string
        description: A unique identifier to group vitals recorded together within the same `group`.
        example: 97a3e055-2fd1-469d-a058-b173499e37ff
      source:
        type: string
        description: A description of how the vital was recorded. This may be set if the client recorded the vital themselves.
        example: default
      threshold_level:
        type: string
        description: The level of threshold that was reached. This will be `null` if no threshold was reached.
        enum:
        - low
        - medium
        - high
        example: high
      threshold_reached:
        type: string
        description: The threshold that was reached.
        enum:
        - min
        - max
        example: max
      unit:
        $ref: '#/definitions/VitalUnits'
      value:
        type: number
        description: The value of the recorded vital.
        example: 38.4
parameters:
  count:
    name: count
    default: 100
    in: query
    required: false
    type: integer
    description: Number of items per page. If not specified will default to 100.
  page:
    name: page
    default: 1
    in: query
    required: false
    type: integer
    description: Filter by page number. If not specified will default to 1.
responses:
  InvalidRequest:
    description: Invalid data.
    schema:
      $ref: '#/definitions/ErrorResponse'
    examples:
      application/json:
        code: 400
        message: Invalid request
  AuthChallenge:
    description: Authentication required.
    schema:
      $ref: '#/definitions/ErrorResponse'
    examples:
      application/json:
        code: 401
        message: Please verify your access level for this url.