Overview
Two small primitives keep credentials out of places they do not belong:- Secrets are workspace-scoped named values (
OPENAI_API_KEY,GITHUB_TOKEN, …) stored encrypted. The API never returns a value once stored. Agent environments reference secrets by name. - Model access keys are API keys bound to one deployment. They authenticate only that deployment’s inference routes, so you can give one to an agent sandbox, a coding assistant or another hosting provider without exposing your workspace.
Secrets
Names follow environment-variable syntax ([A-Za-z_][A-Za-z0-9_]{0,63}), because that is how agent sessions receive them.
PUT on an existing name replaces the value in place. Secrets are visible only inside the workspace that created them.
Model access keys
A normal API key can do everything in your workspace. A model access key can do exactly four things, all on one deployment:
Everything else, including other deployments, returns
401.
Managed agent sessions mint a short-lived model access key per session automatically when an environment’s model is a Veri deployment.

