ripestat-common 0.0.5

Common structs/enums for the RIPEstat API
Documentation
use serde::{Deserialize, Serialize};

#[derive(Clone, Debug, PartialEq, Eq, Serialize, Deserialize)]
pub struct LookingGlassRequest {
    pub resource: String,
    pub look_back_limit: Option<String>,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LookingGlassResponse {
    pub rrcs: Vec<LookingGlassRrc>,
    pub query_time: String,
    pub latest_time: String,
    pub parameters: LookingGlassParameters,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LookingGlassRrc {
    pub rrc: String,
    pub location: String,
    pub peers: Vec<LookingGlassPeer>,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LookingGlassPeer {
    pub asn_origin: String,
    pub as_path: String,
    pub community: String,
    pub large_community: String,
    pub extended_community: String,
    pub last_updated: String,
    pub prefix: String,
    pub peer: String,
    pub origin: String,
    pub next_hop: String,
    pub latest_time: String,
}

#[derive(Default, Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct LookingGlassParameters {
    pub resource: String,
    pub look_back_limit: i64,
    pub cache: Option<bool>,
}