Skip to main content
GET
Returns research tasks for the authenticated user. Each task includes lightweight metadata including task_id, status, creation time, and dashboard URL. Supports optional cursor-based pagination and status filtering. If page_size is not provided, returns all research tasks. Use status=succeeded to list tasks with retrievable results. Status is computed from stored task state without a live workflow lookup, so running also covers queued tasks and tasks whose workflow has already failed but isn’t yet reconciled. Call GET /v1/research/tasks/{task_id} for the authoritative queued/running/succeeded/failed status of a single task.

Pagination and Filtering

Use cursor-based pagination to fetch tasks in batches, with optional filtering by status.
cURL

Query Parameters

ParameterTypeDescription
page_sizeintegerNumber of tasks per page. If omitted, returns all tasks.
cursorstringCursor from a previous response for pagination.
statusstringFilter by status: running, succeeded, or failed.

Authorizations

x-api-key
string
header
required

Query Parameters

status
enum<string> | null

Filter by task status: running, succeeded, or failed.

Available options:
running,
succeeded,
failed
page_size
integer | null
cursor
string | null

Response

Successful Response

tasks
TaskListItem · object[]
required
total
integer
default:0

Total count of all tasks (running + succeeded + failed)

filtered_total
integer
default:0

Count of tasks matching the current filter

summary
TaskListSummary · object | null

Counts by status

page_size
integer | null

Requested page size (null if returning all)

has_more
boolean
default:false

Whether more results exist after this page

prev_cursor
string | null

Cursor for previous page

next_cursor
string | null

Cursor for next page