MultiVibe Cloud

Developers

← Back to dashboard

SDK GUIDE / SOURCE PREVIEW

Rust

Cloud · asynchronous

1. Set up your project

Start from sdk/rust in the Cloud repository. These commands use the local source package, not a registry release.

cargo test
cargo run --example basic

2. Prepare authentication

Server examples read MULTIVIBE_BASE_URL and MULTIVIBE_TOKEN from the environment. Use an origin without /v1. Never ship a project key in a browser or mobile bundle.

For client applications, use a user-authorized OAuth access-token provider and OS-secure storage. Browser refresh and exchange require a backend. Backendless publisher-funded sessions are not implemented.

Follow the OAuth + PKCE guide →

3. Make your first request

This example discovers models. Mobile snippets belong in your authenticated application; they are not standalone app projects.

examples/basic.rs
#[tokio::main]
async fn main()->Result<(),Box<dyn std::error::Error>>{
 let client=multivibe::Client::new(&std::env::var("MULTIVIBE_BASE_URL")?,||std::env::var("MULTIVIBE_TOKEN").map_err(|_|multivibe::Error::InvalidConfiguration))?;
 client.models().await?;println!("Model catalog request succeeded (response not logged).");Ok(())
}

Next steps

Choose a compatible model from the catalog before inference. Handle expired access, insufficient scope and unavailable models separately. Never retry a billable inference blindly after a timeout or partial stream.

Operations, streaming and usage →

Local execution and fallback policy →