POST
/
v1
/
request
/
query-clickhouse

The following API is the same as the Get Requests API, but it is optimized for speed when querying large amount of data. This endpoint will timeout for point queries and is really slow when querying just a few requests.

The following API lets you get all of the requests that would be visible in the request table at helicone.ai/requests.

Premade examples 👇

FilterDescription
Get Request by UserGet all the requests made by a user

Filter

A filter is either a FilterLeaf or a FilterBranch, and can be composed of multiple filters generating an AST of ANDs/ORs.

Here is how it is represented in typescript:

export interface FilterBranch {
  left: FilterNode;
  operator: "or" | "and"; // Can add more later
  right: FilterNode;
}

export type FilterNode = FilterLeaf | FilterBranch | "all";

This allows us to build complex filters like this:

{
  "filter": {
    "operator": "and",
    "right": {
      "request_response_rmt": {
        "model": {
          "contains": "gpt-4"
        }
      }
    },
    "left": {
      "request_response_rmt": {
        "user_id": {
          "equals": "abc@email.com"
        }
      }
    }
  }
}

Authorizations

authorization
string
header
required

Body

application/json

Request query filters

filter
required

From T, pick a set of properties whose keys are in the union K

includeInputs
boolean
isCached
boolean
isPartOfExperiment
boolean
isScored
boolean
limit
number
offset
number
sort
object

Response

200 - application/json
data
object[]
required
error
enum<number> | null
required