screenpipe_sdk_rs/
error.rs

1use thiserror::Error;
2
3pub type Result<T> = std::result::Result<T, ScreenpipeError>;
4
5#[derive(Error, Debug)]
6pub enum ScreenpipeError {
7    #[error("HTTP request failed: {0}")]
8    Http(#[from] reqwest::Error),
9    
10    #[error("JSON serialization/deserialization error: {0}")]
11    Json(#[from] serde_json::Error),
12    
13    #[error("URL parsing error: {0}")]
14    UrlParse(#[from] url::ParseError),
15    
16    #[error("API error: {status} - {message}")]
17    Api { status: u16, message: String },
18    
19    #[error("Invalid configuration: {0}")]
20    Config(String),
21    
22    #[error("Server error: {0}")]
23    Server(String),
24    
25    #[error("Not found: {0}")]
26    NotFound(String),
27    
28    #[error("Bad request: {0}")]
29    BadRequest(String),
30}