fusionauth_rust_client/models/
external_jwt_identity_provider.rs

1/*
2 * FusionAuth API
3 *
4 * This is a FusionAuth server. Find out more at [https://fusionauth.io](https://fusionauth.io). You need to [set up an API key](https://fusionauth.io/docs/v1/tech/apis/authentication#managing-api-keys) in the FusionAuth instance you are using to test out the API calls.
5 *
6 * The version of the OpenAPI document: 1.60.1
7 * 
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// ExternalJwtIdentityProvider : External JWT-only identity provider.
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct ExternalJwtIdentityProvider {
17    #[serde(rename = "claimMap", skip_serializing_if = "Option::is_none")]
18    pub claim_map: Option<std::collections::HashMap<String, String>>,
19    #[serde(rename = "domains", skip_serializing_if = "Option::is_none")]
20    pub domains: Option<Vec<serde_json::Value>>,
21    #[serde(rename = "defaultKeyId", skip_serializing_if = "Option::is_none")]
22    pub default_key_id: Option<uuid::Uuid>,
23    #[serde(rename = "headerKeyParameter", skip_serializing_if = "Option::is_none")]
24    pub header_key_parameter: Option<String>,
25    #[serde(rename = "oauth2", skip_serializing_if = "Option::is_none")]
26    pub oauth2: Option<Box<models::IdentityProviderOauth2Configuration>>,
27    #[serde(rename = "uniqueIdentityClaim", skip_serializing_if = "Option::is_none")]
28    pub unique_identity_claim: Option<String>,
29    #[serde(rename = "data", skip_serializing_if = "Option::is_none")]
30    pub data: Option<std::collections::HashMap<String, serde_json::Value>>,
31    #[serde(rename = "applicationConfiguration", skip_serializing_if = "Option::is_none")]
32    pub application_configuration: Option<std::collections::HashMap<String, models::ExternalJwtApplicationConfiguration>>,
33    #[serde(rename = "debug", skip_serializing_if = "Option::is_none")]
34    pub debug: Option<bool>,
35    #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
36    pub id: Option<uuid::Uuid>,
37    /// The number of milliseconds since the unix epoch: January 1, 1970 00:00:00 UTC. This value is always in UTC.
38    #[serde(rename = "insertInstant", skip_serializing_if = "Option::is_none")]
39    pub insert_instant: Option<i64>,
40    #[serde(rename = "lambdaConfiguration", skip_serializing_if = "Option::is_none")]
41    pub lambda_configuration: Option<Box<models::ProviderLambdaConfiguration>>,
42    /// The number of milliseconds since the unix epoch: January 1, 1970 00:00:00 UTC. This value is always in UTC.
43    #[serde(rename = "lastUpdateInstant", skip_serializing_if = "Option::is_none")]
44    pub last_update_instant: Option<i64>,
45    #[serde(rename = "linkingStrategy", skip_serializing_if = "Option::is_none")]
46    pub linking_strategy: Option<models::IdentityProviderLinkingStrategy>,
47    #[serde(rename = "name", skip_serializing_if = "Option::is_none")]
48    pub name: Option<String>,
49    #[serde(rename = "tenantConfiguration", skip_serializing_if = "Option::is_none")]
50    pub tenant_configuration: Option<std::collections::HashMap<String, models::IdentityProviderTenantConfiguration>>,
51    #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
52    pub r#type: Option<models::IdentityProviderType>,
53}
54
55impl ExternalJwtIdentityProvider {
56    /// External JWT-only identity provider.
57    pub fn new() -> ExternalJwtIdentityProvider {
58        ExternalJwtIdentityProvider {
59            claim_map: None,
60            domains: None,
61            default_key_id: None,
62            header_key_parameter: None,
63            oauth2: None,
64            unique_identity_claim: None,
65            data: None,
66            application_configuration: None,
67            debug: None,
68            id: None,
69            insert_instant: None,
70            lambda_configuration: None,
71            last_update_instant: None,
72            linking_strategy: None,
73            name: None,
74            tenant_configuration: None,
75            r#type: None,
76        }
77    }
78}
79