Skip to content

Data Sets

A data set is a reusable query definition based on a data source. Data sets are used in reports to load data into tables, lists, and other panels.

  1. Navigate to Data Sets in the sidebar
  2. Click New Data Set
  3. Enter a name and select a data source
  4. Write your query (depends on the data source type)
  5. Test the query with Run

Standard SQL queries against JDBC databases.

SELECT customer, revenue, date
FROM v_revenue_summary
WHERE country = {{param.country}}
AND date >= {{param.from}}

Parameters can be inserted with {{param.name}} or alternatively :name. The backend converts {{param.name}} to PreparedStatement parameters internally — SQL injection is prevented.

HTTP requests against REST APIs.

FieldDescription
HTTP MethodGET, POST, PUT, DELETE
PathURL path relative to the data source base URL (e.g. /products?limit=10)
Request BodyJSON body for POST/PUT requests
Response PathJSONPath-like path to extract data (e.g. $.products)

Headers and auth are configured at the data source level and apply to all data sets of that source.

Example:

Method: GET
Path: /products?category={{param.category}}&limit=50
Response Path: $.products

GraphQL queries against GraphQL endpoints.

FieldDescription
QueryThe GraphQL query
VariablesJSON object with variables
Response PathPath to extract data (e.g. $.data.countries). Auto-detected for single top-level fields.

Example:

query($code: String!) {
continent(code: $code) {
countries { name emoji population }
}
}

Variables: {"code": "{{param.continent}}"}

Parameters are automatically detected from the query text. For each detected parameter, an input field appears above the Run button, allowing you to test the query directly.

Supported syntax:

  • {{param.name}} — in SQL, REST, GraphQL
  • :name — SQL only (JDBC-compatible)

When the data set is used in a report, parameters are populated from the report parameters (see Parameters).

Click Run to execute the query with the entered test parameters. The result is displayed as a table. The environment switcher in the sidebar determines which data source configuration the query runs against (base config or environment override).

Data sets are shared resources. Multiple reports can use the same data set. Changes to the data set affect the working copy of all reports that use it.

Already deployed versions are not affected — they contain their own query snapshots (see Versioning).

Data sets can be organized in folders just like data sources, to maintain overview when you have many queries.