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

# Benchmark authentication

> Store benchmark-service credentials and send request-specific headers.

Benchmark-service credentials are separate from the Vals API key used to authenticate with the hosted tracker.

## Store an Authorization credential

```bash theme={null}
valkyrie config auth set <benchmark-name> <credential>
```

The CLI sends the stored value as the `Authorization` header on every request to that benchmark.

List masked credentials or remove one:

```bash theme={null}
valkyrie config auth list
valkyrie config auth remove <benchmark-name>
```

Credentials are stored under `benchmark_auth` in `~/.config/valkyrie/valkyrie.yaml`. See the [`config auth set`](/reference/cli/config#auth-set), [`config auth list`](/reference/cli/config#auth-list), and [`config auth remove`](/reference/cli/config#auth-remove) reference for full syntax.

## Send runtime headers

Use repeatable `-H` or `--header` pairs:

```bash theme={null}
valkyrie run start \
  --benchmark my-benchmark \
  --agent sweagent \
  -H X-Custom-Header my-value \
  -H X-Another-Header another-value
```

Runtime headers merge with the stored credential. An explicit `Authorization` runtime header overrides the stored value for that run.
