Sometimes, you may want to let users from unauthorized environments, like a browser, download files from the sandbox.
For this use case, you can use pre-signed URLs to let users download files securely.All you need to do is create a sandbox with the secure: true option. A download URL will then be generated with a signature that allows only authorized users to access files.
You can optionally set an expiration time for the URL so that it will be valid only for a limited time.
import fs from 'fs'import { Sandbox } from 'e2b'// Start a secured sandbox (all operations must be authorized by default)const sandbox = await Sandbox.create(template, { secure: true })// Create a pre-signed URL for file download with a 10 second expirationconst publicUrl = await sandbox.downloadUrl( 'demo.txt', { useSignatureExpiration: 10_000, // optional },)// Download a file with a pre-signed URL (this can be used in any environment, such as a browser)const res = await fetch(publicUrl)const content = await res.text()