AlayaCare Skills API

The Skills API from AlayaCare — 2 operation(s) for skills.

Operations 4

GET /skills Get a list of skills #
POST /skills Create a skill #
GET /skills/{skill_id} Get skill details using its AlayaCare Skill ID #
PUT /skills/{skill_id} Modify skill details using its AlayaCare Skill 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:alayacare-skills-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-skills-api-openapi.yml Raw ↑
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.'
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'
      operationId: getSkills
      x-operation-id-source: derived
    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
      operationId: postSkills
      x-operation-id-source: derived
  /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'
      operationId: getSkillsBySkillId
      x-operation-id-source: derived
    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
      operationId: putSkillsBySkillId
      x-operation-id-source: derived
components:
  schemas:
    SkillList:
      allOf:
      - $ref: '#/components/schemas/PaginatedList'
      description: 'List of skills

        '
      type: object
      properties:
        items:
          type: array
          items:
            allOf:
            - $ref: '#/components/schemas/SkillDetails'
    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
    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'
    ErrorResponse:
      description: Error response
      type: object
      properties:
        code:
          type: integer
          description: Response code
        message:
          type: string
          description: Detailed error message
      required:
      - code
      - message
    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
    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
    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
    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
    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
  parameters:
    filter:
      description: Substring search on skill category and name
      name: filter
      in: query
      required: false
      schema:
        type: string
    count:
      description: Number of items per page.
      name: count
      in: query
      required: false
      schema:
        type: integer
        default: 100
    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
  responses:
    ErrorResponseAuthentication:
      description: Authorization required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 401
            message: Authorization required.
    ErrorResponseSkillNotFound:
      description: Skill not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            code: 404
            message: Skill not found.
  securitySchemes:
    basic_auth:
      type: http
      scheme: basic
      description: Basic HTTP auth over https