Todoist · Schema
Todoist Task
A task (item) in Todoist with content, due date, priority, labels, and completion status.
ProductivityTasksTo-DoTask ManagementCollaboration
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique task identifier |
| content | string | Task title/content |
| description | string | Optional additional description |
| project_id | stringnull | Project ID containing the task |
| section_id | stringnull | Section ID within the project |
| parent_id | stringnull | Parent task ID for subtasks |
| order | integer | Task display order within its container |
| labels | array | Array of label names applied to the task |
| priority | integer | Priority level: 1=Normal, 2=High, 3=Very High, 4=Urgent |
| due | objectnull | Due date information |
| deadline | objectnull | Hard deadline for the task |
| assignee_id | stringnull | User ID of assignee |
| assigner_id | stringnull | User ID who assigned the task |
| comment_count | integer | Number of comments on the task |
| is_completed | boolean | Whether the task has been completed |
| created_at | string | Task creation timestamp in UTC |
| creator_id | string | User ID of the task creator |
| url | string | Deep link URL to the task in Todoist |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api-evangelist.github.io/todoist/json-schema/todoist-task-schema.json",
"title": "Todoist Task",
"description": "A task (item) in Todoist with content, due date, priority, labels, and completion status.",
"type": "object",
"required": ["id", "content", "is_completed"],
"properties": {
"id": {
"type": "string",
"description": "Unique task identifier"
},
"content": {
"type": "string",
"description": "Task title/content"
},
"description": {
"type": "string",
"description": "Optional additional description"
},
"project_id": {
"type": ["string", "null"],
"description": "Project ID containing the task"
},
"section_id": {
"type": ["string", "null"],
"description": "Section ID within the project"
},
"parent_id": {
"type": ["string", "null"],
"description": "Parent task ID for subtasks"
},
"order": {
"type": "integer",
"description": "Task display order within its container"
},
"labels": {
"type": "array",
"items": { "type": "string" },
"description": "Array of label names applied to the task"
},
"priority": {
"type": "integer",
"enum": [1, 2, 3, 4],
"description": "Priority level: 1=Normal, 2=High, 3=Very High, 4=Urgent"
},
"due": {
"type": ["object", "null"],
"description": "Due date information",
"properties": {
"date": { "type": "string", "description": "Due date in YYYY-MM-DD format" },
"is_recurring": { "type": "boolean" },
"string": { "type": "string", "description": "Human-readable due date string" },
"datetime": { "type": ["string", "null"], "format": "date-time" },
"timezone": { "type": ["string", "null"] }
}
},
"deadline": {
"type": ["object", "null"],
"description": "Hard deadline for the task",
"properties": {
"date": { "type": "string" },
"lang": { "type": "string" }
}
},
"assignee_id": {
"type": ["string", "null"],
"description": "User ID of assignee"
},
"assigner_id": {
"type": ["string", "null"],
"description": "User ID who assigned the task"
},
"comment_count": {
"type": "integer",
"minimum": 0,
"description": "Number of comments on the task"
},
"is_completed": {
"type": "boolean",
"description": "Whether the task has been completed"
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "Task creation timestamp in UTC"
},
"creator_id": {
"type": "string",
"description": "User ID of the task creator"
},
"url": {
"type": "string",
"format": "uri",
"description": "Deep link URL to the task in Todoist"
}
}
}