main
rs 25 lines 946 Bytes
Raw
1 //! Shared transport for the App Store Connect API.
2 //!
3 //! Everything the domain crates need and nothing they disagree about: the
4 //! ES256 JWT auth, the HTTP client that caches those tokens, the JSON:API
5 //! envelope generics, and the error type.
6 //!
7 //! The domain crates ([`smbcloud-ascapi-aso`] for App Metadata,
8 //! [`smbcloud-ascapi-signing`] for certificates) add their resources as
9 //! extension traits on [`Client`], since Rust only allows inherent impls
10 //! in the crate that defines a type. Import a domain crate's `prelude` to
11 //! call its methods on a client.
12 //!
13 //! [`smbcloud-ascapi-aso`]: https://docs.rs/smbcloud-ascapi-aso
14 //! [`smbcloud-ascapi-signing`]: https://docs.rs/smbcloud-ascapi-signing
15
16 pub mod auth;
17 pub mod client;
18 pub mod error;
19 pub mod jsonapi;
20 pub mod token;
21
22 pub use auth::ApiKey;
23 pub use client::Client;
24 pub use error::{Error, Result};
25 pub use token::{IntoTokenSource, MintedToken, StaticToken, TokenSource};