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
<!-- Generated by box-gantry. DO NOT EDIT — regenerate from the specs instead. -->
![Box Open SDK for Rust](assets/banner.svg)

# box-open-sdk (Rust)

[![crates.io](https://img.shields.io/crates/v/box-open-sdk.svg)](https://crates.io/crates/box-open-sdk)
[![docs.rs](https://img.shields.io/docsrs/box-open-sdk)](https://docs.rs/box-open-sdk)

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

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

## Quickstart

```rust,ignore
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`](./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`](./docs/pagination.md).

## Documentation

API reference on [docs.rs](https://docs.rs/box-open-sdk); the [`docs/`](./docs)
tree carries the per-manager reference and the authentication, pagination, and
errors guides.

## License

MIT. Generated by [box-gantry](https://github.com/unofficialbox/box-gantry).