Skip to content

Environments & Variables

Environments are named sets of key-value variables scoped to a project. Switching the active environment changes the values injected into all probes and chains without modifying any probe configuration. This lets you reuse the same probes against different targets (e.g. dev, staging, prod).

Environments belong to a project — not a bundle. Open the project dashboard (click the project chip in the app bar, then Project Dashboard) to manage its environments. The environment editor is the main (left) panel of the dashboard; the linked bundles, probes, chains and scripts sit in the panel on the right.

The active project and its active environment are always visible in the app bar:

App bar showing active project chip and environment chip

In the project dashboard, type a name in the environment name input at the top of the editor (e.g. dev, staging) and click the + button. Each environment becomes a tab — click a tab to edit that environment.

Project dashboard — environment editor with environment tabs

With an environment tab selected, its actions appear in the action toolbar at the top of the app:

ActionEffect
SavePersists the environment’s variables
CloneDuplicates the environment as … (copy)
RenameRenames the selected environment
DeleteRemoves it (with a confirmation prompt)
ExportDownloads it as a standard environment file (<name>.environment.json)
ImportAdds an environment from a file (see below)

Add key-value pairs to the environment. Variable names are case-sensitive.

KeyValue
hostapi.dev.example.com
tokendev-secret-token
emailtest@example.com

Variable table with several rows, edit and delete icons per row

Reference a variable anywhere a text field is supported using double curly braces:

https://{{host}}/api/users
Authorization: Bearer {{token}}

Supported fields per probe type:

ProbeFields
HTTPURL, body, headers, query parameters, cookies
SMTPHost, each command’s data
IMAPHost, each command’s data
LDAPHost, DN, password, filter, attribute, value
DNSResolver host, query name
SpamAssassinHost, message body

Click the environment chip in the app bar to open the environment picker for the active project. Click any environment to activate it in one step. To deactivate all environments, choose No environment at the top of the list.

Environment picker menu — No environment and available environments

The active environment per project is stored locally and persists across sessions — it is restored automatically the next time you open the app or switch back to that project.

The active environment is stored locally and does not affect other users.

If a probe defines its own inline variables with the same name as an environment variable, the probe’s inline variable wins.

Use Export (in the action toolbar with an environment selected) to download the environment as a standard environment file. The file uses the common environment schema, so it imports into other request tools as well as back into VirtuProbe.

Use Import to add an environment from a file. Supported formats:

  • A standard environment export (.json)
  • A dotenv file (.env) — KEY=value lines
  • A Bruno environment file

The imported environment is created in the active project and selected automatically.

Chains resolve variables server-side at execution time using the active project’s environment. Variables produced by extractors in earlier steps take precedence over environment variables of the same name.