Skip to Content
GuidesEnvironment Vault

Environment Vault

Store, organize, and manage environment variables for each project environment. All values are encrypted with AES-256-GCM at rest and decrypted only in-memory for authorized requests.


Environments

Each project supports four tiers:

EnvironmentPurpose
DEVELOPMENTLocal development configuration.
STAGINGPre-production for testing and QA.
PRODUCTIONLive production configuration.
GLOBALShared defaults across all environments (e.g., API base URLs, feature flags).

Environment-specific values take precedence over GLOBAL.


Vault Groups

Vault groups organize environments within a project — by microservice, region, or deployment target. Each group contains its own set of variables per environment tier.

To create one: open the Vault tab, click New Vault Group, and enter a name (e.g., api-server, us-east-1).


Managing Variables

Adding a Variable

Select an environment, click Add Variable, and fill in:

FieldRequiredDescription
KeyYesVariable name (e.g., DATABASE_URL). Must be unique within the environment.
ValueYesEncrypted immediately upon save.
DescriptionNoWhat this variable is for.
Validation RuleNoRegex pattern enforced on save and update.
Required for Local SetupNoIncluded when generating .env.example files.
Rotation PolicyNoHow often to rotate (30, 60, or 90 days). DepVault alerts when due.

Editing and Deleting

Click a variable row to edit. Each save creates a new version automatically. To delete, click the delete icon and confirm — deletion is permanent.


Role-Based Access

RoleView keysDecrypt valuesEdit variables
Owner / EditorYesYesYes
ViewerYesNoNo

Version History

Every value update creates a version entry with the previous value, timestamp, and author. Open a variable’s History tab to browse versions. Click Rollback on any version to restore it as the current value.


Bulk Import and Export

Supported Formats

.env, appsettings.json, secrets.yaml, config.toml

Web UI

Use the Import and Export buttons in the Vault tab. On import, review parsed key-value pairs and choose to skip or overwrite existing keys.

CLI

# Export variables to a file depvault env pull --vault-group <id> --environment PRODUCTION --format env --output .env # Import variables from a file depvault env push --vault-group <id> --file .env

Pull Flags

FlagDescriptionDefault
--vault-groupVault group ID.Required
--environmentDEVELOPMENT, STAGING, PRODUCTION, or GLOBAL.DEVELOPMENT
--formatenv, appsettings.json, secrets.yaml, config.toml.env
--outputFile path. Omit for stdout.stdout

Push Flags

FlagDescriptionDefault
--vault-groupVault group ID. Prompts interactively when omitted.Interactive
--filePath to the file to import. Auto-detects env files when omitted.Interactive
--environmentTarget environment.DEVELOPMENT

In interactive mode, the CLI prompts for vault group and file selection when flags are omitted.

List Variables

depvault env list --vault-group <id> --environment DEVELOPMENT

Values are masked by default. Use --output json for full decrypted values (use with caution).

Diff Environments

depvault env diff --vault-group <id> --environments DEVELOPMENT,PRODUCTION

See the Environment Diff guide for details.


Generate .env.example

Click Generate .env.example in the Vault tab to create a file with keys and placeholders — no real secrets. Variables flagged as Required for Local Setup are included automatically. Safe to commit to version control.