getsentry / getsentry/sentry

Prebuilt dashboards return no widgets via API

Open
#118,337 2 comments 0 reactions 1 assignee View on GitHub

@BYK is already working on this.

Since Aug 6, 2026.

Dominant language
Python
Stars
44.8k
Forks
4.9k
Avg merge
21h 23m
Merged PRs (30d)
607

Description

Prebuilt ("Sentry built") dashboards do not include widget definitions in the API response. The dashboard and widget configurations are stored in the frontend TypeScript configs (static/app/views/dashboards/utils/prebuiltConfigs/) and are never serialized to the API — the backend only stores metadata (title, prebuilt_id, starred status, etc.).

This means any API consumer — such as a CLI or MCP tool — receives an empty widget list for prebuilt dashboards, making them effectively invisible outside the browser UI.

Current behavior

GET /api/0/organizations/{org}/dashboards/{id}/ for a prebuilt dashboard returns the dashboard with widgets: []. The backend comment in organization_dashboards.py acknowledges this explicitly:

Prebuilt dashboards store minimal fields in the database. The actual dashboard and widget settings are coded in the frontend and we rely on matching prebuilt_id to populate the dashboard and widget display.

Gap

  • Any API consumer trying to read or render prebuilt dashboard widgets gets nothing
  • Prebuilt dashboards cover common insight areas (Backend Overview, Web Vitals, HTTP, AI Agents, MCP, etc.) — these are exactly the dashboards non-browser consumers would want to query
  • The existing prebuilt_id field provides a stable key that could be used to return the canonical widget configs server-side

Options

  • Serialize widget configs server-side — move prebuilt widget definitions to the backend and return them in API responses when prebuilt_id is set (preferred; single source of truth)
  • Add a separate endpointGET /api/0/organizations/{org}/dashboards/prebuilt/{prebuilt_id}/ that returns the full widget config
  • Document the limitation — update API docs to note that prebuilt dashboards return no widgets (minimal fix, doesn't unblock API consumers)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.