// 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 ConfigureDataIntegrationBody {
/// Whether the provider is enabled for the organization.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub enabled: Option<bool>,
/// The OAuth scopes to request for the organization. Pass `null` to inherit the provider scopes.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub scopes: Option<Vec<String>>,
/// The OAuth client ID of the organization's own application. Must be provided together with `client_secret`, and only for providers whose credentials are supplied by the organization.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub client_id: Option<String>,
/// The OAuth client secret of the organization's own application. Must be provided together with `client_id`.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub client_secret: Option<crate::SecretString>,
/// Provider-specific config values to set for the organization, keyed by config field. Only fields the provider declares are accepted, and each value must match that field's pattern. Accepted only for providers whose credentials are organization-managed; for shared or custom credential providers, config belongs on the integration itself (via the data-integrations API) and supplying it here is rejected.
#[serde(skip_serializing_if = "Option::is_none", default)]
pub config: Option<std::collections::HashMap<String, String>>,
}