API keys are for authentication. For webhook signing secrets (Slack, GitHub), see List Webhook Keys.
Platform UI
The platform provides a guided wizard for creating API keys:- Select a preset - Choose from deploy, read-only, agent-runner, or custom
- Configure scopes - Add/remove permission scopes for specific resources
- Choose sharing groups - Select which groups receive access to key-created resources
- Review and create - Confirm settings and generate the key
Key Presets
Presets provide sensible default scopes for common use cases:| Preset | Icon | Default Scopes | Use Case |
|---|---|---|---|
| Deploy | :rocket: | namespace:admin, agent:editor, project:editor | CI/CD pipelines, deployments |
| Read-Only | :eye: | agent:viewer, project:viewer | Monitoring, dashboards |
| Agent Runner | :robot: | agent:viewer, project:editor | Execute tasks, manage files |
| Custom | :gear: | (none) | Manual scope configuration |
Scopes
Each scope grants a role on a specific resource. Scopes follow this structure:Valid Roles by Resource Type
| Resource Type | Valid Roles |
|---|---|
org | admin, member |
namespace | admin |
project | discoverer, viewer, editor, owner |
agent | discoverer, viewer, editor, owner, executor |
The
executor role is legacy and is normalized to viewer internally, but still grants run permission.Scope Examples
Namespace admin - Full control over a namespace and its contents:Sharing Groups
API keys can be members of sharing groups. When a key creates a resource (agent or project), sharing groups automatically receiveowner access to that resource.
How it works:
- Key creation - The key’s service user is added as a member to each sharing group
- Resource creation - When the key creates an agent/project, each sharing group gets
ownerrole - Effect - All members of the sharing groups automatically get owner access
- A deploy key creates agents during CI
- The engineering team’s group automatically gets owner access to those agents
- Team members can manage and debug without manual permission grants