---
title: Custom dashboards
summary: >-
  Custom dashboards allow you to build tailored visualizations of Next-Gen WAF
  security data and configure which dashboard displays by default when accessing
  a workspace.
url: https://www.fastly.com/documentation/reference/api/ngwaf/custom-dashboards
---

> **IMPORTANT:** The Fastly Next-Gen WAF API is only available to customers with access to the Next-Gen WAF product in the [Fastly control panel](https://manage.fastly.com). If you have access to the [Next-Gen WAF control panel](https://dashboard.signalsciences.net), check out the [Next-Gen WAF API](https://docs.fastly.com/signalsciences/api/).

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `data_source` | object | Configuration for the dashboard item's <code>data_source</code>. The exact fields depend on <code>data_source.type</code>. |
| `id` | string | ID of the dashboard item. (Read-only) |
| `span` | integer | Grid span for the dashboard item. |
| `subtitle` | string | Subtitle of the dashboard item. |
| `title` | string | Title of the dashboard item. |
| `visualization` | object | Configuration for the dashboard item's <code>visualization</code>. The exact fields depend on <code>visualization.type</code>. |
| `created_at` | string | Timestamp when the dashboard was created. (Read-only) |
| `description` | string | Description of the dashboard. |
| `items` | array | Array of dashboard items. |
| `name` | string | Name of the dashboard. |
| `updated_at` | string | Timestamp when the dashboard was last updated. (Read-only) |
| `dashboard_id` | string | ID of the default dashboard to set for the workspace. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `type` | string | Type of data source. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `config` | object | Data source <code>config</code> object for data source <code>type</code> <code>ngwaf.v1.workspaces.timeseries</code>. Use this object as <code>data_source.config</code>. |
| `type` | string | Type of data source. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `metrics` | array | Array of metric names. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `config` | object | Visualization <code>config</code> object for visualization <code>type</code> <code>chart</code>. Use this object as <code>visualization.config</code>. |
| `type` | string | Type of visualization. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `calculation_method` | string | Method for calculating aggregated values. |
| `format` | string | Format for displaying values. |
| `plot_type` | string | Type of plot for visualization. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `type` | string | Type of visualization. |

## Data model

| Field | Type | Description |
|-------|------|-------------|
| `type` | string | Type of visualization. |

## API endpoints

### List default dashboards

**GET** `/ngwaf/v1/default-dashboards`

Returns all default dashboards across all workspaces for the current user.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `limit` | integer | query | No | Limit how many results are returned. |

### Get workspace default dashboard

**GET** `/ngwaf/v1/workspaces/{workspace_id}/default-dashboard`

Retrieves the default dashboard configuration for a workspace.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### Set workspace default dashboard

**PUT** `/ngwaf/v1/workspaces/{workspace_id}/default-dashboard`

Updates the default dashboard for a workspace.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### List custom dashboards

**GET** `/ngwaf/v1/workspaces/{workspace_id}/dashboards`

Returns all custom dashboards in a workspace.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `limit` | integer | query | No | Limit how many results are returned. |
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### Create custom dashboard

**POST** `/ngwaf/v1/workspaces/{workspace_id}/dashboards`

Creates a custom dashboard in a workspace.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### Get custom dashboard

**GET** `/ngwaf/v1/workspaces/{workspace_id}/dashboards/{dashboard_id}`

Retrieves a custom dashboard by ID.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `dashboard_id` | string | path | Yes | Unique identifier for the dashboard. |
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### Delete custom dashboard

**DELETE** `/ngwaf/v1/workspaces/{workspace_id}/dashboards/{dashboard_id}`

Removes a custom dashboard by ID.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `dashboard_id` | string | path | Yes | Unique identifier for the dashboard. |
| `workspace_id` | string | path | Yes | The ID of the workspace. |

### Update custom dashboard

**PATCH** `/ngwaf/v1/workspaces/{workspace_id}/dashboards/{dashboard_id}`

Updates a custom dashboard.

**Parameters:**

| Name | Type | In | Required | Description |
|------|------|----|---------|--------------|
| `dashboard_id` | string | path | Yes | Unique identifier for the dashboard. |
| `workspace_id` | string | path | Yes | The ID of the workspace. |
