AlayaCare Client Risks API
The Client Risks API from AlayaCare — 4 operation(s) for client risks.
The Client Risks API from AlayaCare — 4 operation(s) for client risks.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/alayacare-client-risks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 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