Skip to main content

Sandbox

E2B cloud sandbox is a secure and isolated cloud environment. The sandbox allows you to:
  • Access Linux OS
  • Create, list, and delete files and directories
  • Run commands
  • Run isolated code
  • Access the internet
Check docs here. Use Sandbox.create to create a new sandbox.

Example

import { Sandbox } from '@e2b/code-interpreter'

const sandbox = await Sandbox.create()

Methods

createCodeContext()

createCodeContext(opts?: CreateCodeContextOpts): Promise<Context>
Creates a new context to run code in.
Parameters
ParameterTypeDescription
opts?CreateCodeContextOptsoptions for creating the context.
Returns
Promise<Context> context object.

runCode()

runCode(code, opts)
runCode(code: string, opts?: RunCodeOpts & object): Promise<Execution>
Run the code as Python. Specify the language or context option to run the code as a different language or in a different Context. You can reference previously defined variables, imports, and functions in the code.
Parameters
ParameterTypeDescription
codestringcode to execute.
opts?RunCodeOpts & objectoptions for executing the code.
Returns
Promise<Execution> Execution result object.
runCode(code, opts)
runCode(code: string, opts?: RunCodeOpts & object): Promise<Execution>
Run the code for the specified language. Specify the language or context option to run the code as a different language or in a different Context. If no language is specified, Python is used. You can reference previously defined variables, imports, and functions in the code.
Parameters
ParameterTypeDescription
codestringcode to execute.
opts?RunCodeOpts & objectoptions for executing the code.
Returns
Promise<Execution> Execution result object.
runCode(code, opts)
runCode(code: string, opts?: RunCodeOpts & object): Promise<Execution>
Runs the code in the specified context, if not specified, the default context is used. Specify the language or context option to run the code as a different language or in a different Context. You can reference previously defined variables, imports, and functions in the code.
Parameters
ParameterTypeDescription
codestringcode to execute.
opts?RunCodeOpts & objectoptions for executing the code
Returns
Promise<Execution> Execution result object

Interfaces

CreateCodeContextOpts

Options for creating a code context.

Properties

cwd?

optional cwd: string;
Working directory for the context.
Default
/home/user

language?

optional language: string;
Language for the context.
Default
python

requestTimeoutMs?

optional requestTimeoutMs: number;
Timeout for the request in milliseconds.
Default
30_000 // 30 seconds

RunCodeOpts

Options for running code.

Properties

envs?

optional envs: Record<string, string>;
Custom environment variables for code execution.
Default
{}

onError()?

optional onError: (error: ExecutionError) => any;
Callback for handling the ExecutionError object.
Parameters
ParameterType
errorExecutionError
Returns
any

onResult()?

optional onResult: (data: Result) => any;
Callback for handling the final execution result.
Parameters
ParameterType
dataResult
Returns
any

onStderr()?

optional onStderr: (output: OutputMessage) => any;
Callback for handling stderr messages.
Parameters
ParameterType
outputOutputMessage
Returns
any

onStdout()?

optional onStdout: (output: OutputMessage) => any;
Callback for handling stdout messages.
Parameters
ParameterType
outputOutputMessage
Returns
any

requestTimeoutMs?

optional requestTimeoutMs: number;
Timeout for the request in milliseconds.
Default
30_000 // 30 seconds

timeoutMs?

optional timeoutMs: number;
Timeout for the code execution in milliseconds.
Default
60_000 // 60 seconds

Type Aliases

Context

type Context: object;
Represents a context for code execution.

Type declaration

NameTypeDescription
cwdstringThe working directory of the context.
idstringThe ID of the context.
languagestringThe language of the context.
I