box-open-sdk 0.1.2

Community, unofficial Box API client for Rust — typed models, async managers, and a reqwest runtime with retry, backoff, and token refresh.
Documentation

Box Open SDK for Rust

box-open-sdk (Rust)

crates.io docs.rs

A community, unofficial Box API client for Rust — typed models for the whole Box surface, one async manager per API area behind a single Client, and a reqwest/tokio runtime with retry, exponential backoff, Retry-After handling, and automatic token refresh.

Not affiliated with, authorized, or endorsed by Box, Inc. "Box" is a trademark of Box, Inc. This is an independent, generated client.

Install

[dependencies]
box-open-sdk = "0.1"

Quickstart

use box_open_sdk::client::Client;
use box_open_sdk::runtime::Auth;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Developer token for a quick start; CCG, OAuth, and JWT are also supported.
    let client = Client::new(Auth::developer_token("DEVELOPER_TOKEN"));

    // Every API area is a typed manager field on the client.
    let me = client.users.get_me(None).await?;
    println!("{me:?}");
    Ok(())
}

Authentication

The runtime implements Box's four auth flows — developer token, client credentials (CCG), OAuth 2.0 (with a pluggable refresh-token store), and JWT (server auth). See docs/auth.md.

Pagination

List endpoints return an auto-paging stream — advancing the cursor and fetching the next page is handled for you. See docs/pagination.md.

Documentation

API reference on docs.rs; the docs/ tree carries the per-manager reference and the authentication, pagination, and errors guides.

License

MIT. Generated by box-gantry.