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 O11yPeriodO11yGoogleConfig {
    /// AllowedGroups, when set, admits only members of these groups.
    #[serde(rename = "allowedGroups", skip_serializing_if = "Option::is_none")]
    pub allowed_groups: Option<Vec<String>>,
    /// ClientID is the OAuth application's id.
    #[serde(rename = "clientId", skip_serializing_if = "Option::is_none")]
    pub client_id: Option<String>,
    /// ClientSecret is the OAuth application's secret.
    #[serde(rename = "clientSecret", skip_serializing_if = "Option::is_none")]
    pub client_secret: Option<String>,
    /// DomainToAdminEmail maps each Workspace domain to the admin the service account impersonates; \"*\" is the fallback.
    #[serde(rename = "domainToAdminEmail", skip_serializing_if = "Option::is_none")]
    pub domain_to_admin_email: Option<std::collections::HashMap<String, String>>,
    /// FetchGroups reads the user's Workspace groups for role mapping.
    #[serde(rename = "fetchGroups", skip_serializing_if = "Option::is_none")]
    pub fetch_groups: Option<bool>,
    /// FetchTransitiveGroupMembership also reads groups held through other groups.
    #[serde(rename = "fetchTransitiveGroupMembership", skip_serializing_if = "Option::is_none")]
    pub fetch_transitive_group_membership: Option<bool>,
    /// InsecureSkipEmailVerified admits addresses Google has not verified.
    #[serde(rename = "insecureSkipEmailVerified", skip_serializing_if = "Option::is_none")]
    pub insecure_skip_email_verified: Option<bool>,
    /// RedirectURI is the callback the flow returns to.
    #[serde(rename = "redirectURI", skip_serializing_if = "Option::is_none")]
    pub redirect_uri: Option<String>,
    /// ServiceAccountJSON is the service-account credential used to read groups, when FetchGroups is on.
    #[serde(rename = "serviceAccountJson", skip_serializing_if = "Option::is_none")]
    pub service_account_json: Option<String>,
}

impl O11yPeriodO11yGoogleConfig {
    pub fn new() -> O11yPeriodO11yGoogleConfig {
        O11yPeriodO11yGoogleConfig {
            allowed_groups: None,
            client_id: None,
            client_secret: None,
            domain_to_admin_email: None,
            fetch_groups: None,
            fetch_transitive_group_membership: None,
            insecure_skip_email_verified: None,
            redirect_uri: None,
            service_account_json: None,
        }
    }
}