# 3pm-backend route `metricLabelValues`

Paths are relative to the backend's origin (https://fleet.edgecr4ft.net, or your own 3pm-backend), not to this site. Index: https://3pm.edgecr4ft.net/docs/backend/api.md

---

tokens:
  claude: 511
  o200k: 340
# GET /api/buckets/{clusterId}/metrics/labels/{label}/values (metricLabelValues)

The values one label takes in this bucket over the last two UTC days, at most 5000.

- auth: an account — Authorization: Bearer 3pmu_<token>, or the dashboard's session cookie
- answer: LabelValues (JSON)

## Details

What one label of `QueryLabel` actually holds in this bucket, to fill a filter with values that exist rather than a regex that might: `{ label, values }`, sorted, at most 5000, over the last two UTC days. `label` is a path argument (`app`, `node`, `instance`, `ns`, `src`, an application's own label name…), not a body field.

## Types

```ts
/** `metricLabelValues(clusterId, label)`. */
interface LabelValues {
  label: QueryLabel;
  values: string[];
}

/** The labels a query may filter or group on; the bucket itself is never one of them. */
/** A built-in label, or an application's own label name (`^[a-z][a-z0-9_]{0,31}$`, not reserved) on a metric that carries it. */
type QueryLabel = "node" | "app" | "instance" | "ns" | "mount" | "window" | "src" | "core" | "iface" | "blockdev" | "sensor" | "gpu" | "array" | "proc" | (string & {});
```
