Skip to content
StatefoldDocsChangelogOpen app

Threads API

List threads

Page through your threads, most recently updated first.

GET/api/v1/tasks

Returns your threads, 20 at a time, most recently updated first, including archived ones. Listing reads saved metadata and never wakes a workspace.

To read the next page, pass the updatedAt and taskId from nextCursor as beforeUpdatedAt and beforeTaskId. When nextCursor is null you have every thread.

Requires a personal API token with the tasks:read scope, sent as Authorization: Bearer over HTTPS.

Query parameters

beforeUpdatedAtstring (ISO 8601)sometimes required

nextCursor.updatedAt from the previous page. Send it with beforeTaskId.

beforeTaskIdstring (UUID)sometimes required

nextCursor.taskId from the previous page. Send it with beforeUpdatedAt.

Returns

200 OK with one page of threads and the cursor for the next.

Response fields

tasksobject[]required

Up to 20 threads.

tasks[].taskIdstring (UUID)required

The thread.

tasks[].titlestringrequired

Title.

tasks[].sourceLabelstring | nullrequired

Repository or project name.

tasks[].statusSummarystringrequired

Derived status, as on Get a thread.

tasks[].updatedAtstring (ISO 8601)required

Last change.

tasks[].archivedAtstring (ISO 8601) | nullrequired

Set when archived.

nextCursor{ updatedAt, taskId } | nullrequired

Where the next page starts, or null on the last page.

Errors

Errors are JSON: { "version": 1, "error": { "code", "message" } }. See Errors for retry advice.

400invalid_request

Only one cursor parameter was sent, or one is malformed.

401unauthorized

The bearer token is missing, invalid or revoked.

403forbidden

The token does not have the tasks:read scope, or the account is suspended.