AlayaCare Skills API
The Skills API from AlayaCare — 2 operation(s) for skills.
The Skills API from AlayaCare — 2 operation(s) for skills.
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-skills-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:
title: AlayaCare Skills API
version: 1.0.0
description: '**AlayaCare IDs:**
The following terms are used to reference IDs that identify resources in AlayaCare:
- employee_id
- skill_id
**External IDs**
The following terms are used to reference IDs that identify resources systems external to AlayaCare:
- external_employee_id
External IDs are required to be unique.
No other assumptions are made regarding their format they are treated as strings.
**Remarks**
- All dates must be in ISO 8601 format with timezone data
**Skills Considerations**
- The skill master list and employee skills management are supported by this API
- Client specific skills are not supported by this API
'
servers:
- url: https://homecare.alayacare.ca/ext/api/v2/employees
tags:
- name: Skills
paths:
/skills:
get:
tags:
- Skills
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/count'
- $ref: '#/components/parameters/branch_id'
- $ref: '#/components/parameters/filter'
- $ref: '#/components/parameters/category_id'
summary: Get a list of skills
responses:
'200':
description: A list of skills
content:
application/json:
schema:
$ref: '#/components/schemas/SkillList'
'401':
$ref: '#/components/responses/ErrorResponseAuthentication'
post:
tags:
- Skills
summary: 'Create a skill
'
description: '- `branch_id` is optional, if omitted the skill will be created in the default branch.
- `branch_id` can only be set at creation.
- Skill fields (`acquired_date`, `expired_date`, `label_1` and `label_2`) are optional depending on business needs.
'
responses:
'201':
description: An employee specific skill
content:
application/json:
schema:
$ref: '#/components/schemas/SkillDetails'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
code: 400
message: Field category_id is required
'401':
$ref: '#/components/responses/ErrorResponseAuthentication'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SkillCreate'
description: Skill definition in JSON format
required: true
/skills/{skill_id}:
parameters:
- name: skill_id
description: AlayaCare ID of the skill
in: path
required: true
schema:
type: string
get:
tags:
- Skills
summary: Get skill details using its AlayaCare Skill ID
responses:
'200':
description: Skill details
content:
application/json:
schema:
$ref: '#/components/schemas/SkillDetails'
'401':
$ref: '#/components/responses/ErrorResponseAuthentication'
'404':
$ref: '#/components/responses/ErrorResponseSkillNotFound'
put:
tags:
- Skills
summary: Modify skill details using its AlayaCare Skill ID
description: '- Changing the `branch_id` of a skill is not supported by this API. Any `branch_id` sent will be ignored.
- Skill fields sent in the payload will overwrite existing fields on the skill.
'
responses:
'200':
description: Skill updated successfuly
content:
application/json:
schema:
$ref: '#/components/schemas/SkillDetails'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
code: 400
message: Custom field name invalid.
'401':
$ref: '#/components/responses/ErrorResponseAuthentication'
'404':
$ref: '#/components/responses/ErrorResponseSkillNotFound'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SkillUpdate'
description: Object with fields to be updated
components:
schemas:
SkillDetails:
description: AlayaCare skill entity
type: object
required:
- id
- name
- category
- branch
properties:
id:
type: integer
description: Skill ID
example: 1
name:
type: string
description: Skill Name
example: Hoyer lift
category:
$ref: '#/components/schemas/SkillCategory'
branch:
$ref: '#/components/schemas/BranchSummary'
fields:
type: array
items:
allOf:
- $ref: '#/components/schemas/SkillField'
SkillCreate:
properties:
name:
type: string
description: Skill Name
example: Hoyer lift
category_id:
type: integer
description: 'Set the skill category.
'
example: 4
branch_id:
type: integer
description: 'Set skill branch. If not specified, will default to branch of the user creating the employee.
'
example: 1
fields:
type: array
items:
allOf:
- $ref: '#/components/schemas/SkillFieldCreate'
required:
- name
- category_id
ErrorResponse:
description: Error response
type: object
properties:
code:
type: integer
description: Response code
message:
type: string
description: Detailed error message
required:
- code
- message
SkillCategory:
description: Skill Category
type: object
required:
- id
- name
properties:
id:
type: integer
description: ID of the skill category
example: 1
name:
type: string
description: Name of the skill category
example: Languages
SkillUpdate:
properties:
name:
type: string
description: Skill Name
example: Hoyer lift
category_id:
type: integer
description: 'Set the skill category.
'
example: 4
fields:
type: array
items:
allOf:
- $ref: '#/components/schemas/SkillFieldCreate'
SkillFieldCreate:
description: Skill custom field attributes
type: object
required:
- name
- label
properties:
name:
type: string
description: Name of the customizable field
example: acquired_date
enum:
- acquired_date
- expired_date
- label_1
- label_2
label:
type: string
description: Label of the customizable field
example: Acquired date
BranchSummary:
description: Branch summary
type: object
properties:
id:
type: integer
description: ID of the branch
example: 1
name:
type: string
description: Name of the branch
example: Headquarters
SkillList:
allOf:
- $ref: '#/components/schemas/PaginatedList'
description: 'List of skills
'
type: object
properties:
items:
type: array
items:
allOf:
- $ref: '#/components/schemas/SkillDetails'
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
required:
- count
- page
- total_pages
- items
SkillField:
description: Skill custom field attributes
type: object
required:
- name
- type
- label
properties:
name:
type: string
description: Name of the customizable field
example: acquired_date
enum:
- acquired_date
- expired_date
- label_1
- label_2
label:
type: string
description: Label of the customizable field
example: Acquired date
type:
type: string
description: Type of the customizable field
example: Date
enum:
- date
- text
parameters:
filter:
description: Substring search on skill category and name
name: filter
in: query
required: false
schema:
type: string
branch_id:
description: Filter by branch ID
name: branch_id
in: query
required: false
schema:
type: integer
page:
description: Filter by page number.
name: page
in: query
required: false
schema:
type: integer
default: 1
category_id:
description: Filter skills by category ID, one or more using **OR**
name: category_id
in: query
required: false
schema:
type: integer
count:
description: Number of items per page.
name: count
in: query
required: false
schema:
type: integer
default: 100
responses:
ErrorResponseSkillNotFound:
description: Skill not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
code: 404
message: Skill not found.
ErrorResponseAuthentication:
description: Authorization required
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
example:
code: 401
message: Authorization required.
securitySchemes:
basic_auth:
type: http
scheme: basic
description: Basic HTTP auth over https