> ## Documentation Index
> Fetch the complete documentation index at: https://docs.appsignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Dashboards

> List, create, and update an app's dashboards from the terminal.

The `dashboards` command manage an app's dashboards from the terminal: list the existing ones, create a dashboard, and update a dashboard's title or description.

Each command targets one application, by name and environment (`--app "MyApp" --environment production`) or by ID (`--app-id <APP_ID>`, the long hexadecimal app ID from `appsignal-cli apps list`). The `--environment` flag is only needed when several apps share a name. Each command uses your default organization unless you pass `--org`. See [Apps and organizations](/cli/apps) for how apps are identified.

## List dashboards

```sh Shell theme={null}
appsignal-cli dashboards list --app "MyApp" --environment production
```

The list includes each dashboard's ID, which you need to update one.

## Create a dashboard

A new dashboard needs a title, and can take an optional description:

```sh Shell theme={null}
appsignal-cli dashboards create --app "MyApp" --environment production \
  --title "Checkout health" --description "Latency and error rate for checkout"
```

| Flag                   | Description                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| `--title <title>`      | Dashboard title (required)                                                                 |
| `--description <text>` | Optional description                                                                       |
| `--app <name>`         | App to create the dashboard in (add `--environment` when the name isn't unique)            |
| `--environment <env>`  | Environment, used with `--app`                                                             |
| `--app-id <id>`        | The app's ID (a long hexadecimal string), as an alternative to `--app` and `--environment` |
| `--org <slug>`         | Organization slug (uses your default if omitted)                                           |

## Update a dashboard

Pass the dashboard's `--id` (from `dashboards list`) along with the new title:

```sh Shell theme={null}
appsignal-cli dashboards update --id <DASHBOARD_ID> --app "MyApp" --environment production \
  --title "Checkout health" --description "Updated description"
```

| Flag                   | Description                                                                                |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| `--id <id>`            | ID of the dashboard to update (required; from `dashboards list`)                           |
| `--title <title>`      | New title (required)                                                                       |
| `--description <text>` | Optional description                                                                       |
| `--app <name>`         | App the dashboard belongs to (add `--environment` when the name isn't unique)              |
| `--environment <env>`  | Environment, used with `--app`                                                             |
| `--app-id <id>`        | The app's ID (a long hexadecimal string), as an alternative to `--app` and `--environment` |
| `--org <slug>`         | Organization slug (uses your default if omitted)                                           |

`--title` is required even when you only change the description.

## Next steps

A dashboard visualizes your metrics. To get alerted when one crosses a threshold, set up [anomaly detection triggers](/cli/triggers).
