AlayaCare Client Risks API

The Client Risks API from AlayaCare — 4 operation(s) for client risks.

Operations 8

GET /clients/{client_id}/risks Get a list of client risks by a client's AlayaCare ID
POST /clients/{client_id}/risks Create a client risk
PUT /clients/{client_id}/risks/{risk_id} Update client risks by a client's AlayaCare ID
DELETE /clients/{client_id}/risks/{risk_id} Remove a client's risk by a client's AlayaCare ID
GET /clients/by_id/{external_client_id}/risks Get client risks by external client ID
POST /clients/by_id/{external_client_id}/risks Create a client risk by external client ID
PUT /clients/by_id/{external_client_id}/risks/{risk_id} Update client risks by external client ID
DELETE /clients/by_id/{external_client_id}/risks/{risk_id} Remove a client's risk by external client ID

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-client-risks-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-client-risks-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.4
  title: External Clinical Client Risks API
  description: "External Clinical API\n\n**Internal IDs**\nThe following terms are used to reference IDs that identify resources in AlayaCare:\n- id\n- created_by\n- client_id\n- risk_id\n- medication_id\n- admin_id\n- vital_id\n\n**External IDs**\nThe following terms are used to reference IDs that identify resources systems external to AlayaCare:\n- external_id\n- external_client_id\n\nExternal IDs are required to be unique.\nNo other assumptions are made regarding their format they are treated as strings.\n\n**Remarks**\n- All dates must be in ISO 8601 format.\n- Required fields marked with `*` cannot be null.\n\n**Progress Notes**\n  API for creating and viewing client progress notes.\n\n**Risks**\nAPI for creating, viewing, updating, and removing client risks.\n\n**Medication**\n  API for creating, editing, and viewing medications and medication administrations.\n\n**Vitals**\n  API for creating, editing and viewing vitals.\n\nEach individual vital type is identified by a `name`. Dependent vitals are given the same `group`. Currently this is only used to link names `pressure_min` and `pressure_max` with the group `blood_pressure`, as these values should be recorded together.\n\nThe metadata of the vitals includes the configuration and thresholds, the default and available units, and any other required options for each vital type.\n"
servers:
- url: https://homecare.alayacare.ca/ext/api/v2/clinical
tags:
- name: Client Risks
paths:
  /clients/{client_id}/risks:
    parameters:
    - name: client_id
      description: The AlayaCare ID of a client
      in: path
      required: true
      schema:
        type: integer
    get:
      tags:
      - Client Risks
      summary: Get a list of client risks by a client's AlayaCare ID
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/count'
      responses:
        200:
          description: A list of client risks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskList'
        401:
          $ref: '#/components/responses/AuthChallenge'
        404:
          $ref: '#/components/responses/ClientNotFound'
    post:
      tags:
      - Client Risks
      summary: Create a client risk
      description: ''
      responses:
        201:
          description: A client risk
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskDetails'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/ClientRiskInvalidRequest'
        404:
          $ref: '#/components/responses/ClientNotFound'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RiskCreate'
        required: true
  /clients/{client_id}/risks/{risk_id}:
    parameters:
    - name: client_id
      description: The AlayaCare ID of a client
      in: path
      required: true
      schema:
        type: integer
    - name: risk_id
      description: ID of the client risk
      in: path
      required: true
      schema:
        type: string
    put:
      tags:
      - Client Risks
      summary: Update client risks by a client's AlayaCare ID
      responses:
        200:
          description: Client's risk updated successfuly
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskUpdate'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/ClientRiskInvalidRequest'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RiskUpdate'
        description: Client risk data for update in JSON format.
        required: true
    delete:
      tags:
      - Client Risks
      summary: Remove a client's risk by a client's AlayaCare ID
      responses:
        204:
          description: Risk successfully deleted
        401:
          $ref: '#/components/responses/AuthChallenge'
        404:
          $ref: '#/components/responses/ClientRiskNotFound'
  /clients/by_id/{external_client_id}/risks:
    parameters:
    - name: external_client_id
      description: The external ID of a client
      in: path
      required: true
      schema:
        type: string
    get:
      tags:
      - Client Risks
      summary: Get client risks by external client ID
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/count'
      responses:
        200:
          description: A list of a client's risks
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskList'
        401:
          $ref: '#/components/responses/AuthChallenge'
        404:
          $ref: '#/components/responses/ClientNotFound'
    post:
      tags:
      - Client Risks
      summary: Create a client risk by external client ID
      description: ''
      responses:
        201:
          description: A client risk
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskDetails'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/ClientRiskInvalidRequest'
        404:
          $ref: '#/components/responses/ClientNotFound'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RiskCreate'
        required: true
  /clients/by_id/{external_client_id}/risks/{risk_id}:
    parameters:
    - name: external_client_id
      description: External ID of a client
      in: path
      required: true
      schema:
        type: integer
    - name: risk_id
      description: ID of the client risk
      in: path
      required: true
      schema:
        type: string
    put:
      tags:
      - Client Risks
      summary: Update client risks by external client ID
      responses:
        200:
          description: Client's risk updated successfuly
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RiskUpdate'
        401:
          $ref: '#/components/responses/AuthChallenge'
        400:
          $ref: '#/components/responses/ClientRiskInvalidRequest'
        404:
          $ref: '#/components/responses/ClientNotFound'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RiskUpdate'
        description: Client risk data for update in JSON format.
        required: true
    delete:
      tags:
      - Client Risks
      summary: Remove a client's risk by external client ID
      responses:
        204:
          description: Risk successfully deleted
        401:
          $ref: '#/components/responses/AuthChallenge'
        404:
          $ref: '#/components/responses/ClientRiskNotFound'
