Skip to main content
These endpoints let you discover the domains available to your account and inspect their variables and activities. Domains, activities, and variables are addressed by id. Only published domains are returned.

List domains

List a domain’s variables

Returns the domain and its variables, each with its default value and the two fields needed to render it. Useful for building structured text.
Each variable carries exactly these fields: id, key, title, description, default_value, display_type, and decimal_format.

Rendering a default value

default_value is not self-describing, so pair it with display_type and decimal_format:
  • A percent stores a decimal — 0.06 renders as 6%.
  • A duration, date, datetime, or time stores a count of seconds. Render it with a UTC-pinned formatter; the notes under Dates and durations apply to a default verbatim.
  • A default of one of those four kinds may instead be the literal word today or now, which stands for the moment the calculation runs rather than the moment the domain was authored. See today and now as defaults.

List a domain’s activities

Returns a domain’s definition: its activities — each with its equation, state, and the variables it references — and its variables with their stored display configuration. This describes how the domain is configured, in contrast to POST /v1/calculate, which returns computed values with a render-ready display for each. The two carry similar display information in different shapes — see Display configuration vs. display.
Domain — the published domain, with flags for whether a draft and a published version exist: Activities — one entry per activity: Variables — one entry per variable, in definition form:

display_metadata

display_metadata holds the variable’s display configuration under a single key naming its structural type — number (for number, percent, and no_separator), table, bar_chart, or pie_chart:
The inner object carries the same fields as the matching display object in a calculation result — decimal_format for a scalar; start_row_index, columns, and rows for a table; series or slice configuration for a chart. Unlike a calculation result’s display, the definition is not normalized: optional fields may be absent rather than filled with defaults. The number key holds the configuration for every scalar type, the four time kinds included, so a date variable’s format token is at display_metadata.number.decimal_format:

Display configuration vs. display

The same variable’s formatting appears in two shapes, and display_type does not mean the same thing in each: The overloaded display_type is the gotcha: in a definition it can be table, but in a result display_type is only ever a scalar format and the structural type is in data_type.