118 lines
2.5 KiB
Markdown
118 lines
2.5 KiB
Markdown
# TickTick Routing Reference
|
|
|
|
**App name:** `ticktick`
|
|
**Base URL proxied:** `api.ticktick.com`
|
|
|
|
## API Path Pattern
|
|
|
|
```
|
|
/ticktick/open/v1/{resource}
|
|
```
|
|
|
|
## Common Endpoints
|
|
|
|
### List Projects
|
|
```bash
|
|
GET /ticktick/open/v1/project
|
|
```
|
|
|
|
### Get Project with Tasks
|
|
```bash
|
|
GET /ticktick/open/v1/project/{projectId}/data
|
|
```
|
|
|
|
Returns project details along with tasks and columns.
|
|
|
|
### Create Project
|
|
```bash
|
|
POST /ticktick/open/v1/project
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "My Project",
|
|
"viewMode": "list"
|
|
}
|
|
```
|
|
|
|
**viewMode options:** `list`, `kanban`, `timeline`
|
|
|
|
### Delete Project
|
|
```bash
|
|
DELETE /ticktick/open/v1/project/{projectId}
|
|
```
|
|
|
|
### Get Task
|
|
```bash
|
|
GET /ticktick/open/v1/project/{projectId}/task/{taskId}
|
|
```
|
|
|
|
### Create Task
|
|
```bash
|
|
POST /ticktick/open/v1/task
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"title": "New task",
|
|
"projectId": "PROJECT_ID",
|
|
"content": "Task description",
|
|
"priority": 0,
|
|
"dueDate": "2026-02-15T10:00:00+0000",
|
|
"isAllDay": false
|
|
}
|
|
```
|
|
|
|
**Priority values:** 0=None, 1=Low, 3=Medium, 5=High
|
|
|
|
### Update Task
|
|
```bash
|
|
POST /ticktick/open/v1/task/{taskId}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"id": "TASK_ID",
|
|
"projectId": "PROJECT_ID",
|
|
"title": "Updated title",
|
|
"priority": 1
|
|
}
|
|
```
|
|
|
|
### Complete Task
|
|
```bash
|
|
POST /ticktick/open/v1/project/{projectId}/task/{taskId}/complete
|
|
```
|
|
|
|
### Delete Task
|
|
```bash
|
|
DELETE /ticktick/open/v1/project/{projectId}/task/{taskId}
|
|
```
|
|
|
|
## Task Fields
|
|
|
|
| Field | Type | Description |
|
|
|-------|------|-------------|
|
|
| `id` | string | Task ID |
|
|
| `projectId` | string | Parent project ID |
|
|
| `title` | string | Task title |
|
|
| `content` | string | Task description (Markdown) |
|
|
| `priority` | integer | 0=None, 1=Low, 3=Medium, 5=High |
|
|
| `status` | integer | 0=Active, 2=Completed |
|
|
| `dueDate` | string | ISO 8601 format |
|
|
| `startDate` | string | ISO 8601 format |
|
|
| `isAllDay` | boolean | All-day task flag |
|
|
| `timeZone` | string | e.g., "America/Los_Angeles" |
|
|
| `tags` | array | List of tag names |
|
|
| `columnId` | string | Kanban column ID |
|
|
|
|
## Notes
|
|
|
|
- The Open API provides access to tasks and projects only
|
|
- Habits, focus/pomodoro, and tags endpoints are not available through the Open API
|
|
- Task `status` values: 0 = Active, 2 = Completed
|
|
- Dates use ISO 8601 format with timezone offset (e.g., `2026-02-15T10:00:00+0000`)
|
|
- The `columns` field in project data is used for Kanban board columns
|
|
|
|
## Resources
|
|
|
|
- [TickTick Developer Portal](https://developer.ticktick.com/)
|
|
- [TickTick Help Center](https://help.ticktick.com/)
|