Qyra
Referencev2

Get source query status

Gets the status of many submitted queries at once — the standard async query status lifecycle (pending, running, ready, error, ...) plus the error message for failed queries. Poll this after Execute source queries; fetch each ready query's rows with the standard async query results endpoint. Statuses are visible to the query creator only.

GET/api/v2/projects/{projectUuid}/query-sources/queries/status

Authentication: personal access token. The spec defines an api_key security scheme — send an Authorization: ApiKey <your-personal-access-token> header (value format: ApiKey <your key>). A session_cookie scheme (connect.sid) exists for browser sessions. Operations in this spec declare security: [], an artifact of the upstream spec generator — authentication is still enforced by the server.

Path parameters

NameTypeRequiredDescription
projectUuidstringYes

Query parameters

NameTypeRequiredDescription
queryUuidsarray[string]Yes

Responses

200 — Success

{
  "results": {
    "statuses": [
      {
        "error": "string",
        "status": "pending",
        "queryUuid": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
      }
    ]
  },
  "status": "ok"
}

default — Error

{
  "error": {
    "data": "string",
    "message": "string",
    "name": "string",
    "statusCode": 0
  },
  "status": "error"
}

Execute source queries

Submits one or more source queries through the common interface. Every query body is tagged by sourceType and every query returns a queryUuid, polled with the standard async query results endpoint (or Get source query status for many at once). Queries reference each other's results by nodeId: a duckdb query's references expose other queries' results as tables, named by node id (array shorthand) or by alias (map form, which also accepts queryUuids of results from previous submissions). A referenced result keeps the column names of the query that produced it — field ids for semanticLayer queries, SELECT output names for sql queries. All queries are submitted immediately; a query referencing still-running results waits inside its own execution and fails if a referenced query fails, so no orchestration happens outside the queries themselves. Submit queries one at a time (interactive use) or as a whole pipeline in one call — the two are equivalent, so a serialized multi-query analysis is just the bodies of the queries that were run interactively, with queryUuid references swapped for node ids. Note that results expire: re-run upstream queries whose results have expired instead of referencing their old queryUuids.

List my query history

Lists the requesting user's own query history for a project, newest first, with per-trigger and per-window counts. Must stay declared before `getAsyncQueryResults` so the generated `/history` route is matched before `/{queryUuid}`.