These are the docs for the Metabase master branch. Some features documented here may not yet be available in the latest release. Check out the docs for the latest version, Metabase v0.52.
MBQL Library Changelog
Changes made to the library API for manipulating MBQL queries, found in metabase.lib.js
. The latest API documentation
can be found here.
This library is mainly used by Metabase’s own frontend, but it is treated as a proper API surface which is versioned and documented in this changelog.
Metabase 0.50.0
- Created this file and began versioning this API.
-
New function
as-returned
has been added. It handles a tricky case when adding filters or expressions to a query with aggregations.Suppose we have a query with aggregations in its last stage. When adding a filter or expression to that stage, it’s applied before the aggregations. That may be the desired behavior, but if we want a filter or custom expression based on the aggregations and breakouts in the last stage, there was no good support in this API.
as-returned
looks at the query and stage, and shifts to a later stage if necessary. If a later stage is needed but we were already on the last stage, a new empty stage is appended. - New functions
column-extractions
,extract
, andextraction-expression
have been added.column-extractions
returns a list of extractions, which are possible custom expressions we can derive from a given column. For example, getting the host or base domain name from a URL or email address, or the day of the week from a date or datetime.extract
applies an extraction to the query.extraction-expression
returns the expression for the extraction, allowing further editing.
Read docs for other versions of Metabase.