トラック
タスク/ゴールの作成 / 更新 / 検索 / 削除/一括適用です。
進行中の作業はトラックエンドポイントで扱います。
タスクの作成
POST /v1/tracks
Authorization: Bearer <token>
Content-Type: application/json
{
"type": "task",
"title": "Review docs",
"scope": { "type": "personal" },
"task": { "status": "todo", "dueDate": "2026-06-05" }
}ゴールの作成
{
"type": "goal",
"title": "Ship documentation v1",
"scope": { "type": "projects", "ids": ["project-id"] },
"goal": { "status": "on_track", "progress": 40 }
}検索
タスク絞り込みには status, assignee, goalId, parentId, dependsOn、日付範囲、doneAt の範囲があります。ゴール絞り込みには status, progressMin, progressMax、日付範囲があります。
type が task の場合、progressMin や progressMax のようなゴール専用の絞り込みは不正です。type が goal の場合、assignee, goalId, parentId, dependsOn, doneAtFrom / doneAtTo のようなタスク専用の絞り込みは不正です。
| 操作 | コスト |
|---|---|
tracks.search |
2 credits |
tracks.get |
1 credit |
tracks.apply |
1 credit |
tracks.create/update/delete |
1 credit |
検索結果で対象を絞ってから、必要なトラックだけ個別に取得してください。
一括適用
{
"scope": { "type": "personal" },
"upserts": [
{ "id": "t001", "title": "Task A", "task": { "status": "todo" } },
{ "id": "t002", "title": "Task B", "task": { "status": "todo", "dependsOn": ["t001"] } }
]
}非 UUID の id は新規作成、UUID の id は既存更新です。
upserts では task または goal から種別を推論します。両方を渡すと不正です。新規トラックには title が必要です。UUID の id は省略項目を維持します。