171 lines
2.7 KiB
Markdown
171 lines
2.7 KiB
Markdown
# Motion Routing Reference
|
|
|
|
**App name:** `motion`
|
|
**Base URL proxied:** `api.usemotion.com`
|
|
|
|
## API Path Pattern
|
|
|
|
```
|
|
/motion/v1/{resource}
|
|
```
|
|
|
|
## Common Endpoints
|
|
|
|
### Get Current User
|
|
```bash
|
|
GET /motion/v1/users/me
|
|
```
|
|
|
|
### List Workspaces
|
|
```bash
|
|
GET /motion/v1/workspaces
|
|
```
|
|
|
|
### List Tasks
|
|
```bash
|
|
GET /motion/v1/tasks
|
|
GET /motion/v1/tasks?workspaceId={workspaceId}
|
|
GET /motion/v1/tasks?projectId={projectId}
|
|
```
|
|
|
|
### Get Task
|
|
```bash
|
|
GET /motion/v1/tasks/{taskId}
|
|
```
|
|
|
|
### Create Task
|
|
```bash
|
|
POST /motion/v1/tasks
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "Task name",
|
|
"workspaceId": "ws_xxx",
|
|
"priority": "HIGH",
|
|
"duration": 30
|
|
}
|
|
```
|
|
|
|
### Update Task
|
|
```bash
|
|
PATCH /motion/v1/tasks/{taskId}
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "Updated name",
|
|
"priority": "LOW"
|
|
}
|
|
```
|
|
|
|
### Delete Task
|
|
```bash
|
|
DELETE /motion/v1/tasks/{taskId}
|
|
```
|
|
|
|
### Move Task
|
|
```bash
|
|
POST /motion/v1/tasks/{taskId}/move
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"workspaceId": "ws_new"
|
|
}
|
|
```
|
|
|
|
### Unassign Task
|
|
```bash
|
|
POST /motion/v1/tasks/{taskId}/unassign
|
|
```
|
|
|
|
### List Projects
|
|
```bash
|
|
GET /motion/v1/projects?workspaceId={workspaceId}
|
|
```
|
|
|
|
### Get Project
|
|
```bash
|
|
GET /motion/v1/projects/{projectId}
|
|
```
|
|
|
|
### Create Project
|
|
```bash
|
|
POST /motion/v1/projects
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "Project name",
|
|
"workspaceId": "ws_xxx",
|
|
"priority": "HIGH"
|
|
}
|
|
```
|
|
|
|
### List Users
|
|
```bash
|
|
GET /motion/v1/users?workspaceId={workspaceId}
|
|
```
|
|
|
|
### List Comments
|
|
```bash
|
|
GET /motion/v1/comments?taskId={taskId}
|
|
```
|
|
|
|
### Create Comment
|
|
```bash
|
|
POST /motion/v1/comments
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"taskId": "tk_xxx",
|
|
"content": "Comment text"
|
|
}
|
|
```
|
|
|
|
### List Recurring Tasks
|
|
```bash
|
|
GET /motion/v1/recurring-tasks?workspaceId={workspaceId}
|
|
```
|
|
|
|
### Create Recurring Task
|
|
```bash
|
|
POST /motion/v1/recurring-tasks
|
|
Content-Type: application/json
|
|
|
|
{
|
|
"name": "Weekly review",
|
|
"workspaceId": "ws_xxx",
|
|
"frequency": "weekly"
|
|
}
|
|
```
|
|
|
|
### Delete Recurring Task
|
|
```bash
|
|
DELETE /motion/v1/recurring-tasks/{recurringTaskId}
|
|
```
|
|
|
|
### List Schedules
|
|
```bash
|
|
GET /motion/v1/schedules
|
|
```
|
|
|
|
### List Statuses
|
|
```bash
|
|
GET /motion/v1/statuses?workspaceId={workspaceId}
|
|
```
|
|
|
|
## Notes
|
|
|
|
- Workspace IDs start with `ws_`
|
|
- Task IDs start with `tk_`
|
|
- Project IDs start with `pr_`
|
|
- Timestamps are in ISO 8601 format
|
|
- Priority values: ASAP, HIGH, MEDIUM, LOW
|
|
- Deadline types: HARD, SOFT, NONE
|
|
- Cursor-based pagination with `cursor` query parameter
|
|
- `workspaceId` is required for listing projects, users, recurring tasks, and statuses
|
|
|
|
## Resources
|
|
|
|
- [Motion API Documentation](https://docs.usemotion.com/)
|
|
- [Motion API Reference](https://docs.usemotion.com/api-reference)
|
|
- [Motion Cookbooks](https://docs.usemotion.com/cookbooks/getting-started)
|