> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hopx.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Environment Variables

> Complete guide to managing environment variables in HopX sandboxes - getting, setting, updating, and clearing environment variables. Learn how to configure execution environments, set variables for code execution, manage variables across sandbox sessions, and use environment variables in Python and JavaScript SDKs or REST API.

Manage environment variables in HopX sandboxes to configure execution environments. This hub covers all environment variable operations, from basic get/set to advanced bulk updates.

## Related

* [CLI Environment Variables](/cli/commands/env) - Environment variables from CLI

## What You'll Learn

* How to get and set environment variables
* How to update existing variables
* How to clear all environment variables
* How to use environment variables in code execution
* How to manage variables across sandbox sessions

## Environment Variables Overview

| Operation                                           | SDK Method                            | API Endpoint  |
| --------------------------------------------------- | ------------------------------------- | ------------- |
| **[Getting](/core-concepts/environment/getting)**   | `sandbox.env.get()` / `env.get_all()` | `GET /env`    |
| **[Setting](/core-concepts/environment/setting)**   | `sandbox.env.set()` / `env.set_all()` | `PUT /env`    |
| **[Updating](/core-concepts/environment/updating)** | `sandbox.env.update()`                | `PATCH /env`  |
| **[Clearing](/core-concepts/environment/clearing)** | `sandbox.env.clear()`                 | `DELETE /env` |

## Core Concepts

### Getting Environment Variables

Retrieve environment variables from sandboxes.

* **[Getting Environment Variables](/core-concepts/environment/getting)** - Get environment variables
* **SDK**: [Python: sandbox.env.get()](/sdk/python/environment-variables#get) | [Python: sandbox.env.get\_all()](/sdk/python/environment-variables#get_all) | [JavaScript: sandbox.env.get()](/sdk/javascript/environment-variables#get) | [JavaScript: sandbox.env.getAll()](/sdk/javascript/environment-variables#getall)
* **API**: [GET /env](/api/vm-agent/get-env)

### Setting Environment Variables

Set environment variables in sandboxes.

* **[Setting Environment Variables](/core-concepts/environment/setting)** - Set environment variables
* **SDK**: [Python: sandbox.env.set()](/sdk/python/environment-variables#set) | [Python: sandbox.env.set\_all()](/sdk/python/environment-variables#set_all) | [JavaScript: sandbox.env.set()](/sdk/javascript/environment-variables#set) | [JavaScript: sandbox.env.setAll()](/sdk/javascript/environment-variables#setall)
* **API**: [PUT /env](/api/vm-agent/set-env) | [POST /env](/api/vm-agent/set-env)

### Updating Environment Variables

Update existing environment variables without clearing others.

* **[Updating Environment Variables](/core-concepts/environment/updating)** - Update environment variables
* **SDK**: [Python: sandbox.env.update()](/sdk/python/environment-variables#update) | [JavaScript: sandbox.env.update()](/sdk/javascript/environment-variables#update)
* **API**: [PATCH /env](/api/vm-agent/update-env)

### Clearing Environment Variables

Remove all environment variables from sandboxes.

* **[Clearing Environment Variables](/core-concepts/environment/clearing)** - Clear all environment variables
* **SDK**: [Python: sandbox.env.clear()](/sdk/python/environment-variables#clear) | [JavaScript: sandbox.env.clear()](/sdk/javascript/environment-variables#clear)
* **API**: [DELETE /env](/api/vm-agent/clear-env)

## SDK Reference

### Python SDK

Complete reference for Python environment variable operations.

* **[Environment Variables Module](/sdk/python/environment-variables)** - Complete environment API
  * `env.get()` - Get single variable
  * `env.get_all()` - Get all variables
  * `env.set()` - Set single variable
  * `env.set_all()` - Set all variables
  * `env.update()` - Update variables
  * `env.clear()` - Clear all variables

### JavaScript SDK

Complete reference for JavaScript/TypeScript environment variable operations.

* **[Environment Variables Module](/sdk/javascript/environment-variables)** - Complete environment API
  * `env.get()` - Get single variable
  * `env.getAll()` - Get all variables
  * `env.set()` - Set single variable
  * `env.setAll()` - Set all variables
  * `env.update()` - Update variables
  * `env.clear()` - Clear all variables

## API Reference

### VM Agent API

REST API endpoints for environment variable operations.

* **[VM Agent API Overview](/api/vm-agent/overview)** - API overview
* **[Get Environment Variables](/api/vm-agent/get-env)** - `GET /env` - Get all variables
* **[Set Environment Variables](/api/vm-agent/set-env)** - `PUT /env` - Set all variables
* **[Update Environment Variables](/api/vm-agent/update-env)** - `PATCH /env` - Update variables
* **[Clear Environment Variables](/api/vm-agent/clear-env)** - `DELETE /env` - Clear all variables

## Quick Start

If you're new to environment variables, start here:

1. **[Getting Environment Variables](/core-concepts/environment/getting)** - Read environment variables
2. **[Setting Environment Variables](/core-concepts/environment/setting)** - Set your first variable
3. **[Updating Environment Variables](/core-concepts/environment/updating)** - Update existing variables

## Related Topics

* **[Code Execution](/core-concepts/code-execution/synchronous)** - Use environment variables in code
* **[Sandboxes](/core-concepts/sandboxes/creating)** - Set variables when creating sandboxes
* **[File Operations](/core-concepts/filesystem/reading)** - Configure file paths with variables
* **[Commands](/core-concepts/commands/running)** - Use variables in shell commands

## Next Steps

* Learn about [Code Execution](/core-concepts/code-execution/synchronous) to use variables in code
* Explore [Setting Environment Variables](/core-concepts/environment/setting) for configuration
* Review [Updating Environment Variables](/core-concepts/environment/updating) for incremental changes
* Check out [Sandboxes](/core-concepts/sandboxes/creating) for initial configuration
