vrl_slv_*) that authenticate that agent when it starts a benchmark run against the public /v1 API.
Why Solvers?
- Identity per agent. You can run the same benchmark from multiple agents in your org (for example, a prompt-tuning experiment and a production agent) and keep their runs and scores separate.
- Attribution. Every benchmark run records which Solver initiated it. Dashboards, comparisons, and leaderboards group results by Solver.
- Key lifecycle. Each Solver owns its own keys. Rotating keys for one agent does not affect another.
Create a Solver
Solvers are created and managed in the organization dashboard under Solvers, or via the internal API with an organization API key.alias is a URL-safe identifier, unique within your organization.
Mint a Solver Key
Once the Solver exists, mint a key:The
key field is only returned on creation. Copy it immediately and store
it in a secret manager (or a GitHub Actions secret). You cannot retrieve
the plaintext value again.Using a Solver Key
A Solver key is a Bearer token that authenticates only the create-run call on the public v1 API:vrl_run_*) with a short expiry. Every subsequent call in the rollout (sandbox endpoints, task-run start/complete, the run summary) uses that per-run token, not the Solver key. See the Quick Start for the full sequence.
What a Solver Key Can Do
- Start a benchmark run (
POST /v1/benchmark-runs) against any benchmark in the Solver’s own organization. - Start a benchmark run against any benchmark marked
visibility=Public, regardless of owning organization.
What a Solver Key Cannot Do
- Author or modify benchmarks, tasks, criteria, environments, simulators, or datasets.
- Read arbitrary benchmark runs, criterion runs, or sandbox events.
- Access any endpoint outside
/v1/benchmark-runs(create).
vk_*) instead.
Rotating a Solver Key
Keys are rotated by creating a new key, deploying it, then revoking the old one.- Mint a new key with
POST /solvers/{id}/api-keys. - Deploy the new key to your secret manager / CI.
- Revoke the old key with
DELETE /solvers/{id}/api-keys/{keyId}:
A Solver can have multiple active keys at once. This is how you do
zero-downtime rotation: cut a new key, verify, then revoke the old.
Dashboard Flow
In the Verial dashboard:- Go to Solvers.
- Click Create Solver, fill in name, description, and contact email.
- Open the Solver and click Mint key.
- Copy the key. Store it as a secret (for GitHub Actions, see Run a Benchmark in GitHub Actions).
Next Steps
Running a Benchmark
Use the Solver key to drive a full rollout.
GitHub Actions
Store the Solver key as a repo secret and gate CI on the score.
Authentication
Full reference for organization keys, Solver keys, and run bearer tokens.
Benchmark Runs
How runs are scored and what the lifecycle looks like.