Environments
How Userbox isolates data, API keys, and configuration across development, staging, and production.
Environments
An environment is an isolated slice of your Userbox account. Every account is provisioned with three environments — you cannot add or remove them.
The three-environment model
| Environment | Slug | Purpose | Recommended usage |
|---|---|---|---|
| Development | development | Local and CI testing | Use with test data; credentials never leave your dev machine |
| Staging | staging | Pre-production validation | Mirror of production config; safe for integration tests |
| Production | production | Live traffic | Real users, real data; treat credentials with care |
Isolation guarantees
Environments are fully isolated from each other. Isolation applies at four layers:
- Data isolation — users, workspaces, memberships, and permissions created in development do not exist in production and vice versa.
- API key isolation — an API key belongs to exactly one environment. Keys are not transferable between environments.
- Auth config isolation — allowed redirect URLs, email templates, and session settings are configured per environment.
- Workspace config isolation — workspace definitions and their RBAC configuration are independent per environment.
API keys are environment-scoped. A key created in development will not work in production and vice versa. This is the most common integration mistake — if you get an authentication error, check that your API key matches the environment you are targeting.
Switching environments in the console
The Userbox console shows one environment at a time. Use the environment switcher in the top navigation bar to move between development, staging, and production. API keys, users, and workspace configuration shown in the console are always scoped to the currently selected environment.
What's next
- Workspaces — Access contexts within an environment