dashboards

Patch a dashboard's spec.meta document (RFC 6902, optimistic concurrency).

Applies an RFC 6902 JSON Patch to the dashboard's spec.meta document (brief, purpose, audience, keyQuestions, dataAsOf, per-panel meta.panels[id].purpose/assumptions, etc. — see #/components/schemas/Meta) — without touching any page or element row or its revision history (DVT-2938). This is the non-destructive, surgical alternative to a full-spec resend (PATCH /v1/dashboards/{id} or dvt_dashboard_apply_spec), which re-keys every page and element to fresh UUIDs and resets their revision history.

Forbidden paths (400 invalid-patch): a whole-document replace ("" or /); /createdBy (immutable creation provenance); and documentationStale — both the dashboard-level /documentationStale and its per-panel sibling /panels/{id}/documentationStale (a server-set freshness signal, DVT-267) — server-set; not patchable through this route. This guard is value-aware, not just path-aware: a parent-path op (e.g. replacing or removing the whole /panels object, a single /panels/{id} entry, or a move/copy that relocates a panel) is also rejected whenever it would change a documentationStale value or forge one true on a newly added panel. Removing a panel takes its flag with it and is allowed; a replace that restates the same flag value is allowed.

The body is a pure patch document, so the current dashboard version is supplied out-of-band: pass it via the version query parameter or an If-Match header. A stale version returns 409.

Provenance (DVT-1658): pass an optional reason query parameter (or the X-Dvt-Change-Reason header) explaining why the change was made — it is recorded as the new dashboard revision's change summary. A reason is NOT required here (matching PATCH /v1/dashboards/{id}/pages/{pageId}, not PatchElement's DVT-1792 requirement); an unsupplied reason falls back to a generated summary.

patch/v1/dashboards/{id}/meta

Request

  • Base URL: http://localhost:8080
  • URL: http://localhost:8080/v1/dashboards/{id}/meta
  • Auth: one of:
    • API key in cookie dvt_session
    • HTTP bearer

Query parameters

versioninteger

The dashboard's current version (optimistic concurrency). Required unless supplied via If-Match.

reasonstring

Optional provenance note (the "why") recorded as the new dashboard revision's change summary (DVT-1658). 1–280 characters. May also be supplied via the X-Dvt-Change-Reason header. Falls back to a generated summary when omitted.

Headers

If-Matchstring

Alternative to the version query parameter — the dashboard's current version.

Response

Dashboard meta updated; returns the full dashboard.

Changes

No recorded changes to this operation across all 1 revision of this API.