airlabs_api/
error.rs

1use super::*;
2
3#[derive(Debug, Serialize, Deserialize, thiserror::Error)]
4#[error("{message}")]
5pub struct Error {
6    pub message: String,
7    pub code: Code,
8}
9
10#[derive(Clone, Copy, Debug, Serialize, Deserialize)]
11#[serde(rename_all = "snake_case")]
12pub enum Code {
13    /// Provided API Key is invalid.
14    UnknownApiKey,
15    /// The provided API key has expired.
16    ExpiredApiKey,
17    /// Provided method is not supported.
18    UnknownMethod,
19    /// Some parameters is wrong.
20    WrongParams,
21    /// Requested data was not found.
22    NotFound,
23    /// The number of requests per minute has been exceeded.
24    MinuteLimitExceeded,
25    /// The number of requests per hour has been exceeded.
26    HourLimitExceeded,
27    /// The number of requests per month has been exceeded.
28    MonthLimitExceeded,
29    /// An internal error occurred.
30    InternalError,
31}