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

# Settings

> Configure API tokens, GPU pricing, labels, and cloud integrations

The Settings area in Chamber is where Org Admins configure organization-wide options — from API authentication and GPU cost rates to label management and cloud provider integrations. Access it from the **Settings** tab in the sidebar.

## API Tokens

API tokens authenticate the Chamber Kubernetes agent and any direct API integrations with your organization. Manage them under **Settings → Security**.

### Create a Token

<Steps>
  <Step title="Click Create Token">
    Give the token a descriptive name (e.g., "production-cluster-agent") and an optional description.
  </Step>

  <Step title="Set an expiration (optional)">
    Tokens can expire up to 1 year from creation. If left blank, the token does not expire.
  </Step>

  <Step title="Copy the token">
    The full token is shown only once. Copy it immediately — you won't be able to view it again.
  </Step>
</Steps>

<Warning>
  Treat API tokens like passwords. Revoking a token immediately disconnects any agents or integrations using it.
</Warning>

### Manage Existing Tokens

The token list shows each token's:

* **Name** and description
* **Status** — Active, expired, or revoked
* **Last used** — When the token was last used to authenticate
* **Expiration** — When the token expires (if set)

Sort by any column to quickly find tokens. Click **Revoke** to permanently disable a token.

## GPU Pricing

GPU pricing configuration determines how Chamber calculates costs across the Cost Explorer, dashboard, email digests, and AI insights. Set it up under **Settings → GPU Pricing**.

### Configure Rates

The **GPU Pricing** tab lists every GPU type detected in your fleet. For each type, you can set:

| Field                    | Description                                   |
| ------------------------ | --------------------------------------------- |
| **On-Demand Price/Hour** | Hourly cost for on-demand GPU instances       |
| **Spot Price/Hour**      | Hourly cost for spot or preemptible instances |
| **Reserved Price/Hour**  | Hourly cost for reserved capacity (optional)  |
| **Currency**             | Pricing currency (default: USD)               |
| **Notes**                | Free-text field for internal reference        |

Rates apply retroactively to all cost calculations, so historical data in the Cost Explorer updates immediately when you change a rate.

### GPU Type Mappings

The **Type Mappings** tab handles GPU name standardization. Different clusters may report the same hardware under different names (e.g., `NVIDIA A100-SXM4-80GB` vs. `a100`). Type mappings let you consolidate these into a single canonical name so cost and utilization data rolls up correctly.

## Labels

Labels let you tag workloads with custom metadata for filtering, searching, and grouping. By default, all labels support exact-match search. Under **Settings → Labels**, you can promote specific labels to unlock additional capabilities.

### Promoted Labels

Promoting a label key enables:

* **Faceted search** — Filter workloads by label values in the UI
* **Grouping** — Group workloads by label in tables and charts
* **Sorting** — Sort workloads by label values

### Manage the Allowlist

<Steps>
  <Step title="Add a label key">
    Enter the label key you want to promote (e.g., `team`, `environment`, `model-type`). Keys can be up to 255 characters.
  </Step>

  <Step title="Monitor capacity">
    The UI shows your current usage against the limit (default: 20 promoted labels). Plan which labels matter most.
  </Step>

  <Step title="Remove labels">
    Remove a label from the allowlist to revert it to exact-match-only search.
  </Step>
</Steps>

<Note>
  Promoting a label applies to new workloads going forward. Existing workloads are not affected until they are re-indexed.
</Note>

## ODCR (AWS Capacity Reservations)

If you use AWS On-Demand Capacity Reservations (ODCRs), Chamber can automatically track reserved instance utilization alongside your capacity pools. Configure this under **Settings → ODCR**.

### How It Works

Chamber assumes a read-only IAM role in your AWS account to describe EC2 instances associated with your ODCRs. This lets Chamber map reserved capacity to your clusters and track utilization accurately.

### Setup

<Tabs>
  <Tab title="Quick Setup (CloudFormation)">
    Click **Launch Stack** to open a pre-configured CloudFormation template in your AWS console. The stack creates the IAM role with the minimum required permissions. Once deployed, paste the Role ARN back into Chamber.
  </Tab>

  <Tab title="Manual Setup">
    Create an IAM role manually with the following configuration:

    **Trust Policy** — Allows Chamber's AWS account to assume the role with an external ID:

    * Principal: Chamber's AWS account (shown in the UI)
    * Condition: External ID matching `chamber-odcr-{environment}`

    **Permissions Policy** — Read-only access:

    * `ec2:DescribeInstances`

    Paste the resulting Role ARN into Chamber.
  </Tab>
</Tabs>

<Tip>
  The IAM role is strictly read-only — Chamber can only describe EC2 instances. It cannot modify, create, or terminate any resources in your AWS account.
</Tip>
