Skip to main content

authentik_client/models/
ssf_stream.rs

1/*
2 * authentik
3 *
4 * Making authentication simple.
5 *
6 * The version of the OpenAPI document: 2026.2.0
7 * Contact: hello@goauthentik.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14/// SsfStream : SSFStream Serializer
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct SsfStream {
17    #[serde(rename = "pk")]
18    pub pk: uuid::Uuid,
19    #[serde(rename = "provider")]
20    pub provider: i32,
21    #[serde(rename = "provider_obj")]
22    pub provider_obj: models::SsfProvider,
23    #[serde(rename = "delivery_method")]
24    pub delivery_method: models::DeliveryMethodEnum,
25    #[serde(
26        rename = "endpoint_url",
27        default,
28        with = "::serde_with::rust::double_option",
29        skip_serializing_if = "Option::is_none"
30    )]
31    pub endpoint_url: Option<Option<String>>,
32    #[serde(rename = "events_requested", skip_serializing_if = "Option::is_none")]
33    pub events_requested: Option<Vec<models::EventsRequestedEnum>>,
34    #[serde(rename = "format")]
35    pub format: String,
36    #[serde(rename = "aud", skip_serializing_if = "Option::is_none")]
37    pub aud: Option<Vec<String>>,
38    #[serde(rename = "iss")]
39    pub iss: String,
40}
41
42impl SsfStream {
43    /// SSFStream Serializer
44    pub fn new(
45        pk: uuid::Uuid,
46        provider: i32,
47        provider_obj: models::SsfProvider,
48        delivery_method: models::DeliveryMethodEnum,
49        format: String,
50        iss: String,
51    ) -> SsfStream {
52        SsfStream {
53            pk,
54            provider,
55            provider_obj,
56            delivery_method,
57            endpoint_url: None,
58            events_requested: None,
59            format,
60            aud: None,
61            iss,
62        }
63    }
64}