cfp-rs 0.2.0

a simple library to purge files from cloudflare cache
Documentation
use serde::{Deserialize, Serialize};

#[derive(Serialize, Deserialize)]
pub struct Zones {
    pub result: Vec<Result>,
    pub result_info: ResultInfo,
    pub success: bool,
    pub errors: Vec<Option<serde_json::Value>>,
    pub messages: Vec<Option<serde_json::Value>>,
}

#[derive(Serialize, Deserialize)]
pub struct Result {
    pub id: String,
    pub name: String,
    pub status: String,
    pub paused: bool,
    #[serde(rename = "type")]
    pub result_type: String,
    pub development_mode: i64,
    pub name_servers: Vec<String>,
    pub original_name_servers: Vec<String>,
    pub original_registrar: Option<String>,
    pub original_dnshost: Option<String>,
    pub modified_on: String,
    pub created_on: String,
    pub activated_on: String,
    pub meta: Meta,
    pub owner: Owner,
    pub account: Account,
    pub permissions: Vec<String>,
    pub plan: Plan,
}

#[derive(Serialize, Deserialize)]
pub struct Account {
    pub id: String,
    pub name: String,
}

#[derive(Serialize, Deserialize)]
pub struct Meta {
    pub step: i64,
    pub wildcard_proxiable: bool,
    pub custom_certificate_quota: i64,
    pub page_rule_quota: i64,
    pub phishing_detected: bool,
    pub multiple_railguns_allowed: bool,
}

#[derive(Serialize, Deserialize)]
pub struct Owner {
    pub id: String,
    #[serde(rename = "type")]
    pub owner_type: String,
    pub email: String,
}

#[derive(Serialize, Deserialize)]
pub struct Plan {
    pub id: String,
    pub name: String,
    pub price: i64,
    pub currency: String,
    pub frequency: String,
    pub is_subscribed: bool,
    pub can_subscribe: bool,
    pub legacy_id: String,
    pub legacy_discount: bool,
    pub externally_managed: bool,
}

#[derive(Serialize, Deserialize)]
pub struct ResultInfo {
    pub page: i64,
    pub per_page: i64,
    pub total_pages: i64,
    pub count: i64,
    pub total_count: i64,
}

#[derive(Serialize)]
pub struct PurgeFiles<'a> {
    pub files: Vec<&'a str>,
}