Executes a query from a QueryExecutionSpec — the lower-layer interface-based entry point.
Runs the full pipeline: composition resolution → Nunjucks template processing → SQL execution.
Used for both saved queries (upper layer maps QueryInfo to spec) and transient test queries.
The execution spec describing the query, parameters, and inline dependencies
OptionalcontextUser: UserInfoOptional user context for permissions (required server-side)
Query results including data rows and execution metadata
Executes multiple queries in a single batch operation. More efficient than calling RunQuery multiple times as it reduces network overhead.
Array of query parameters
OptionalcontextUser: UserInfoOptional user context for permissions
Array of query results in the same order as input params
OptionalRunExecutes multiple query requests with smart cache checking. For each query with cacheStatus provided, the server uses the Query's CacheValidationSQL to check if the cached data is still current before executing the full query. This reduces unnecessary data transfer when cached data is valid.
Array of query parameters with optional cache status for each
OptionalcontextUser: UserInfoOptional user context for permissions
Response containing status and fresh data only for stale caches
OptionalcontextUser: UserInfo
Interface for providers that execute stored queries. Supports execution of pre-defined SQL queries with security controls. Queries must be pre-approved and stored in the Query entity.