Skip to main content
POST
/
threads
/
stream_query
Threads Query Stream
curl --request POST \
  --url https://api.example.com/threads/stream_query \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "project_id": "<string>",
  "filter": {
    "after_datetime": "2024-01-01T00:00:00Z",
    "before_datetime": "2024-12-31T23:59:59Z",
    "thread_ids": [
      "thread_1",
      "thread_2",
      "my_thread_id"
    ]
  },
  "limit": 123,
  "offset": 123,
  "sort_by": [
    {
      "direction": "desc",
      "field": "last_updated"
    }
  ]
}
'
[
  {}
]

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Body

application/json

Query threads with aggregated statistics based on turn calls only.

Turn calls are the immediate children of thread contexts (where call.id == turn_id). This provides meaningful conversation-level statistics rather than including all nested implementation details.

project_id
string
required

The ID of the project

filter
ThreadsQueryFilter · object

Filter criteria for the threads query

limit
integer | null

Maximum number of threads to return

offset
integer | null

Number of threads to skip

sort_by
SortBy · object[] | null

Sorting criteria for the threads. Supported fields: 'thread_id', 'turn_count', 'start_time', 'last_updated', 'p50_turn_duration_ms', 'p99_turn_duration_ms'.

Example:
[
  {
    "direction": "desc",
    "field": "last_updated"
  }
]

Response

Stream of data in JSONL format