data-for-seo 0.1.13

DataForSEO API for Rust
Documentation
use crate::entity::OnPageDataApiCrawlStatus;
use serde::{Deserialize, Serialize};

#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataApiMicrodata {
    pub crawl_progress: Option<String>,
    pub crawl_status: Option<OnPageDataApiCrawlStatus>,
    pub test_summary: Option<OnPageDataApiTestSummary>,
    pub items_count: Option<i32>,
    pub items: Option<Vec<OnPageDataApiItemJsonLd>>,
}

#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataApiTestSummary {
    pub fatal: Option<i32>,
    pub error: Option<i32>,
    pub warning: Option<i32>,
    pub info: Option<i32>,
}

#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataApiItemJsonLd {
    #[serde(rename = "type")]
    pub items_type: Option<String>,
    pub inspection_info: Option<OnPageDataSchema>,
}

#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataSchema {
    pub types: Option<Vec<String>>,
    pub fields: Option<Vec<OnPageDataSchemaField>>,
}
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataSchemaField {
    pub name: Option<String>,
    pub types: Option<Vec<String>>,
    pub value: Option<String>,
    pub test_results: Option<OnPageDataSchemaTestResult>,
    pub fields: Option<Vec<OnPageDataSchemaField>>,
}
#[derive(Debug, Default, Serialize, Deserialize, Clone)]
pub struct OnPageDataSchemaTestResult {
    pub level: Option<String>,
    pub message: Option<String>,
}