stabilityai/lib.rs
1//! Rust library for stability.ai based on OpenAPI spec.
2//!
3//! ## Creating client
4//!
5//! ```
6//! use stabilityai::Client;
7//!
8//! // Create a client with api key from env var STABILITY_API_KEY and default base url.
9//! let client = Client::new();
10//!
11//! // OR use API key from different source and a non default organization
12//! let api_key = "sk-..."; // This secret could be from a file, or environment variable.
13//! let client = Client::new()
14//! .with_api_key(api_key)
15//! .with_organization("the-continental");
16//!
17//! // Use custom reqwest client
18//! let http_client = reqwest::ClientBuilder::new()
19//! .user_agent("Rust/stabilityai")
20//! .build().unwrap();
21//!
22//! let client = Client::new()
23//! .with_http_client(http_client);
24//! ```
25//!
26//! ## Making requests
27//!
28//!```
29//!# tokio_test::block_on(async {
30//! use stabilityai::Client;
31//!
32//! // Create client
33//! let client = Client::new();
34//!
35//! // Call API
36//! let response = client
37//! .user()
38//! .account()
39//! .await
40//! .unwrap();
41//!
42//! println!("{:#?}", response);
43//! # });
44//!```
45//!
46//! ## Examples
47//! For full working examples see [examples](https://github.com/64bit/stabilityai/tree/main/examples) directory in the repository.
48//!
49
50mod client;
51mod download;
52mod engine;
53pub mod error;
54mod generate;
55pub mod types;
56mod user;
57mod util;
58
59pub use client::Client;
60pub use engine::Engines;
61pub use generate::Generate;
62pub use user::User;
63
64pub use client::API_BASE;
65pub use client::CLIENT_ID_HEADER;
66pub use client::CLIENT_VERSION_HEADER;
67pub use client::ORGANIZATION_HEADER;