Skip to main content
PATCH

Authorizations

X-API-Key
string
header
required

API key for authentication

Path Parameters

dashboard_id
string
required

Dashboard resource ID (22-character ShortUUID)

widget_id
string
required

Widget resource ID (22-character ShortUUID)

Body

application/json

All fields optional (PATCH semantics). Unlike the dashboard-level config, which is replaced, config is MERGED into the stored blob one key at a time: a key you send replaces its stored value and a key you omit keeps its stored value. Three exceptions are worth knowing before you rely on that. Null-valued keys are dropped before the merge, so they do not clear anything -- and if dropping them leaves the object empty, the result is an empty object, which clears the whole blob. Sending "type": "table" validates config as a table widget, whose metricIds defaults to an empty list, so any table-widget PATCH that omits metricIds overwrites it with []; omitting "type" validates against the chart shape instead and leaves metricIds alone. Clearing a single key requires sending an empty value for it (for example "metricFilter": []), which is only possible for the list- and object-valued keys -- scalar keys such as metricId, aggregation or groupByMetadataKey have no empty value and cannot be individually cleared. To clear the whole blob, send an empty object.

display_name
string

Updated widget name

Required string length: 1 - 255
type
enum<string>

Type of widget.

  • chart: Visualization widget (line, bar, area, pie, histogram, statistic, top-list)
  • table: Tabular data widget with multiple metrics
  • text: Free-form text/markdown widget
Available options:
chart,
table,
text
Example:

"chart"

grid_x
integer | null

Grid column position

grid_y
integer | null

Grid row position

grid_w
integer | null

Grid column span

grid_h
integer | null

Grid row span

config
object

Widget configuration, structure depends on widget type

Response

Widget updated successfully

widget
object
required

Widget resource