Missions
Start missions, read their state, steer them, and override how their agents run.
Query Parameters
Value in
- "pending"
- "supervisor"
- "planning"
- "coding"
- "ci"
- "review"
- "deploying"
- "qa"
- "done"
- "declined"
- "needs_attention"
Value in
- "queued"
- "planning"
- "building"
- "fixing_ci"
- "addressing_review"
- "addressing_qa"
- "ci_running"
- "ci_failed"
- "reviewing"
- "changes_requested"
- "deploying"
- "testing"
- "qa_failed"
- "ready_to_merge"
- "auto_merging"
- "needs_attention"
- "merged"
- "auto_merged"
- "declined"
- "paused"
- "stopped"
Value in
- "no_pr"
- "ci_failed"
- "review_changes_requested"
- "qa_failed"
- "awaiting_review"
- "awaiting_deploy"
- "awaiting_qa"
- "running"
- "awaiting_ci"
- "ready_for_human"
- "merged"
- "declined"
- "failed"
Value in
- "passed"
- "failed"
- "pending"
- "none"
Value in
- "approved"
- "changes_requested"
- "pending"
- "none"
Value in
- "product"
- "probe"
- "superseded"
- "takeover"
1 <= value <= 100250 <= value0Response Body
application/json
application/json
curl -X GET "https://example.com/missions"{ "data": [ { "issueId": "string", "projectId": "string", "orgSlug": "string", "linearTitle": "string", "linearUrl": "string", "prNumber": 0, "prUrl": "string", "ciUrl": "string", "repo": "string", "baseBranch": "string", "headBranch": "string", "checkState": "passed", "reviewState": "approved", "testState": "passed", "diffAdded": 0, "diffRemoved": 0, "pipelineProgress": "no_pr", "activity": "queued", "statusLabel": "string", "currentStage": "pending", "cycleTimeMs": 0, "cycleTimeRunning": true, "paused": true, "pauseSource": "string", "stopped": true, "stopping": true, "terminal": true, "prActionPending": "merge", "mergeConflict": true, "autoMerge": true, "archived": true, "entryStage": "builder", "totalCostUsd": 0, "updatedAt": 0, "laneEnteredAt": 0, "platformVersion": "string", "environment": "string", "straddled": true, "disposition": "product", "supersededBy": "string", "dispositionSignal": "string" } ], "total": 0, "nextCursor": "string"}Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/missions" \ -H "Content-Type: application/json" \ -d '{ "projectId": "string" }'{ "issueId": "string", "identifier": "string", "url": "string"}Path Parameters
1 <= lengthQuery Parameters
Response Body
application/json
application/json
curl -X GET "https://example.com/missions/string"{ "summary": { "issueId": "string", "projectId": "string", "orgSlug": "string", "linearTitle": "string", "linearUrl": "string", "prNumber": 0, "prUrl": "string", "ciUrl": "string", "repo": "string", "baseBranch": "string", "headBranch": "string", "checkState": "passed", "reviewState": "approved", "testState": "passed", "diffAdded": 0, "diffRemoved": 0, "pipelineProgress": "no_pr", "activity": "queued", "statusLabel": "string", "currentStage": "pending", "cycleTimeMs": 0, "cycleTimeRunning": true, "paused": true, "pauseSource": "string", "stopped": true, "stopping": true, "terminal": true, "prActionPending": "merge", "mergeConflict": true, "autoMerge": true, "archived": true, "entryStage": "builder", "totalCostUsd": 0, "updatedAt": 0, "laneEnteredAt": 0, "platformVersion": "string", "environment": "string", "straddled": true, "disposition": "product", "supersededBy": "string", "dispositionSignal": "string" }, "runs": [ { "sandboxId": "string", "role": "string", "label": "string", "status": "running", "harness": "string", "model": "string", "provider": "string", "servedProvider": "string", "effort": "string", "outcome": "string", "createdAt": 0, "destroyedAt": 0, "latestSessionId": "string", "tokenUsage": { "totalCostUsd": 0, "inputTokens": 0, "outputTokens": 0 }, "isCurrent": true, "result": { "scope": "run", "plan": { "markdown": "string", "acceptanceCriteria": [ "string" ], "filePlan": [ { "path": "string", "action": "create", "description": "string" } ] }, "build": { "prNumber": 0, "prUrl": "string", "headSha": "string", "commitUrl": "string", "diffAdded": 0, "diffRemoved": 0, "changedFiles": 0, "files": [ { "path": "string", "additions": 0, "deletions": 0, "status": "string" } ] }, "review": { "approved": true, "comments": [ { "file": "string", "line": 0, "severity": "critical", "comment": "string" } ] }, "qa": { "overall": "pass", "criteria": [ { "name": "string", "pass": true, "evidence": "string" } ], "proofSkipped": true }, "failure": "string" }, "platformVersion": "string" } ], "stages": [ { "stage": "pending", "state": "done", "role": "string", "sandboxId": "string" } ], "events": [ { "ts": 0, "kind": "planner_done", "label": "string", "detail": "string", "sandboxId": "string" } ], "stats": { "cycleTimeMs": 0, "leadTimeMs": 0, "leadTimeRunning": true, "totalCostUsd": 0, "totalInputTokens": 0, "totalOutputTokens": 0, "agentAttempts": 0, "stages": [ { "stage": "pending", "label": "string", "attempts": 0, "durationMs": 0, "percentOfCycle": 0, "costUsd": 0, "inputTokens": 0, "outputTokens": 0, "model": "string", "promptVersion": "string" } ] }, "stageOutcomes": { "plan": { "markdown": "string", "acceptanceCriteria": [ "string" ], "filePlan": [ { "path": "string", "action": "create", "description": "string" } ] }, "build": { "prNumber": 0, "prUrl": "string", "headSha": "string", "commitUrl": "string", "diffAdded": 0, "diffRemoved": 0, "changedFiles": 0, "files": [ { "path": "string", "additions": 0, "deletions": 0, "status": "string" } ] }, "review": { "approved": true, "comments": [ { "file": "string", "line": 0, "severity": "critical", "comment": "string" } ] }, "qa": { "overall": "pass", "criteria": [ { "name": "string", "pass": true, "evidence": "string" } ], "proofSkipped": true } }, "proofRunSandboxId": "string"}Path Parameters
1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/missions/string" \ -H "Content-Type: application/json" \ -d '{ "disposition": "product" }'{ "ok": true, "issueId": "string", "disposition": "product", "supersededBy": "string"}Path Parameters
1 <= lengthQuery Parameters
Response Body
application/json
application/json
curl -X GET "https://example.com/missions/string/provenance"{ "data": [ { "stage": "string", "attempt": 0, "harness": "string", "model": "string", "provider": "string", "effort": "string", "baseSha": "string", "durationSeconds": 0, "inferenceCostUsd": 0, "inputTokens": 0, "outputTokens": 0, "cacheReadTokens": 0, "cacheCreationTokens": 0, "selfReportedCostUsd": 0, "priceVersion": "string", "startedAt": "string", "completedAt": "string", "sessionId": "string" } ]}Path Parameters
1 <= lengthQuery Parameters
Comma-separated section filter; default all.
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/missions/string/inspect"{ "issueId": "string", "projectId": "string", "taskId": "string", "generatedAt": "string", "sections": { "taskState": { "ok": true, "data": null, "error": "string" }, "retryReason": { "ok": true, "data": null, "error": "string" }, "ciSummary": { "ok": true, "data": null, "error": "string" }, "builderRetryBrief": { "ok": true, "data": null, "error": "string" }, "dispatchError": { "ok": true, "data": null, "error": "string" }, "latestReview": { "ok": true, "data": null, "error": "string" }, "latestQa": { "ok": true, "data": null, "error": "string" }, "runIndex": { "ok": true, "data": null, "error": "string" }, "provenance": { "ok": true, "data": null, "error": "string" }, "sessionSummaries": { "ok": true, "data": null, "error": "string" }, "sandboxes": { "ok": true, "data": null, "error": "string" }, "streamHeads": { "ok": true, "data": null, "error": "string" } }}curl -X POST "https://example.com/missions/string/pause"{ "ok": true, "issueId": "string"}curl -X POST "https://example.com/missions/string/resume"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/instructions" \ -H "Content-Type: application/json" \ -d '{ "body": "string" }'{ "instructionId": "string", "issueId": "string", "recorded": true, "missionActivity": "string", "dispatch": { "willDispatch": true, "role": "string", "reason": "follow_up_forced", "remedy": "string" }}Path Parameters
1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/start" \ -H "Content-Type: application/json" \ -d '{ "projectId": "string" }'{ "ok": true, "issueId": "string"}curl -X POST "https://example.com/missions/string/stop"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthResponse Body
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/archive"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthResponse Body
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/unarchive"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthResponse Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/merge"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthResponse Body
application/json
application/json
application/json
curl -X POST "https://example.com/missions/string/decline"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
curl -X POST "https://example.com/missions/string/auto-merge" \ -H "Content-Type: application/json" \ -d '{ "enabled": true }'{ "ok": true, "issueId": "string", "autoMerge": true}Path Parameters
1 <= lengthQuery Parameters
1 <= lengthResponse Body
application/json
application/json
curl -X GET "https://example.com/missions/string/agents-override?projectId=string"{ "issueId": "string", "override": { "agents": { "planner": { "harness": "claude-code", "model": "string", "provider": "string", "effort": "string", "providerRouting": { "order": [ "string" ], "only": [ "string" ], "ignore": [ "string" ], "allowFallbacks": true, "requireParameters": true, "quantizations": [ "string" ], "sort": "string", "dataCollection": "allow" }, "checkpoint": true, "rejectOn": "critical", "prompt": "string" }, "builder": { "harness": "claude-code", "model": "string", "provider": "string", "effort": "string", "providerRouting": { "order": [ "string" ], "only": [ "string" ], "ignore": [ "string" ], "allowFallbacks": true, "requireParameters": true, "quantizations": [ "string" ], "sort": "string", "dataCollection": "allow" }, "checkpoint": true, "rejectOn": "critical", "prompt": "string" }, "reviewer": { "harness": "claude-code", "model": "string", "provider": "string", "effort": "string", "providerRouting": { "order": [ "string" ], "only": [ "string" ], "ignore": [ "string" ], "allowFallbacks": true, "requireParameters": true, "quantizations": [ "string" ], "sort": "string", "dataCollection": "allow" }, "checkpoint": true, "rejectOn": "critical", "prompt": "string" }, "qa": { "harness": "claude-code", "model": "string", "provider": "string", "effort": "string", "providerRouting": { "order": [ "string" ], "only": [ "string" ], "ignore": [ "string" ], "allowFallbacks": true, "requireParameters": true, "quantizations": [ "string" ], "sort": "string", "dataCollection": "allow" }, "checkpoint": true, "rejectOn": "critical", "prompt": "string" } }, "baseBranch": "string" }}Path Parameters
1 <= lengthQuery Parameters
1 <= lengthResponse Body
application/json
application/json
application/json
curl -X DELETE "https://example.com/missions/string/agents-override?projectId=string"{ "ok": true, "issueId": "string"}Path Parameters
1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X PUT "https://example.com/missions/string/agents-override" \ -H "Content-Type: application/json" \ -d '{ "projectId": "string" }'{ "ok": true, "issueId": "string"}How is this page?