Update an existing chart on a dashboard board. Modify the chart query, type, title, or visualization settings through the Formo API.
Workspace API key (e.g. formo_xxx). Create one in the Formo dashboard under Team Settings > API Keys.
Request body for updating an existing chart.
ID of the chart to update.
Project the chart belongs to.
Visualization type. Determines which other fields are required:
chart_type | Extra required fields |
|---|---|
table | query |
number | query (must return 1 row × 1 column) |
bar | query, x_axis, y_axis (≥ 1) |
line | query, x_axis, y_axis (≥ 1) |
pie | query, y_axis (exactly 1) |
stacked | query, x_axis, y_axis (exactly 1), group_by |
funnel | steps (≥ 2), query placeholder "SELECT 1" |
user_paths | query, settings.startStep |
retention | none (query ignored) |
table, number, funnel, bar, line, pie, stacked, user_paths, retention Display name shown on the chart and board.
1SQL query that powers the chart.
funnel — pass "SELECT 1"; the actual query is auto-generated from steps.retention — can be omitted or pass ""; data is fetched from the retention pipe directly.1Optional description.
Column name for the X axis. Required for bar, line, and stacked.
Column name(s) used as Y axis metrics.
bar / line — at least 1 element required.pie / stacked — exactly 1 element required.Column to group / stack series by. Required for stacked.
Ordered list of funnel steps. Required for funnel (minimum 2 steps).
Each element is a FunnelStep — add property filters as extra keys on the step object (e.g. "rdns": { "op": "equals", "value": "io.metamask" }).
2Chart-type-specific configuration. The fields that apply depend on chart_type:
funnelType, conversionWindow, breakdownstartStep, endStep, maxSteps, nodesPerStep, conversionWindow, filtersretentionFilter, retentionUserFiltersAll fields are optional at the schema level; see per-type validation rules for which are functionally required.