hanzo-client 8.5.156

Generated client for the Hanzo API — every service, one crate.
Documentation
/*
 * Hanzo Cloud API
 *
 * The Hanzo Cloud API as a customer calls it: every operation under /v1/ except the operator's admin product, relay routes, legacy spellings and capabilities still reached by flag. Tagged by product: the first path segment after /v1/.
 *
 * The version of the OpenAPI document: v1
 * 
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct CaptureEvent {
    #[serde(rename = "anonymousId", skip_serializing_if = "Option::is_none")]
    pub anonymous_id: Option<String>,
    #[serde(rename = "channel", skip_serializing_if = "Option::is_none")]
    pub channel: Option<String>,
    #[serde(rename = "clip", skip_serializing_if = "Option::is_none")]
    pub clip: Option<Box<models::ClipBody>>,
    #[serde(rename = "currency", skip_serializing_if = "Option::is_none")]
    pub currency: Option<String>,
    #[serde(rename = "distinctId", skip_serializing_if = "Option::is_none")]
    pub distinct_id: Option<String>,
    #[serde(rename = "environment", skip_serializing_if = "Option::is_none")]
    pub environment: Option<String>,
    #[serde(rename = "error", skip_serializing_if = "Option::is_none")]
    pub error: Option<Box<models::Exception>>,
    #[serde(rename = "event", skip_serializing_if = "Option::is_none")]
    pub event: Option<String>,
    #[serde(rename = "groupId", skip_serializing_if = "Option::is_none")]
    pub group_id: Option<String>,
    #[serde(rename = "groupType", skip_serializing_if = "Option::is_none")]
    pub group_type: Option<String>,
    #[serde(rename = "kind", skip_serializing_if = "Option::is_none")]
    pub kind: Option<String>,
    #[serde(rename = "level", skip_serializing_if = "Option::is_none")]
    pub level: Option<String>,
    #[serde(rename = "library", skip_serializing_if = "Option::is_none")]
    pub library: Option<String>,
    #[serde(rename = "libraryVersion", skip_serializing_if = "Option::is_none")]
    pub library_version: Option<String>,
    #[serde(rename = "log", skip_serializing_if = "Option::is_none")]
    pub log: Option<Box<models::LogBody>>,
    #[serde(rename = "messageId", skip_serializing_if = "Option::is_none")]
    pub message_id: Option<String>,
    #[serde(rename = "metric", skip_serializing_if = "Option::is_none")]
    pub metric: Option<Box<models::MetricBody>>,
    #[serde(rename = "path", skip_serializing_if = "Option::is_none")]
    pub path: Option<String>,
    #[serde(rename = "personId", skip_serializing_if = "Option::is_none")]
    pub person_id: Option<String>,
    #[serde(rename = "product", skip_serializing_if = "Option::is_none")]
    pub product: Option<String>,
    #[serde(rename = "productId", skip_serializing_if = "Option::is_none")]
    pub product_id: Option<String>,
    #[serde(rename = "properties", skip_serializing_if = "Option::is_none")]
    pub properties: Option<std::collections::HashMap<String, serde_json::Value>>,
    #[serde(rename = "quantity", skip_serializing_if = "Option::is_none")]
    pub quantity: Option<i32>,
    #[serde(rename = "refCode", skip_serializing_if = "Option::is_none")]
    pub ref_code: Option<String>,
    #[serde(rename = "referrer", skip_serializing_if = "Option::is_none")]
    pub referrer: Option<String>,
    #[serde(rename = "release", skip_serializing_if = "Option::is_none")]
    pub release: Option<String>,
    #[serde(rename = "resource", skip_serializing_if = "Option::is_none")]
    pub resource: Option<String>,
    #[serde(rename = "revenue", skip_serializing_if = "Option::is_none")]
    pub revenue: Option<f64>,
    #[serde(rename = "service", skip_serializing_if = "Option::is_none")]
    pub service: Option<String>,
    #[serde(rename = "sessionId", skip_serializing_if = "Option::is_none")]
    pub session_id: Option<String>,
    #[serde(rename = "signupWeek", skip_serializing_if = "Option::is_none")]
    pub signup_week: Option<String>,
    #[serde(rename = "site", skip_serializing_if = "Option::is_none")]
    pub site: Option<String>,
    #[serde(rename = "span", skip_serializing_if = "Option::is_none")]
    pub span: Option<Box<models::SpanBody>>,
    #[serde(rename = "spanId", skip_serializing_if = "Option::is_none")]
    pub span_id: Option<String>,
    #[serde(rename = "timestamp", skip_serializing_if = "Option::is_none")]
    pub timestamp: Option<String>,
    #[serde(rename = "traceId", skip_serializing_if = "Option::is_none")]
    pub trace_id: Option<String>,
    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
    pub r#type: Option<String>,
    #[serde(rename = "url", skip_serializing_if = "Option::is_none")]
    pub url: Option<String>,
    #[serde(rename = "utm", skip_serializing_if = "Option::is_none")]
    pub utm: Option<Box<models::Utm>>,
}

impl CaptureEvent {
    pub fn new() -> CaptureEvent {
        CaptureEvent {
            anonymous_id: None,
            channel: None,
            clip: None,
            currency: None,
            distinct_id: None,
            environment: None,
            error: None,
            event: None,
            group_id: None,
            group_type: None,
            kind: None,
            level: None,
            library: None,
            library_version: None,
            log: None,
            message_id: None,
            metric: None,
            path: None,
            person_id: None,
            product: None,
            product_id: None,
            properties: None,
            quantity: None,
            ref_code: None,
            referrer: None,
            release: None,
            resource: None,
            revenue: None,
            service: None,
            session_id: None,
            signup_week: None,
            site: None,
            span: None,
            span_id: None,
            timestamp: None,
            trace_id: None,
            r#type: None,
            url: None,
            utm: None,
        }
    }
}