Execute cross-table SQL query
POST
/queries
Execute a SQL query across one or more dataset tables.
Request Body:
tables: Map of table names (as referenced in SQL) to table IDssql: SQL query to executemaxRows: Maximum rows to return (default: 1000, max: 10000)includeStats: Whether to include execution statistics
Response Formats (Accept header):
application/json(default): JSON response with rows, columns, and metadataapplication/vnd.apache.arrow.stream: Raw Arrow IPC binary data with metadata in headers:X-Query-Id: Unique query identifierX-Row-Count: Number of rows returnedX-Truncated: Whether results were truncated
Phase 1 Constraint: All tables must belong to the same team.
Request Body
Section titled “Request Body ”object
tables
required
object
key
additional properties
string
sql
required
string
maxRows
integer
includeStats
boolean
Responses
Section titled “ Responses ”Query executed successfully
object
queryId
required
string
columns
required
Array<object>
object
name
required
string
type
required
string
rows
required
Array<object>
object
key
additional properties
rowCount
required
number
truncated
required
boolean
stats
object
executionTimeMs
required
number
planningTimeMs
number
bytesScanned
number
rowsScanned
number
usage
object
getOptsCold
required
number
getOptsWarm
required
number
getRangeCold
required
number
getRangeWarm
required
number
getRangesCold
required
number
getRangesWarm
required
number
headCold
required
number
headWarm
required
number
listCold
required
number
listWarm
required
number
putOperations
required
number
deleteOperations
required
number
cacheHitRatePercent
required
number
readBytesCold
required
number
readBytesWarm
required
number
writeBytes
required
number
string format: binary
Bad request - invalid SQL, query error, or tables from multiple teams
Forbidden - insufficient permissions to access one or more tables
One or more dataset tables not found