---
title: "List ticket+PR sessions for the caller's accessible projects"
method: GET
path: "/missions"
tags: ["missions"]
---

# List ticket+PR sessions for the caller's accessible projects

`GET /missions`

## Request

- Base URL: `https://api.letsship.ai/v1`
- URL: `https://api.letsship.ai/v1/missions`
- Auth: none declared

## Query parameters

- `projectId` string
- `search` string
- `status` 'pending' | 'supervisor' | 'planning' | 'coding' | 'ci' | 'review' | 'deploying' | 'qa' | 'done' | 'declined' | 'needs_attention'
- `activity` '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' | 'pausing' | 'paused' | 'stopped'
- `pipelineProgress` 'no_pr' | 'ci_failed' | 'review_changes_requested' | 'qa_failed' | 'awaiting_review' | 'awaiting_deploy' | 'awaiting_qa' | 'running' | 'awaiting_ci' | 'ready_for_human' | 'merged' | 'declined' | 'failed'
- `checkState` 'passed' | 'failed' | 'pending' | 'none'
- `reviewState` 'approved' | 'changes_requested' | 'pending' | 'none'
- `awaitingAcceptance` boolean, nullable
- `excludeClosed` boolean, nullable
- `archived` boolean, nullable
- `disposition` 'product' | 'probe' | 'superseded' | 'takeover', nullable
- `excludeProbes` boolean, nullable
- `limit` integer
- `offset` integer, nullable

## Response `200`

Sessions

- ListMissionsResponse
  - `data` MissionSummary[], required
    - `issueId` string, required
    - `projectId` string, nullable, required
    - `orgSlug` string, nullable, required
    - `linearTitle` string, nullable, required
    - `linearUrl` string, nullable, required
    - `tracker` 'linear' | 'github-issues' | 'none', nullable
    - `prNumber` integer, nullable, required
    - `prUrl` string, nullable, required
    - `ciUrl` string, nullable, required
    - `repo` string, nullable, required
    - `baseBranch` string, nullable, required
    - `headBranch` string, nullable, required
    - `checkState` 'passed' | 'failed' | 'pending' | 'none', required
    - `reviewState` 'approved' | 'changes_requested' | 'pending' | 'none', required
    - `testState` 'passed' | 'failed' | 'pending' | 'none', required
    - `diffAdded` integer, nullable, required
    - `diffRemoved` integer, nullable, required
    - `pipelineProgress` 'no_pr' | 'ci_failed' | 'review_changes_requested' | 'qa_failed' | 'awaiting_review' | 'awaiting_deploy' | 'awaiting_qa' | 'running' | 'awaiting_ci' | 'ready_for_human' | 'merged' | 'declined' | 'failed', required
    - `activity` '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' | 'pausing' | 'paused' | 'stopped', required
    - `statusLabel` string, required
    - `currentStage` 'pending' | 'supervisor' | 'planning' | 'coding' | 'ci' | 'review' | 'deploying' | 'qa' | 'done' | 'declined' | 'needs_attention', required
    - `cycleTimeMs` integer, nullable, required
    - `cycleTimeRunning` boolean, required
    - `paused` boolean, required
    - `pauseSource` string, nullable, required
    - `stopped` boolean, required
    - `stopping` boolean, required
    - `terminal` boolean, required
    - `escalation` 'error' | 'handled'
    - `prActionPending` 'merge' | 'decline', nullable, required
    - `mergeConflict` boolean, required
    - `pendingMerge` object, nullable, required
      - `reason` 'updating_branch', required
      - `baseBranch` string, required
      - `requestedAt` string, required
    - `autoMerge` boolean, required
    - `archived` boolean, required
    - `entryStage` 'builder' | 'reviewer' | 'qa', nullable, required
    - `totalCostUsd` number, nullable, required
    - `costIncomplete` boolean, required
    - `billing` MissionBilling, required
      - `creditsUsed` integer, required
      - `ceiling` integer, required
      - `mode` 'enforce' | 'shadow' | 'off', required
      - `hold` 'user' | 'checkpoint' | 'capacity' | 'usage_limit' | 'backoff' | 'credits' | 'ceiling', required
    - `updatedAt` integer, required
    - `laneEnteredAt` integer, nullable, required
    - `platformVersion` string, nullable
    - `environment` string, nullable
    - `straddled` boolean, nullable
    - `disposition` 'product' | 'probe' | 'superseded' | 'takeover', nullable
    - `supersededBy` string, nullable
    - `dispositionSignal` string, nullable
  - `total` integer, required
  - `nextCursor` string, nullable, required

## Other responses

- `401`: Unauthenticated

---

[API](https://skmtc.dev/letsship/apis/ship-api.md) · [All operations](https://skmtc.dev/letsship/apis/ship-api/llms.txt) · [OpenAPI document](https://skmtc.dev/letsship/apis/ship-api/revisions/e6eac1bcadd4?raw)
