| Method | Path | Auth | Description |
|---|
| GET | /api/v1/board | JWT | List boards |
| POST | /api/v1/board | JWT | Create board |
| GET | /api/v1/board/{id} | JWT | Get board with columns, tasks, members |
| PUT | /api/v1/board/{id} | JWT | Update board |
| DELETE | /api/v1/board/{id} | Admin | Delete board |
Create request: {"name": "Q1 Planning", "description": "..."}
| Method | Path | Auth | Description |
|---|
| POST | /api/v1/board/{id}/task | JWT | Create task |
| PUT | /api/v1/board/{id}/task/{tid} | JWT | Update task |
Create request: {"title": "Review budget", "description": "..."}
| Method | Path | Auth | Description |
|---|
| GET | /api/v1/board/{id}/task/{tid}/comment | JWT | List comments |
| POST | /api/v1/board/{id}/task/{tid}/comment | JWT | Create comment |
| DELETE | /api/v1/board/{id}/task/{tid}/comment/{cid} | JWT | Delete (author or admin) |
| Method | Path | Auth | Description |
|---|
| GET | /api/v1/board/{id}/member | Admin | List members |
| POST | /api/v1/board/{id}/member | JWT | Add member |
| PUT | /api/v1/board/{id}/member/{mid} | JWT | Update role |
| DELETE | /api/v1/board/{id}/member/{mid} | JWT | Remove member |
Add member: {"user_id": "...", "role": "edit"}. Roles: viewer, edit, admin.