notion_client/
lib.rs

1pub mod endpoints;
2pub mod objects;
3
4use objects::error::Error;
5use reqwest::header::InvalidHeaderValue;
6
7#[derive(Debug, thiserror::Error)]
8pub enum NotionClientError {
9    #[error("Failed to serialize: {}", source)]
10    FailedToSerialize { source: serde_json::Error },
11
12    #[error("Failed to deserialize: {}, body: {}", source, body)]
13    FailedToDeserialize {
14        source: serde_json::Error,
15        body: String,
16    },
17
18    #[error("Failed to request: {}", source)]
19    FailedToRequest { source: reqwest::Error },
20
21    #[error("Failed to text: {}", source)]
22    FailedToText { source: reqwest::Error },
23
24    #[error("Failed to build request {}", source)]
25    FailedToBuildRequest { source: reqwest::Error },
26
27    #[error("Invalid status code {}({}): {}", .error.code, .error.status, .error.message)]
28    InvalidStatusCode { error: Error },
29
30    #[error("Invalid header {}", source)]
31    InvalidHeader { source: InvalidHeaderValue },
32}