Skip to main content

faucet_source_rest/
lib.rs

1#![cfg_attr(docsrs, feature(doc_cfg))]
2
3//! # faucet-source-rest
4//!
5//! A declarative, config-driven REST API client with pluggable authentication,
6//! pagination, schema inference, and incremental replication.
7
8pub mod auth;
9pub mod config;
10pub mod extract;
11pub mod pagination;
12pub mod retry;
13pub mod serde_helpers;
14pub mod stream;
15
16// Re-export core types so users don't need a separate faucet-core dependency.
17pub use faucet_core::{
18    FaucetError, RecordTransform, ReplicationMethod, Sink, Source, replication, schema, transform,
19};
20
21pub use auth::oauth2::DEFAULT_EXPIRY_RATIO;
22pub use auth::token_endpoint::DEFAULT_TOKEN_ENDPOINT_EXPIRY_RATIO;
23pub use auth::{Auth, ResponseValidator, fetch_oauth2_token, fetch_token_from_endpoint};
24pub use config::RestStreamConfig;
25pub use pagination::PaginationStyle;
26pub use stream::RestStream;