Browse Documentation

Reference / sandboxes / generated

POST/v1/sandboxes/{id}/files/read

Read a file from an existing sandbox.

Reads one file through the shared sandbox command boundary. UTF-8 is the default; use base64 for binary content.

Operation IDreadSandboxFile
Success200
AuthenticationBearer key

Path parameters

readSandboxFile path parameters
NameTypeRequirementMeaning
idstringRequiredOpaque, project-scoped Wildflower sandbox ID returned by create. The provider namespace is visible, but the random payload does not encode the provider-native ID.

Optional provider context

These headers are inline overrides. Connected project profiles keep the same fields outside individual requests.

readSandboxFile header parameters
NameTypeRequirementMeaning
X-Provider-WorkspacestringOptionalOptional inline provider workspace override. Required with an inline Blaxel credential and omitted when using a connected profile.

Request and response

Request bodyReadFileInput

HTTP example

This credential-safe request and its representative success response are generated with the operation contract. Replace placeholder IDs and read secrets from your environment.

Request

terminal
curl --fail-with-body --request POST \  "$WILDFLOWER_URL/v1/sandboxes/wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA/files/read" \  -H "Authorization: Bearer $WILDFLOWER_API_KEY" \  -H "Content-Type: application/json" \  --data '{"path":"/tmp/hello.txt","encoding":"utf8"}'

Response / 200

200.json
{  "sandboxId": "wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA",  "path": "/tmp/hello.txt",  "content": "hello",  "encoding": "utf8"}

SDK examples

Use the same operation through any generated client. Each snippet comes from the SDK generator rather than a hand-copied website example.

TypeScriptexample.ts
example.ts
import { Wildflower } from "@wildflowercomputer/sdk";const client = new Wildflower({  wildflowerApiKey: process.env.WILDFLOWER_API_KEY,});const handle = client.sandboxes.attach("wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");const file = await handle.readFile({  path: "/tmp/hello.txt",  encoding: "utf8",});console.log(file.content);
Pythonexample.py
example.py
import osfrom wildflower import (    E2bCreateSandboxInput,    ReadFileInput,    RunCommandInput,    WriteFileInput,    Wildflower,)client = Wildflower(    wildflower_api_key=os.environ.get("WILDFLOWER_API_KEY"),)handle = client.sandboxes.attach("wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")file = handle.read_file(    ReadFileInput(path="/tmp/hello.txt", encoding="utf8"))print(file.content)
Rustexample.rs
example.rs
use wildflower::{    CreateSandboxInput, FileEncoding, ListSandboxesOptions, ReadFileInput,    RunCommandInput, WriteFileInput,    Wildflower,};let client = Wildflower::new(std::env::var("WILDFLOWER_API_KEY")?)?;let handle = client.sandboxes().attach("wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")?;let file = handle.read_file(&ReadFileInput {    path: "/tmp/hello.txt".to_owned(),    encoding: FileEncoding::Utf8,}).await?;println!("{}", file.content);
Goexample.go
example.go
client, err := wildflower.NewClient(os.Getenv("WILDFLOWER_API_KEY"))if err != nil {    return err}handle, err := client.Sandboxes.Attach("wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA")if err != nil {    return err}encoding := wildflower.FileEncodingUtf8file, err := handle.ReadFile(ctx, wildflower.ReadFileInput{    Path: "/tmp/hello.txt",    Encoding: &encoding,})if err != nil {    return err}fmt.Println(file.Content)
Zigexample.zig
example.zig
var client = try Wildflower.init(    allocator,    wildflower_api_key,    transport,);defer client.deinit();var handle = client.attach("wf_e2b_AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");var file = try handle.readFile(.{    .path = "/tmp/hello.txt",    .encoding = .utf8,});defer file.deinit();std.debug.print("{s}\n", .{file.value.content});

Generated SDK methods

Every name below comes from the generator mapping for this operation, so a language-specific rename creates website drift.