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

# Dashboard as Private Sets

> Use the Validator Dashboard to organize validators into queryable groups

## Overview

Instead of manually tracking validator indices, you can use the [Validator Dashboard](https://beaconcha.in/dashboard) to create **private sets** of validators. Once configured, query your entire dashboard or specific groups using a single `dashboard_id`.

<Note>
  **Validator Selector:** The `dashboard_id` and `group_id` selectors work with all validator endpoints including `/api/v2/ethereum/validators/rewards-aggregate`, `/api/v2/ethereum/validators/rewards-list`, and `/api/v2/ethereum/validators/performance-aggregate`.
</Note>

***

## Why Use Dashboard Selectors?

<CardGroup cols={2}>
  <Card title="Organized Groups" icon="layer-group">
    Create custom validator groups to represent nodes, servers, or client configurations. Query rewards for each group separately using `group_id`.
  </Card>

  <Card title="Scales with Add-ons" icon="arrow-up-right-dots">
    With [premium or Add-on subscriptions](https://beaconcha.in/premium), your dashboard can scale up to 320,000+ ETH in stake.
  </Card>

  <Card title="No Index Tracking" icon="list-check">
    Add validators once to your dashboard, then query by `dashboard_id` without maintaining lists of indices.
  </Card>

  <Card title="Real-Time Monitoring" icon="chart-line">
    The dashboard UI provides real-time slot visualization and performance metrics alongside API access.
  </Card>
</CardGroup>

***

## Setting Up Your Dashboard

### Step 1: Create a Dashboard

Visit [beaconcha.in/dashboard](https://beaconcha.in/dashboard) and create a new dashboard.

### Step 2: Add Validators

You can add validators using multiple methods:

| Method                 | Description                          | Best For            |
| ---------------------- | ------------------------------------ | ------------------- |
| Validator indices      | Enter indices like `1, 2, 3`         | Small sets          |
| Public keys            | Enter full public keys               | Specific validators |
| Deposit address        | All validators from an address       | Operators           |
| Withdrawal credentials | All validators with same credentials | Staking pools       |
| Graffiti matching      | Validators with specific graffiti    | Node operators      |

### Step 3: Create Groups (Optional)

Organize validators into groups to represent:

* Different nodes or servers
* Different client configurations (Lighthouse, Prysm, Teku, etc.)
* Geographic locations
* Customer segments

<Note>
  Groups must currently be created through the [Dashboard UI](/validator-dashboard/validator-groups). Once created, you can manage validators within groups using the [Dashboard Management APIs](/validator-dashboard/manage-validators-api).
</Note>

***

## Finding Your IDs

### Dashboard ID

Your Dashboard ID is visible in the URL:

```
https://beaconcha.in/dashboard/123
                              ^^^
                          Dashboard ID
```

### Group ID

To find your Group ID:

1. Go to your [Validator Dashboard](https://beaconcha.in/dashboard)
2. Click the **Manage Groups** button (grid icon) in the dashboard header
3. In the modal that opens, you'll see a list of all your groups
4. The **Group ID** is displayed next to each group name

<Tip>
  The default group (containing validators not assigned to any specific group) has Group ID `0`.
</Tip>

***

## Querying Rewards by Dashboard

Query rewards for **all validators** in your dashboard:

```bash theme={null}
curl --request POST \
  --url https://beaconcha.in/api/v2/ethereum/validators/rewards-aggregate \
  --header 'Authorization: Bearer <YOUR_API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "chain": "mainnet",
  "validator": {
    "dashboard_id": 123
  },
  "range": {
    "evaluation_window": "30d"
  }
}
'
```

***

## Querying Rewards by Group

Query rewards for a **specific group** within your dashboard by adding `group_id` to your request:

```bash theme={null}
curl --request POST \
  --url https://beaconcha.in/api/v2/ethereum/validators/rewards-aggregate \
  --header 'Authorization: Bearer <YOUR_API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "chain": "mainnet",
  "validator": {
    "dashboard_id": 123,
    "group_id": 456
  },
  "range": {
    "evaluation_window": "all_time"
  }
}
'
```

***

## Managing Your Dashboard via API

Once your dashboard and groups are set up, you can programmatically manage validators:

| Action            | Endpoint                                                          | Documentation                                                                                     |
| ----------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| Add validators    | `POST /api/i/validator-dashboards/{id}/validators`                | [API Reference](/validator-dashboard/manage-validators-api-endpoints/validators_post)             |
| Remove from group | `DELETE /api/i/validator-dashboards/{id}/groups/{gid}/validators` | [API Reference](/validator-dashboard/manage-validators-api-endpoints/groups_delete)               |
| Bulk delete       | `POST /api/i/validator-dashboards/{id}/validators/bulk-deletions` | [API Reference](/validator-dashboard/manage-validators-api-endpoints/validators_bulk_delete_post) |

<Note>
  Dashboard management APIs require an [Orca subscription](https://beaconcha.in/premium).
</Note>

***

## Dashboard Tiers

Dashboard capacity is based on **Max Stake (ETH)**, not validator count:

| Tier    | Max Stake  | Dashboards | Price/mo | Best For               |
| ------- | ---------- | ---------- | -------- | ---------------------- |
| Free    | —          | 1          | Free     | Individual stakers     |
| Guppy   | 3,200 ETH  | 1          | €8.99\*  | Small operators        |
| Dolphin | 9,600 ETH  | 2          | €25.99\* | Professional operators |
| Orca    | 32,000 ETH | 2          | €39.99\* | Large operators        |

\*Prices for annual billing, excluding VAT

### Premium Add-Ons

Need more capacity? Add-ons stack on top of your base tier:

| Add-On       | Extra Capacity             | Price/mo  |
| ------------ | -------------------------- | --------- |
| +32,000 ETH  | +32,000 ETH per dashboard  | €59.99\*  |
| +320,000 ETH | +320,000 ETH per dashboard | €359.99\* |

Upgrade at [beaconcha.in/premium](https://beaconcha.in/premium) to increase your dashboard capacity. Contact [support](https://beaconcha.in/pricing) for even higher limits.

***

## Best Practices

<CardGroup cols={2}>
  <Card title="Query by Dashboard or Group" icon="table-columns">
    Use `dashboard_id` to query all validators, or add `group_id` to filter by a specific group.
  </Card>

  <Card title="Organize by Infrastructure" icon="layer-group">
    Create groups by node, client, or geographic location to isolate performance metrics.
  </Card>

  <Card title="Use Meaningful Names" icon="tag">
    Name groups clearly so API results are easy to interpret and report on.
  </Card>

  <Card title="Regular Audits" icon="magnifying-glass">
    Periodically verify your dashboard contains all expected validators.
  </Card>
</CardGroup>

***

## Related Resources

* [Introduction](/use-cases/rewards-introduction) — Overview and endpoint comparison
* [Validator Dashboard Introduction](/validator-dashboard/introduction) — Full dashboard documentation
* [Validator Groups](/validator-dashboard/validator-groups) — Creating and managing groups
* [Dashboard Management APIs](/validator-dashboard/manage-validators-api) — API reference
