> ## 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.

<h2 id="list-dashboards">
  List dashboards
</h2>

```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.

<h2 id="create-a-dashboard">
  Create a dashboard
</h2>

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) |

<h2 id="update-a-dashboard">
  Update a dashboard
</h2>

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.

<h2 id="next-steps">
  Next steps
</h2>

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


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.