---
title: "Get usage stats for a dashboard"
method: GET
path: "/api/v2/dashboards/{dashboard_id}/usage"
tags: ["Dashboards"]
---

# Get usage stats for a dashboard

`GET /api/v2/dashboards/{dashboard_id}/usage`

## Request

- Base URL: `https://api.datadoghq.com`
- URL: `https://api.datadoghq.com/api/v2/dashboards/{dashboard_id}/usage`
- Auth: one of:
  - API key in header `DD-API-KEY` and API key in header `DD-APPLICATION-KEY`
  - OAuth 2
    - Authorization code: `/oauth2/v1/authorize`
    - Token URL: `/oauth2/v1/token` scopes: `dashboards_read`

Get usage statistics for a single dashboard. The response includes view counts, the most recent view and edit times, widget counts, and the dashboard quality score. View-count fields depend on Real User Monitoring (RUM) and are `null` or `0` in orgs without RUM.

## Path parameters

- `dashboard_id` string, required

## Response `200`

OK

- DashboardUsageResponse: Response containing usage statistics for a single dashboard.
  - `data` DashboardUsage, required: A single dashboard usage record.
    - `attributes` DashboardUsageAttributes, required: Usage statistics for a dashboard. The `viewer` field and all view-count fields (`total_views`, `viewed_at`, `total_views_by_type`) are populated only when Real User Monitoring (RUM) is active for the org.
      - `author` DashboardUsageUser, nullable: A user referenced from a dashboard usage record (author or viewer).
        - `handle` string: Datadog handle (login) of the user.
        - `id` string: The user ID.
        - `is_disabled` boolean: Whether the user account is disabled.
        - `name` string: Display name of the user.
      - `created_at` string, date-time, nullable: When the dashboard was created.
      - `dashboard_quality_score` number, double, nullable: The dashboard quality score, or `null` when no score is available.
      - `edited_at` string, date-time, nullable: When the dashboard was most recently edited.
      - `org_id` integer, required: The Datadog organization that owns the dashboard.
      - `teams` string[], nullable: Teams the dashboard is tagged with.
      - `title` string: The dashboard title.
      - `total_views` integer: Total view count for the dashboard. Counts only views captured by Real User Monitoring (RUM); `0` in orgs without RUM.
      - `total_views_by_type` object, nullable: View counts keyed by view type (`in_app`, `embed`, `public`, `shared`, `api`, `unknown`). Counts only views captured by Real User Monitoring (RUM); empty in orgs without RUM.
      - `viewed_at` string, date-time, nullable: When the dashboard was most recently viewed. Populated only when Real User Monitoring (RUM) is active for the org; `null` in orgs without RUM.
      - `viewer` DashboardUsageUser, nullable: A user referenced from a dashboard usage record (author or viewer).
        - `handle` string: Datadog handle (login) of the user.
        - `id` string: The user ID.
        - `is_disabled` boolean: Whether the user account is disabled.
        - `name` string: Display name of the user.
      - `widget_count` integer, nullable: The total number of widgets on the dashboard.
      - `widget_count_by_type` object, nullable: Widget counts keyed by widget type. The map includes group widgets and widgets without requests.
    - `id` string, required: The dashboard ID.
    - `type` 'dashboards-usages', required: The type of the resource. Always `dashboards-usages`.

## Other responses

- `400`: Bad Request
- `403`: Forbidden
- `404`: Not Found
- `429`: Too many requests

---

[API](https://skmtc.dev/datadog/apis/datadog-api-v2-collection.md) - [All operations](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/llms.txt) - [OpenAPI document](https://skmtc.dev/datadog/apis/datadog-api-v2-collection/revisions/da68bf029e4c?raw)