components:
  schemas:
    RiskSeverity:
      description: Risk severity - 0 to 5
      type: integer
      example: 3
      enum:
      - 0
      - 1
      - 2
      - 3
      - 4
      - 5
    ErrorResponse:
      description: Error response
      type: object
      properties:
        code:
          type: integer
          description: Response code
        message:
          type: string
          description: Detailed error message
      required:
      - code
      - message
    RiskDetails:
      description: Details of the client risk
      type: object
      properties:
        risk_id:
          type: string
          description: Unique ID of the client risk
          example: abc-123
        client_id:
          type: integer
          description: AlayaCare ID of the client
          example: 1957
        external_client_id:
          type: string
          description: External client ID
          example: sor_id_1
        category:
          type: string
          description: Risk category (case-sensitive)
          example: Allergy
          enum:
          - Allergy
          - Environment
          - Infectious Diseases
          - Funder
          - General
          - Pets
        risk:
          type: string
          description: Free text description of the client risk
          example: Allergic to penicillin
        severity:
          $ref: '#/components/schemas/RiskSeverity'
        created_by:
          type: object
          description: User who created the client risk entry
          properties:
            name:
              type: string
              description: Name of the employee who created the risk
              example: John Smith
        created_at:
          type: string
          format: date-time
          description: Date client risk was created (ISO 8601) - Time saved at `T00:00:00+00:00`
          example: '2017-07-08T00:00:00+00:00'
    RiskUpdate:
      description: Client risk data
      type: object
      properties:
        category:
          $ref: '#/components/schemas/RiskCategory'
        risk:
          type: string
          description: Free text description of the client risk
          example: Allergic to penicillin
        severity:
          $ref: '#/components/schemas/RiskSeverity'
    RiskCreate:
      description: Client risk data
      type: object
      required:
      - category
      - risk
      - severity
      properties:
        category:
          $ref: '#/components/schemas/RiskCategory'
        risk:
          type: string
          description: Free text description of the client risk
          example: Allergic to penicillin
          minLength: 1
        severity:
          $ref: '#/components/schemas/RiskSeverity'
    RiskCategory:
      description: Risk category (case-sensitive)
      type: string
      example: Allergy
      enum:
      - Allergy
      - Environment
      - Infectious Diseases
      - Funder
      - General
      - Pets
    RiskList:
      description: A list of client risks
      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 available
          example: 1
        items:
          type: array
          items:
            $ref: '#/components/schemas/RiskDetails'
  responses:
    ClientRiskInvalidRequest:
      description: Invalid data submitted for client risk creation
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 400
            message: Invalid risk category
    AuthChallenge:
      description: Authentication required.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 401
            message: Please verify your access level for this url.
    ClientRiskNotFound:
      description: Client risk not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 404
            message: Client risk uid not found
    ClientNotFound:
      description: Not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 404
            message: Client not found.
  parameters:
    page:
      name: page
      in: query
      required: false
      description: Filter by page number. If not specified will default to 1.
      schema:
        type: integer
        default: 1
    count:
      name: count
      in: query
      required: false
      description: Number of items per page. If not specified will default to 100.
      schema:
        type: integer
        default: 100
  securitySchemes:
    basic_auth:
      type: http
      scheme: basic
      description: Basic HTTP auth over https