Tasks
API endpoints for tasks
List tasks
GET /api/v1/tasks
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
bucket | query | string (backlog, next_week, new, shaping, todo, in_progress, in_review, done, cancelled) | No | — |
inboxTriage | query | string (this_week, next_week, this_month) | No | — |
projectId | query | string | No | — |
categoryId | query | string | No | — |
containerId | query | string | No | — |
organisationId | query | string | No | — |
assigneeId | query | string | No | — |
routineBlockId | query | string | No | — |
doDateEq | query | string | No | YYYY-MM-DD |
doDateGte | query | string | No | YYYY-MM-DD |
doDateLte | query | string | No | YYYY-MM-DD |
dueDateEq | query | string | No | YYYY-MM-DD |
dueDateGte | query | string | No | YYYY-MM-DD |
dueDateLte | query | string | No | YYYY-MM-DD |
doEndDateEq | query | string | No | YYYY-MM-DD |
doEndDateGte | query | string | No | YYYY-MM-DD |
doEndDateLte | query | string | No | YYYY-MM-DD |
scheduledAtEq | query | number | No | — |
scheduledAtGte | query | number | No | — |
scheduledAtLte | query | number | No | — |
limit | query | number | No | — |
offset | query | number | No | — |
Example request
curl -X GET \
"https://api.usemonoid.com/api/v1/tasks?bucket=<bucket>&inboxTriage=<inboxTriage>&projectId=<projectId>&categoryId=<categoryId>&containerId=<containerId>&organisationId=<organisationId>&assigneeId=<assigneeId>&routineBlockId=<routineBlockId>&doDateEq=<doDateEq>&doDateGte=<doDateGte>&doDateLte=<doDateLte>&dueDateEq=<dueDateEq>&dueDateGte=<dueDateGte>&dueDateLte=<dueDateLte>&doEndDateEq=<doEndDateEq>&doEndDateGte=<doEndDateGte>&doEndDateLte=<doEndDateLte>&scheduledAtEq=<scheduledAtEq>&scheduledAtGte=<scheduledAtGte>&scheduledAtLte=<scheduledAtLte>&limit=<limit>&offset=<offset>" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"Example response
Status: 200
{
"data": [
{
"_id": "string",
"userId": "string",
"title": "string",
"notes": "string",
"doneAt": 0,
"projectId": "string",
"categoryId": "string",
"containerId": "string",
"bucket": "backlog",
"inboxTriage": "this_week",
"routineBlockId": "string",
"assigneeId": "string",
"doDate": "string",
"doEndDate": "string",
"dueDate": "string",
"scheduledAt": 0,
"agentIntegrationId": "string",
"agentDispatchMode": "immediate",
"categoryName": "string",
"projectTitle": "string",
"containerName": "string",
"assigneeName": "string",
"category": {
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
},
"labels": [
{}
],
"links": [
{}
],
"relatedTasks": [
{}
],
"updatedAt": 0
}
]
}Other statuses: 401, 403.
Response body type
{ data: Task[] }
Create task
POST /api/v1/tasks
Example request
curl -X POST \
"https://api.usemonoid.com/api/v1/tasks" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"
-d '{"title":"string","notes":"string","doneAt":0,"projectId":"string","categoryId":"string","bucket":"backlog","inboxTriage":"this_week","routineBlockId":"string","assigneeId":"string","doDate":"string","doEndDate":"string","dueDate":"string","scheduledAt":0,"agentIntegrationId":"string","agentDispatchMode":"immediate"}'Example response
Status: 201
{
"data": {
"_id": "string",
"userId": "string",
"title": "string",
"notes": "string",
"doneAt": 0,
"projectId": "string",
"categoryId": "string",
"containerId": "string",
"bucket": "backlog",
"inboxTriage": "this_week",
"routineBlockId": "string",
"assigneeId": "string",
"doDate": "string",
"doEndDate": "string",
"dueDate": "string",
"scheduledAt": 0,
"agentIntegrationId": "string",
"agentDispatchMode": "immediate",
"categoryName": "string",
"projectTitle": "string",
"containerName": "string",
"assigneeName": "string",
"category": {
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
},
"labels": [
{
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
}
],
"links": [
{
"_id": "string",
"taskId": "string",
"provider": "linear",
"externalId": "string",
"externalName": "string",
"url": "string",
"githubResourceType": "string"
}
],
"relatedTasks": [
{
"_id": "string",
"type": "parent",
"taskIdFrom": "string",
"taskIdTo": "string",
"otherTaskId": "string",
"otherTaskTitle": "string"
}
],
"updatedAt": 0
}
}Other statuses: 400, 401, 402, 403, 500.
Response body type
{ data: Task }
Get task by id
GET /api/v1/tasks/{id}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Path parameter. |
includeLinks | query | boolean | No | — |
linkedProvider | query | string (linear, notion, github, jira, wyrdos) | No | — |
includeCategory | query | boolean | No | — |
includeLabels | query | boolean | No | — |
includeRelatedTasks | query | boolean | No | Include task relationships (relatedTasks) in response. |
includeNotes | query | boolean | No | Include task notes in response. Defaults to true; set false to omit notes. |
Example request
curl -X GET \
"https://api.usemonoid.com/api/v1/tasks/<id>?includeLinks=<includeLinks>&linkedProvider=<linkedProvider>&includeCategory=<includeCategory>&includeLabels=<includeLabels>&includeRelatedTasks=<includeRelatedTasks>&includeNotes=<includeNotes>" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"Example response
Status: 200
{
"data": {
"_id": "string",
"userId": "string",
"title": "string",
"notes": "string",
"doneAt": 0,
"projectId": "string",
"categoryId": "string",
"containerId": "string",
"bucket": "backlog",
"inboxTriage": "this_week",
"routineBlockId": "string",
"assigneeId": "string",
"doDate": "string",
"doEndDate": "string",
"dueDate": "string",
"scheduledAt": 0,
"agentIntegrationId": "string",
"agentDispatchMode": "immediate",
"categoryName": "string",
"projectTitle": "string",
"containerName": "string",
"assigneeName": "string",
"category": {
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
},
"labels": [
{
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
}
],
"links": [
{
"_id": "string",
"taskId": "string",
"provider": "linear",
"externalId": "string",
"externalName": "string",
"url": "string",
"githubResourceType": "string"
}
],
"relatedTasks": [
{
"_id": "string",
"type": "parent",
"taskIdFrom": "string",
"taskIdTo": "string",
"otherTaskId": "string",
"otherTaskTitle": "string"
}
],
"updatedAt": 0
}
}Other statuses: 401, 403, 404.
Response body type
{ data: Task }
Update task
PATCH /api/v1/tasks/{id}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Path parameter. |
Example request
curl -X PATCH \
"https://api.usemonoid.com/api/v1/tasks/<id>" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"
-d '{"title":"string","notes":"string","doneAt":0,"projectId":"string","categoryId":"string","containerId":"string","bucket":"backlog","inboxTriage":"this_week","routineBlockId":"string","assigneeId":"string","doDate":"string","doEndDate":"string","dueDate":"string","scheduledAt":0,"agentIntegrationId":"string","agentDispatchMode":"immediate"}'Example response
Status: 200
{
"data": {
"_id": "string",
"userId": "string",
"title": "string",
"notes": "string",
"doneAt": 0,
"projectId": "string",
"categoryId": "string",
"containerId": "string",
"bucket": "backlog",
"inboxTriage": "this_week",
"routineBlockId": "string",
"assigneeId": "string",
"doDate": "string",
"doEndDate": "string",
"dueDate": "string",
"scheduledAt": 0,
"agentIntegrationId": "string",
"agentDispatchMode": "immediate",
"categoryName": "string",
"projectTitle": "string",
"containerName": "string",
"assigneeName": "string",
"category": {
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
},
"labels": [
{
"_id": "string",
"name": "string",
"color": "string",
"entityType": "string",
"organisationId": "string"
}
],
"links": [
{
"_id": "string",
"taskId": "string",
"provider": "linear",
"externalId": "string",
"externalName": "string",
"url": "string",
"githubResourceType": "string"
}
],
"relatedTasks": [
{
"_id": "string",
"type": "parent",
"taskIdFrom": "string",
"taskIdTo": "string",
"otherTaskId": "string",
"otherTaskTitle": "string"
}
],
"updatedAt": 0
}
}Other statuses: 400, 401, 403, 404, 500.
Response body type
{ data: Task }
Delete task
DELETE /api/v1/tasks/{id}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Path parameter. |
Example request
curl -X DELETE \
"https://api.usemonoid.com/api/v1/tasks/<id>" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"Other statuses: 401, 403, 404, 500.
Response body type
—
Add task label
POST /api/v1/tasks/{id}/labels
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Path parameter. |
Example request
curl -X POST \
"https://api.usemonoid.com/api/v1/tasks/<id>/labels" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"
-d '{"labelId":"string"}'Other statuses: 400, 401, 403, 404.
Response body type
—
Remove task label
DELETE /api/v1/tasks/{id}/labels/{labelId}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | Path parameter. |
Example request
curl -X DELETE \
"https://api.usemonoid.com/api/v1/tasks/<id>/labels/{labelId}" \
-H "Authorization: Bearer <API_KEY>" \
-H "Content-Type: application/json"Other statuses: 401, 403, 404.
Response body type
—
© 2025 MONOid
All rights reserved.
All rights reserved.