---
title: "Favorite Dashboard"
method: PUT
path: "/api/v1/dashboards/{dashboard_id}/favorite"
tags: ["dashboards"]
---

# Favorite Dashboard

`PUT /api/v1/dashboards/{dashboard_id}/favorite`

Mark this dashboard as a favourite for the current user (idempotent).

Per-user state, but VIEWER on the resource is still required: company
membership alone would let any member toggle a favourite on a dashboard
they cannot see and use the 403-vs-404 split to enumerate dashboard ids.
The permission check runs BEFORE the load so both "missing" and
"inaccessible" collapse to 403 for non-owners — matching
``PUT /apps/{id}/favorite``, and the OPPOSITE order of ``get_dashboard``
(which loads first, then checks — see that function and
domains/dashboards/CLAUDE.md for why this pair is the exception).

## Path parameters

- `dashboard_id` string, uuid, required

## Response `200`

Successful Response

- DashboardRead
  - `id` string, uuid, required
  - `company_id` string, uuid, required
  - `project_id` string, uuid, nullable
  - `is_favorite` boolean
  - `user_id` string, uuid, required
  - `name` string, required
  - `description` string, required
  - `status` string, required
  - `current_version_id` string, uuid, nullable
  - `bundle_url` string, nullable, required
  - `bundle_css` string, nullable, required
  - `bundle_imports` string[], nullable, required
  - `error_message` string, nullable, required
  - `is_suppressed` boolean, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422` — Validation Error

## Changes

> 17 revisions in range; 1 not diffed.

- **2026-09-03** `307ede8c429b` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/netter/apis/dmi-backend/changes/api/v1/dashboards/:dashboard_id/favorite/put.md)

---

[API](https://skmtc.dev/netter/apis/dmi-backend.md) · [All operations](https://skmtc.dev/netter/apis/dmi-backend/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/netter/dmi-backend/revisions/80a1c4d5e318/schema)
