Skip to main content

E2B

E2B is a cloud code-execution platform that runs AI agent-generated code, files, and processes inside isolated, ephemeral sandbox VMs. It provides a REST API for creating and managing sandboxes, building custom templates (sandbox images), capturing snapshots, and monitoring resource usage across a team. Nexla connects to the E2B API to ingest operational data such as sandboxes, templates, builds, and metrics, and to drive sandbox and template lifecycle actions from your data flows.

E2B icon

Power end-to-end data operations for your E2B API with Nexla. Our bi-directional E2B connector is purpose-built for E2B, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to E2B or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your E2B workflows fast, secure, and fully governed.

Features

Type: API

SourceDestination

  • Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
  • Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
  • API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
  • Request optimization with intelligent batching, retry, and caching to minimize API calls and costs

Prerequisites

Before creating an E2B credential, you need an E2B API key. E2B authenticates every API request with a team API key sent in the X-API-Key request header. API keys are scoped to a team, so the key you use determines which team's sandboxes, templates, and volumes Nexla can access.

To obtain your E2B API key, follow these steps:

  1. Sign in to your E2B account at e2b.dev. If you do not have an account, sign up and create a team first.

  2. Open the E2B dashboard and select the API Keys tab.

  3. If the team you want to use is not already selected, switch to it using the team selector so that the key is created for the correct team.

  4. Click Create Key to generate a new API key, or copy an existing key from the list. E2B API keys begin with the e2b_ prefix.

  5. Copy the API key value and store it securely. Treat the key as a secret, as it grants access to your team's sandboxes and resources.

For complete information about API keys, authentication, and available endpoints, see the E2B documentation.

Authenticate

Credentials required

