---
title: "List a project's workstreams"
method: GET
path: "/api/v1/projects/{id}/workstreams"
tags: ["Workstreams"]
---

# List a project's workstreams

`GET /api/v1/projects/{id}/workstreams`

## Request

- Base URL: `https://getorquesta.com`
- URL: `https://getorquesta.com/api/v1/projects/{id}/workstreams`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Any token that reaches the project (`projects:read`).

## Response `200`

Workstream list, oldest first.

- object
  - `workstreams` Workstream[], required
    - `id` string, uuid
    - `name` string
    - `kind` 'code' | 'analysis' | 'action'
    - `branch` string, nullable
    - `workingDirectory` string, nullable
    - `systemPrompt` string, nullable
    - `autoMerge` boolean
    - `status` string, nullable
    - `currentPromptId` string, uuid, nullable
    - `agentTokenId` string, uuid
    - `onMicrovm` boolean: Runs on the project's on-demand microVM.
    - `createdBy` string, uuid, nullable
    - `createdAt` string, date-time

## Other responses

- `401`: Missing or invalid API key.
- `403`: Insufficient scope, revoked token, or project-scope mismatch.
- `404`: Resource not found (or invisible to your scope).

---

[API](https://skmtc.dev/getorquesta/apis/orquesta-public-api.md) · [All operations](https://skmtc.dev/getorquesta/apis/orquesta-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getorquesta/apis/orquesta-public-api/revisions/7d27e0ae8324?raw)
