Dashboards V2 API - Schema, Endpoints & PATCH Updates SigNoz released a redesigned Dashboards V2 API with a new JSON/Terraform schema, partial PATCH updates, key-value tags, personal pins, and enhanced panel styling. The update, rolling out July 27, is backward-compatible and requires no action for most users, but those with scripts or Terraform should migrate to the new API. SigNoz is rolling out a redesigned Dashboards experience. Your existing dashboards, queries, variables, and panels continue to work exactly as they do now. This release keeps all of that intact and adds improvements that make dashboards easier to find, organize, and manage at scale. Dashboards get easier to find and manage: organize with key-value tags, personal pins, shared saved views, and quick cloning, plus a defined JSON/Terraform schema that enables direct editing, partial token-efficient updates, and reliable AI-driven changes. Panels get more expressive: new styling controls fill mode, line interpolation, disconnect lines, show points and PNG/SVG export for sharing in reports and incident write-ups. What you need to know - Dashboards will be migrated in the week of 27th July. - Nothing breaks on the platform. Your existing dashboards keep working, and this rolls out alongside them. - If you don't use Terraform or don't have any scripts directly working with the SigNoz Dashboards APIs, no action is required from you today. If you have scripts that use the Dashboards API directly We suggest you migrate those scripts to use the new V2 Dashboards APIs. You can follow the examples in this guide below. If you have dashboards synced via Terraform The Terraform Provider release corresponding to this SigNoz release will contain the required script to migrate your resources to the new schema. You can run that, then arrange your resources and define any variables on top of that. See the Terraform provider guide https://signoz.io/docs/dashboards/terraform-provider-signoz/ for details. Dashboards V2 API Guide Dashboards APIs now work on a properly enforced schema that follows the Perses https://perses.dev/ schema guidelines. A dashboard is divided into layouts, and each layout has panels arranged in it. Variables can be used to filter data across panels as before. Dashboards also have tags as key: value pairs, which help organize them into groups and provide an easy way to query by key or value. The full schema can be seen in the payload of the new Create Dashboard API https://signoz.io/api-reference/v0.132.1 /operations/CreateDashboardV2 . Bird's eye view of the dashboards schema { "tags": { "key": "string", "value": "string" } , "spec": { "display": { "name": "string", "description": "string" }, "layouts": , "panels": { "panel-name": { / panel details / } }, "variables": } } Dashboard APIs The List and CRUD Create, Read, Update, Delete APIs for dashboards all now get a V2 variant: GET /api/v2/dashboards -- List Dashboards POST /api/v2/dashboards -- Create a Dashboard GET /api/v2/dashboards/{id} -- Fetch Details for a Dashboard PUT /api/v2/dashboards/{id} -- Update a Dashboard DELETE /api/v2/dashboards/{id} -- Delete a Dashboard Locking and unlocking a dashboard get new endpoints: PUT /api/v2/dashboards/{id}/lock -- Lock a Dashboard DELETE /api/v2/dashboards/{id}/lock -- Unlock a Dashboard Users can now personally pin any dashboard, so there's a special List API to get dashboards that takes pins into account: GET /api/v2/users/me/dashboards -- List Dashboards for a User The biggest quality-of-life improvement is the new partial updates API, so that updating dashboards no longer involves building the whole dashboard JSON again: PATCH /api/v2/dashboards/{id} -- Patch a Dashboard Full details of all the APIs are present in the API Reference https://signoz.io/api-reference/v0.132.1 /operations/ListDashboardsV2 . New listing APIs Both List APIs the user-agnostic one and the user-specific one now support pagination. They also get a proper query field where dashboards can be searched by name, description, tags, and other properties using many different operations. Following are some examples. Only the path differs between the two APIs; the API query parameters can be passed the same way. Get 20 latest dashboards curl --location '