gov-uk-sdk-core 0.1.0

Shared HTTP client, auth, errors, and content negotiation for GOV.UK / Companies House SDK crates.
Documentation
//! Shared HTTP client, authentication, rate limiting, and error handling for
//! GOV.UK / Companies House SDK crates.
//!
//! Product crates should depend only on this crate for HTTP and wire endpoints through
//! [`SdkClient::get`] / [`SdkClient::post`] or [`SdkClient::request`].

mod client;
mod error;
mod expiry;
mod message;
mod negotiated;
mod rate_limit;
mod request;
mod validation;

pub use client::{Auth, SdkBuildError, SdkClient, SdkClientBuilder, COMPANIES_HOUSE_API_ROOT};

/// Re-export for callers that need a non-default HTTP method via [`SdkClient::request`].
pub use reqwest::Method;
pub use error::SdkError;
pub use message::ApiMessage;
pub use expiry::ChDeprecation;
pub use negotiated::NegotiatedResponse;
pub use request::SdkRequest;
pub use validation::{vendor_content_type, Validation};

/// Standard result type for SDK operations.
pub type SdkResult<T> = Result<T, SdkError>;