---
title: "List tasks"
method: GET
path: "/api/v1/threads/{threadId}/tasks"
tags: ["tasks"]
---

# List tasks

`GET /api/v1/threads/{threadId}/tasks`

## Path parameters

- `threadId` string, required

## Query parameters

- `after` string
- `limit` integer

## Response `200`

TaskPage

- TaskPageEncoded
  - `items` TaskEncoded[], required
    - `id` string, required
    - `threadId` string, required
    - `parentId` string, required
    - `taskPath` string, required
    - `projectId` string, nullable, required
    - `title` string, nullable, required
    - `status` 'working' | 'waiting' | 'idle' | 'done' | 'failed', required
    - `archived` boolean, required
    - `usage` UsageTotalsEncoded, required
      - `llmCredits` union, required
        - number
        - 'Infinity' | '-Infinity' | 'NaN'
      - `imageCredits` union, required
        - number
        - 'Infinity' | '-Infinity' | 'NaN'
      - `vmCredits` union, required
        - number
        - 'Infinity' | '-Infinity' | 'NaN'
      - `totalCredits` union, required
        - number
        - 'Infinity' | '-Infinity' | 'NaN'
    - `createdAt` string, required
    - `updatedAt` string, required
    - `lastActivityAt` string, nullable, required
  - `cursor` string, nullable, required

## Other responses

- `401` — capy/Unauthorized
- `404` — capy/ThreadNotFound

## Changes

- **2026-08-27** `6cd1e287d2c5` — 4 info
  - response property `items/items/usage/imageCredits/anyOf[subschema #1]/` list-of-types was narrowed by removing types `string` from media type `application/json` of response `200`
  - response property `items/items/usage/llmCredits/anyOf[subschema #1]/` list-of-types was narrowed by removing types `string` from media type `application/json` of response `200`
  - response property `items/items/usage/totalCredits/anyOf[subschema #1]/` list-of-types was narrowed by removing types `string` from media type `application/json` of response `200`
  - response property `items/items/usage/vmCredits/anyOf[subschema #1]/` list-of-types was narrowed by removing types `string` from media type `application/json` of response `200`
- **2026-08-22** `3fda89533361` — 1 info
  - added the required property `items/items/archived` to the response with the `200` status
- **2026-08-15** `3a998a0e7870` — 1 info
  - added the required property `items/items/usage/imageCredits` to the response with the `200` status
- **2026-08-11** `792c11dd1007` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/capy/apis/capy-api/changes/api/v1/threads/:threadId/tasks/get.md)

---

[API](https://skmtc.dev/capy/apis/capy-api.md) · [All operations](https://skmtc.dev/capy/apis/capy-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/capy/capy-api/revisions/6cd1e287d2c5/schema)
