workos 2.4.0

Official Rust SDK for the WorkOS API
Documentation
// This file is auto-generated by oagen. Do not edit.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct CreateDataIntegration {
    /// The provider to create a Data Integration for. For a built-in provider use its slug (e.g. `github`, `slack`). For a custom provider, this is the new provider slug and `custom_provider` must be supplied. A custom provider slug cannot shadow an existing global provider slug.
    pub provider: String,
    /// An optional description of the Data Integration.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub description: Option<String>,
    /// Whether the Data Integration is enabled. Defaults to `false`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub enabled: Option<bool>,
    /// The OAuth scopes to request for the Data Integration. Defaults to the provider's configured scopes when omitted.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub scopes: Option<Vec<String>>,
    /// The credentials to configure for the Data Integration. Required for both built-in and custom providers.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub credentials: Option<DataIntegrationCredentialsDto>,
    /// The OAuth definition for a custom provider. Supply this to define a custom provider; omit it to create an integration for a built-in provider.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub custom_provider: Option<CustomProviderDefinition>,
}