---
title: "Rust sandbox SDK."
description: "Generated asynchronous Rust sandbox SDK with typed provider inputs, normalized errors, and an injectable HTTP client. Review authentication, compatibility, and package provenance."
canonical: "https://wildflower.computer/sdk/rust/"
openapi_version: "0.8.0"
source_revision: "788b7325a454b8b753a7d614247d5694bad5c967"
---

# Rust sandbox SDK.

Generated asynchronous Rust sandbox SDK with typed provider inputs, normalized errors, and an injectable HTTP client. The generated client is version 0.8.0 and calls the Wildflower Computer API v1 contract.

## Create, execute, and delete

This example uses E2B to make the provider input concrete. The generated client also includes typed creation inputs for the other providers in the 12-adapter OpenAPI contract.

```rust
use wildflower::{CreateSandboxInput, Wildflower};

let client = Wildflower::new(std::env::var("WILDFLOWER_API_KEY")?)?;
let sandbox = client.sandboxes().create(CreateSandboxInput::E2b {
    api_key: None,
    image: Some("base".to_owned()),
    timeout: Some(300),
}).await?;
let handle = client.sandboxes().attach(&sandbox.id)?;
handle.wait_until_ready(
    std::time::Duration::from_millis(250),
    std::time::Duration::from_secs(30),
).await?;
let result = handle.run_command(&wildflower::RunCommandInput {
    command: "echo hello".to_owned(),
    cwd: None,
    env: None,
}).await?;
handle.write_text("/tmp/hello.txt", "hello").await?;
println!("{}", result.stdout);
handle.delete().await?;
```

## Authentication model

The Wildflower Computer API key authenticates the application. The selected provider credential is resolved from a connected project profile or sent as an inline override. Inline secrets are carried in headers and never serialized into the JSON request body.

A fresh process can use the same connected project profile. Inline mode requires the credential again; provider-specific connection context remains typed separately.

## Error model

API failures expose stable error codes, HTTP status, an optional provider, and the response `X-Request-Id`. A command with a non-zero exit code is a successful execution result, not an API failure.

## Generated package provenance

| Package version | `0.8.0` |
| --- | --- |
| API version | `v1` |
| OpenAPI version | `0.8.0` |
| Generator version | `0.7.0` |
| OpenAPI SHA-256 | `7e4f085adbee5ae5e63941b3286eebbbc90d2185735f5ac2b0a1093432e81c4f` |
| Source revision | `788b7325a454b8b753a7d614247d5694bad5c967` |

## Availability

Distribution status: **source-only**. The generated package exists in the API source repository and its local release-candidate pipeline. This page does not claim registry publication while the generated status remains source-only.

## Continue

- [Shared lifecycle quickstart](https://wildflower.computer/docs/getting-started/)
- [Authentication and normalized error concepts](https://wildflower.computer/docs/concepts/)
- [Provider compatibility matrix](https://wildflower.computer/compatibility/)
- [OpenAPI and JSON schema downloads](https://wildflower.computer/openapi/)

> **wildflower-computer** — Generated package Rust 1.88 or newer · Asynchronous reqwest client
