airlabs-api 0.0.2

airlabs.co API data types
Documentation
use super::*;

#[derive(Debug, Serialize, Deserialize, thiserror::Error)]
#[error("{message}")]
pub struct Error {
    pub message: String,
    pub code: Code,
}

#[derive(Clone, Copy, Debug, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum Code {
    /// Provided API Key is invalid.
    UnknownApiKey,
    /// The provided API key has expired.
    ExpiredApiKey,
    /// Provided method is not supported.
    UnknownMethod,
    /// Some parameters is wrong.
    WrongParams,
    /// Requested data was not found.
    NotFound,
    /// The number of requests per minute has been exceeded.
    MinuteLimitExceeded,
    /// The number of requests per hour has been exceeded.
    HourLimitExceeded,
    /// The number of requests per month has been exceeded.
    MonthLimitExceeded,
    /// An internal error occurred.
    InternalError,
}