FieldRequiredSecretDescription
API KeyYesYesYour E2B API key. Obtain it from the E2B dashboard (https://e2b.dev/dashboard?tab=keys).

Create a credential in Nexla

  1. After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.

  2. Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.

  3. Enter your E2B API key in the API Key field. This key authenticates Nexla with the E2B API and is sent in the X-API-Key header on every request. The key is stored securely and should be kept confidential.

  4. Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.

Use as a data source

To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the E2B connector tile, then select the credential that will be used to connect to E2B, and click Next; or, create a new E2B credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common E2B endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.

[Rest API] List Sandboxes

List all running and paused sandboxes for the team, optionally filtered by metadata or state. Use this template to inventory active sandboxes or to feed sandbox IDs into downstream flows.

  • This endpoint is cursor-paginated. Nexla automatically follows the pagination cursor to retrieve subsequent pages of results.

[Rest API] List Sandbox Metrics

List current resource metrics for the given sandboxes for the team. Use this template to retrieve point-in-time metrics for a specific set of sandboxes.

  • Enter a comma-separated list of sandbox IDs (up to 100) in the required Sandbox IDs field to specify which sandboxes to fetch metrics for.

[Rest API] Get Sandbox Metrics

Get resource usage metrics, such as CPU and memory, for a single sandbox over time. Use this template to monitor the resource consumption of an individual sandbox.

  • Enter the identifier of the sandbox to fetch metrics for in the required Sandbox ID field.

[Rest API] Get Sandbox Logs

Get the runtime logs for a single sandbox. Use this template to collect execution logs for auditing, debugging, or analysis.

  • Enter the identifier of the sandbox to fetch logs for in the required Sandbox ID field.

[Rest API] List Snapshots

List all persistent sandbox snapshots for the team. Use this template to inventory saved snapshots that can be restored into new sandboxes.

  • This endpoint is cursor-paginated. Nexla automatically follows the pagination cursor to retrieve subsequent pages of results.

[Rest API] Get Team Metrics

Get resource usage metrics for the team over a time interval. Use this template to track aggregate team-level resource consumption for reporting or capacity planning.

  • Enter the identifier of the team to fetch metrics for in the required Team ID field.

[Rest API] Get Maximum Team Metrics

Get the maximum value of a metric for the team over a time interval. Use this template to find peak usage for capacity and rate-limit analysis.

  • Enter the identifier of the team in the required Team ID field.
  • Select the metric to retrieve the maximum value for in the required Metric field. Supported values are concurrent_sandboxes (the default) and sandbox_start_rate.

[Rest API] List Templates

List all templates, the sandbox images, available to the team. Use this template to inventory the templates that sandboxes can be created from.

  • This endpoint is cursor-paginated. Nexla automatically follows the pagination cursor to retrieve subsequent pages of results.

[Rest API] List Template Builds

List all builds for a given template. Use this template to review the build history of a specific template.

  • Enter the identifier of the template to list builds for in the required Template ID field.
  • This endpoint is cursor-paginated. Nexla automatically follows the pagination cursor to retrieve subsequent pages of results.

[Rest API] Get Template Build Status

Get the status and metadata for a single template build. Use this template to check whether a build has completed and to retrieve its build details.

  • Enter the identifier of the template in the required Template ID field.
  • Enter the identifier of the build in the required Build ID field.

[Rest API] Get Template Build Logs

Get the build logs for a single template build. Use this template to collect build output for troubleshooting failed or slow builds.

  • Enter the identifier of the template in the required Template ID field.
  • Enter the identifier of the build in the required Build ID field.

[Rest API] List Template Tags

List all tags assigned to a template. Use this template to review how templates are labeled and organized.

  • Enter the identifier of the template to list tags for in the required Template ID field.

[Rest API] List Volumes

List all persistent volumes for the team. Use this template to inventory volumes that provide durable storage across sandboxes.

  • This endpoint retrieves all volumes accessible to your team's API key.

Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.

Manual configuration

E2B data sources can also be manually configured to ingest data from any valid E2B API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.

Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new E2B data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.

Use as a destination

Click the + icon on the Nexset that will be sent to the E2B destination, and select the Send to Destination option from the menu. Select the E2B connector from the list of available destination connectors, then select the credential that will be used to connect to E2B, and click Next; or, create a new E2B credential for use in this flow.

Endpoint templates

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common E2B endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

[Rest API] Create Sandbox

Create a new sandbox from a template. Use this template to spin up sandboxes driven by records from a Nexset.

  • Each record is sent as JSON in the request body and must include the templateID of the template to create the sandbox from.

[Rest API] Kill Sandbox

Terminate a running sandbox by ID. Use this template to shut down sandboxes based on records from a Nexset.

  • Enter the identifier of the sandbox to kill in the required Sandbox ID field.

[Rest API] Pause Sandbox

Pause a running sandbox so it can be resumed later. Use this template to suspend sandboxes while preserving their state.

  • Enter the identifier of the sandbox to pause in the required Sandbox ID field.

[Rest API] Fork Sandbox

Snapshot a running sandbox in place and create one or more new sandboxes from that snapshot. Use this template to branch sandbox state into parallel copies.

  • Enter the identifier of the sandbox to fork in the required Sandbox ID field.

[Rest API] Connect Sandbox

Return sandbox connection details, resuming the sandbox first if it is paused. Use this template to reconnect to a sandbox and retrieve its connection information.

  • Enter the identifier of the sandbox to connect to in the required Sandbox ID field.

[Rest API] Set Sandbox Timeout

Set or overwrite the time-to-live for a running sandbox. Use this template to control how long a sandbox stays alive.

  • Enter the identifier of the sandbox to set the timeout for in the required Sandbox ID field.

[Rest API] Update Sandbox Network

Replace the egress network configuration for a running sandbox. Use this template to update a sandbox's outbound network rules.

  • Enter the identifier of the sandbox whose network config to update in the required Sandbox ID field.

[Rest API] Refresh Sandbox

Extend a running sandbox's time-to-live. Use this template to keep long-running sandboxes alive.

  • Enter the identifier of the sandbox to refresh in the required Sandbox ID field.

[Rest API] Create Snapshot

Create a persistent snapshot from a sandbox's current state. Use this template to save sandbox state for later restoration.

  • Enter the identifier of the sandbox to snapshot in the required Sandbox ID field.

[Rest API] Create Template

Create, or build, a new template. Use this template to define new sandbox images from records in a Nexset.

  • Each record is sent as JSON in the request body and must include the build spec fields, such as the dockerfile or steps and resources.

[Rest API] Delete Template

Delete a template by ID. Use this template to remove templates that are no longer needed.

  • Enter the identifier of the template to delete in the required Template ID field.

[Rest API] Update Template

Update a template's metadata. Use this template to modify template properties from records in a Nexset.

  • Enter the identifier of the template to update in the required Template ID field.
  • The updated metadata is sent as JSON in the request body.

[Rest API] Start Template Build

Start a previously requested template build. Use this template to trigger a queued build.

  • Enter the identifier of the template in the required Template ID field.
  • Enter the identifier of the build to start in the required Build ID field.

[Rest API] Assign Template Tags

Assign one or more tags to a template build. Use this template to label template builds from records in a Nexset.

  • Each record is sent as JSON in the request body and should contain the tags to assign.

[Rest API] Delete Template Tags

Delete one or more tags from templates. Use this template to remove template tags based on records in a Nexset.

  • Each record is sent as JSON in the request body and should specify the tags to delete.

[Rest API] Create Volume

Create a new persistent team volume. Use this template to provision durable storage from records in a Nexset.

  • Each record is sent as JSON in the request body and must include a name for the volume.

[Rest API] Delete Volume

Delete a persistent team volume by ID. Use this template to remove volumes that are no longer needed.

  • Enter the identifier of the volume to delete in the required Volume ID field.

Manual configuration

E2B destinations can also be manually configured to send data to any valid E2B API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.

Save & activate

Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured E2B endpoint, open the destination resource menu, and select Activate.

The Nexset data will not be sent to the E2B endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.