Snapshots let you create a persistent point-in-time capture of a running sandbox, including both its filesystem and memory state.
You can then use a snapshot to spawn new sandboxes that start from the exact same state.The original sandbox continues running after the snapshot is created, and a single snapshot can be used to create many new sandboxes.
The sandbox is briefly paused during the snapshot process but automatically returns to running state. The sandbox ID stays the same after the snapshot completes.
During the snapshot, the sandbox is temporarily paused and resumed. This causes all active connections (e.g. WebSocket, PTY, command streams) to be dropped. Make sure your client handles reconnection properly.
The snapshot ID can be used directly with Sandbox.create() to spawn a new sandbox from the snapshot. The new sandbox starts with the exact filesystem and memory state captured in the snapshot.
Copy
Ask AI
import { Sandbox } from '@e2b/code-interpreter'const snapshot = await sandbox.createSnapshot()// Create a new sandbox from the snapshotconst newSandbox = await Sandbox.create(snapshot.snapshotId)
import { Sandbox } from '@e2b/code-interpreter'// Returns true if deleted, false if the snapshot was not foundconst deleted = await Sandbox.deleteSnapshot(snapshot.snapshotId)