List the research portfolio
Read a bounded page of the caller's active Research threads and receive a cursor for the next page. Use it to build a durable list of investigations without requesting an unbounded collection in one response.
/api/v1/research/portfolioRequired boundary headers
x-api-key or Authorization: BearerWhat this route does
Use the portfolio route to build a caller-owned thread list. Pass the returned cursor to the next request rather than choosing an unbounded page size.
Request parameters
Query parameters
Only fields in this request contract are accepted. The route ignores no undocumented shape and uses these fields to keep the work bounded and predictable.
cursorOptionalquery stringContinues a portfolio list from the position returned by the previous page. Pass it back unchanged and keep it within the 128-character limit so paging remains stable and owner-scoped.
limitOptionalquery integerControls how many thread summaries the page should return. The value is constrained from 1 through the configured portfolio maximum, with the server default used when no limit is supplied.
Default: configured default
Request and response
Example request
curl "https://vidbyte-backend.onrender.com/api/v1/research/portfolio?limit=20" \
-H "x-api-key: $VIDBYTE_API_KEY"Example response
{
"threads": [{
"encrypted_id": "rth_public_token",
"thread_id": "opaque_thread_reference",
"title": "AI tutoring evidence",
"run_count": 2,
"source_count": 12,
"artifact_count": 8,
"latest_run_status": "completed",
"created_at": "2026-08-10T10:00:00Z",
"updated_at": "2026-08-10T12:00:00Z"
}],
"next_cursor": "opaque_cursor_reference"
}Response and errors
- Returns bounded thread summaries and next_cursor.
- Deleted threads and internal identifiers are excluded from the projection.