Skip to main content
An environment is an isolated context within a workspace. Each environment has its own agents, instances, sandboxes, and credentials, keeping production and development cleanly separated.

How it works

Within a workspace, you create environments such as production, staging, and development. Resources are scoped to the active environment, determined by the credential you use. There is no need to pass the environment in requests; it is derived from your API key or OAuth client.

What is isolated per environment

Each environment gets its own independent copy of runtime resources. The fleet and agent registry are shared at the workspace level — only the running infrastructure is separated.
Hexel’s multi-region routing uses the environment to co-locate resources. When you create a production environment in a workspace associated with a region, instances, sandboxes, and data stores are provisioned in that region. This ensures data residency without additional configuration.

Getting started

Create environments in the Console under IAM → Environments. For each environment, create a dedicated API key or OAuth client — the credential determines which environment your requests target.
When submitting orchestration tasks, you pass the environment_id explicitly:
Find your environment_id in the Console under IAM → Environments.

Common mistakes

  • Sharing one credential across environments. This breaks isolation; use a separate credential per environment.
  • Testing in production. Use a development environment for experimentation.

Best practices

  • Maintain at least production and development environments.
  • Issue separate credentials per environment.
  • Mirror configuration across environments to make promotion predictable.

Organizations

The full scoping model.

API Keys

Per-environment credentials.

Service Accounts

Production credentials.

Authentication

How environment scoping is applied.