AlayaCare Subtasks API
The Subtasks API from AlayaCare — 3 operation(s) for subtasks.
The Subtasks API from AlayaCare — 3 operation(s) for subtasks.
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-subtasks-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: External Tasks 2.0 Subtasks API
version: 1.0.0
description: "**Internal IDs:**\nThe following terms are used to reference IDs that identify resources in AlayaCare:\n- client_id\n- comment_id\n- employee_id\n- form_id\n- subtask_id\n- task_id\n- \n**External IDs**\nExternal IDs are required to be unique.\nNo other assumptions are made regarding their form; they are treated as strings.\n\nThe following terms are used to reference IDs that identify resources in systems external to AlayaCare:\n- external_client_id\n- external_employee_id\n\n**Remarks**\n- All dates must be in ISO 8601 format.\n- Required fields marked with `*` cannot be null.\n- Currently filtering by date is timezone-naive and will assume any filters to be provided in the timezone of branch associated to the task.\n"
servers:
- url: https://homecare.alayacare.com
description: Production server
- url: https://homecare.staging.alayacare.com
description: Staging server
- url: https://homecare.uat.alayacare.com
description: UAT server
security:
- BasicAuth: []
tags:
- name: Subtasks
paths:
/tasks/{task_id}/sub_tasks:
get:
summary: Retrieve sub tasks
description: Retrieve sub tasks for a task.
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/count'
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedSubTaskList'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
post:
summary: Add a sub task
description: Add a sub task to a task.
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
description: Sub Task
required: true
responses:
'201':
description: created
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
/tasks/{task_id}/sub_tasks/{subtask_id}:
delete:
summary: Delete a sub task
description: Delete a sub task for a task.
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/subtask_id'
responses:
'200':
description: success
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
get:
summary: Retrieve a single sub task
description: Retrieve a single sub task for a task.
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/subtask_id'
responses:
'204':
description: success, no content
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
patch:
summary: Patch a sub task
description: 'Patch a sub task, only replacing those fields that are specified and retaining
the existing value for fields that are not specified.'
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/subtask_id'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SubTaskPatchRequest'
description: Fields to patch
required: true
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
put:
summary: Update a sub task
description: Update a sub task for a task.
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/subtask_id'
- $ref: '#/components/parameters/update_contexts'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
description: Sub Task
required: true
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
/tasks/{task_id}/sub_tasks/{subtask_id}/status/{status}:
patch:
summary: Change the status of a sub task
description: Change the status of a sub task
tags:
- Subtasks
parameters:
- $ref: '#/components/parameters/task_id'
- $ref: '#/components/parameters/subtask_id'
- $ref: '#/components/parameters/status_in_path'
responses:
'200':
description: success
content:
application/json:
schema:
$ref: '#/components/schemas/SubTask'
'400':
$ref: '#/components/responses/400BadRequest'
'401':
$ref: '#/components/responses/401Unauthorized'
'403':
$ref: '#/components/responses/403Forbidden'
'404':
$ref: '#/components/responses/404NotFound'
components:
responses:
404NotFound:
description: Entity not found
403Forbidden:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
headers: {}
401Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
headers: {}
400BadRequest:
description: Bad request
schemas:
ErrorResponse:
title: Error response
type: object
properties:
code:
type: string
message:
type: string
request_id:
type: string
errors:
type: array
items:
type: object
properties:
message:
type: string
code:
type: string
required:
- message
required:
- message
- request_id
Person:
type: object
description: Encapsulates the bare details of a person
properties:
id:
type: integer
nullable: false
description: Primary ID (Employee ID, User ID etc.) of person
external_id:
type: string
nullable: true
description: External ID of person
guid:
type: integer
nullable: true
description: GUID
profile_id:
type: integer
nullable: true
description: Profile ID
last_name:
type: string
description: Last Name/Family Name
first_name:
type: string
description: First Name
full_name:
type: string
description: Full Name
status:
type: string
description: Status of person
deep_link:
type: string
description: Deep link to person
profile_photo_url:
type: string
description: URL to profile photo
SubTask:
type: object
description: 'Tasks can have 0 or more sub tasks. Progress on a parent task is tracked by
reviewing the status of sub tasks.'
title: Sub Task
properties:
subtask_id:
type: integer
example: 12
due_at:
nullable: true
type: string
format: datetime
example: '2023-02-27T10:00:00.000Z'
description: When the sub task is due.
name:
type: string
example: Update chart with results
nullable: false
description: Free-form entered by user
details:
type: string
example: '- Validate results.
- Update most recent chart with new results.'
created_at:
type: string
format: datetime
example: '2023-02-02T19:00:45.000Z'
description: When the sub task was created
created_by:
$ref: '#/components/schemas/Person'
description: Who created the sub task.
updated_at:
type: string
format: datetime
example: '2023-02-02T19:00:58.000Z'
description: When the task was most recently updated.
updated_by:
$ref: '#/components/schemas/Person'
description: Who updated the sub task.
status:
$ref: '#/components/schemas/Status'
nullable: false
description: Status of the Sub Task
contexts:
type: array
items:
$ref: '#/components/schemas/TaskContext'
description: Applicable contexts.
TaskContext:
type: object
description: Context to which a task applies.
title: Task Context
properties:
type:
type: string
example: api.patients.client
description: 'Type of the context. Domain services define their contexts and provide
instructions on how to connect to them through the component registry.'
nullable: false
primary_id:
type: string
example: 27
description: Identifies the referenced context.
nullable: false
display_name:
type: string
example: John Doe
description: Display name of the context.
nullable: true
deep_link:
type: string
example: /#/employees/2s/overview
description: 'Deep link to the context. Domain services define their deep links and
provide instructions on how to connect to them through the component
registry.'
nullable: true
is_visible:
type: boolean
example: true
description: 'Indicates whether the context is visible. If set to False, the context
will not be displayed in the frontend.'
props:
type: object
additionalProperties: true
description: 'Contents are context-dependent. Has the most important fields from a context.
For examples, a Client context may contain `first_name` and `last_name`.
Depending on the context type, this field may be two-way.'
example:
name.last: Doe
name.first: John
SubTaskPatchRequest:
type: object
description: 'Request body for patching a sub task. The request contains one or more fields to update in a sub task. The fields are optional, but at least one field must be provided.
It should also be noted that there is a difference between providing a value of `null` for a field and not providing a field. When a field is not in the payload, it is ignored and the sub task will retain its current value. If a field is set to `null`, the value will be blanked out in the sub task object.'
title: Sub Task Patch Request
properties:
name:
type: string
example: Check vitals for Mrs. Doe
nullable: false
description: Free-form name of the task as entered by the user.
due_at:
type: string
format: date-time
example: '2023-01-31T22:00:00.000Z'
nullable: true
description: When the task is due.
status:
$ref: '#/components/schemas/Status'
details:
type: string
example: 'Check Blood Pressure and Heart Rate.
Recent readings were out of range.
If readings are out of range again, alert nursing staff.'
description: Free text entered by user to provide more detail.
contexts:
type: array
items:
$ref: '#/components/schemas/TaskContext'
description: Applicable contexts.
Status:
type: integer
oneOf:
- title: Open
const: 1
- title: In Progress
const: 3
- title: Completed
const: 5
- title: Closed
const: 7
example: 1
description: Status of a Task or Sub Task
PaginatedSubTaskList:
$reg: '#/components/schemas/PaginatedResults'
properties:
items:
$ref: '#/components/schemas/SubTask'
parameters:
task_id:
name: task_id
in: path
required: true
schema:
type: integer
description: The task identifier
page:
name: page
in: query
required: false
schema:
type: integer
minimum: 1
example: 1
status_in_path:
name: status
in: path
required: true
schema:
$ref: '#/components/schemas/Status'
subtask_id:
name: subtask_id
in: path
required: true
schema:
type: integer
description: The sub task identifier
update_contexts:
name: update_contexts
in: query
required: false
schema:
type: boolean
description: Whether to update contexts from the payload
count:
name: count
in: query
schema:
type: integer
maxLength: 100
minLength: 1
description: Number of items per page to return
example: 50