Skip to main content

akeyless_api/models/
create_oidc_app.rs

1/*
2 * Akeyless API
3 *
4 * The purpose of this application is to provide access to Akeyless API.
5 *
6 * The version of the OpenAPI document: 3.0
7 * Contact: support@akeyless.io
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct CreateOidcApp {
16    /// for personal password manager
17    #[serde(rename = "accessibility", skip_serializing_if = "Option::is_none")]
18    pub accessibility: Option<String>,
19    /// A comma separated list of allowed audiences
20    #[serde(rename = "audience", skip_serializing_if = "Option::is_none")]
21    pub audience: Option<String>,
22    /// Protection from accidental deletion of this object [true/false]
23    #[serde(rename = "delete_protection", skip_serializing_if = "Option::is_none")]
24    pub delete_protection: Option<String>,
25    /// Description of the object
26    #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
27    pub description: Option<String>,
28    /// Additional custom fields to associate with the item
29    #[serde(rename = "item-custom-fields", skip_serializing_if = "Option::is_none")]
30    pub item_custom_fields: Option<std::collections::HashMap<String, String>>,
31    /// Set output format to JSON
32    #[serde(rename = "json", skip_serializing_if = "Option::is_none")]
33    pub json: Option<bool>,
34    /// The name of a key that used to encrypt the OIDC application (if empty, the account default protectionKey key will be used)
35    #[serde(rename = "key", skip_serializing_if = "Option::is_none")]
36    pub key: Option<String>,
37    /// Deprecated - use description
38    #[serde(rename = "metadata", skip_serializing_if = "Option::is_none")]
39    pub metadata: Option<String>,
40    /// OIDC application name
41    #[serde(rename = "name")]
42    pub name: String,
43    /// A json string defining the access permission assignment for this app
44    #[serde(rename = "permission-assignment", skip_serializing_if = "Option::is_none")]
45    pub permission_assignment: Option<String>,
46    /// Set to true if the app is public (cannot keep secrets)
47    #[serde(rename = "public", skip_serializing_if = "Option::is_none")]
48    pub public: Option<bool>,
49    /// A comma separated list of allowed redirect uris
50    #[serde(rename = "redirect-uris", skip_serializing_if = "Option::is_none")]
51    pub redirect_uris: Option<String>,
52    /// A comma separated list of allowed scopes
53    #[serde(rename = "scopes", skip_serializing_if = "Option::is_none")]
54    pub scopes: Option<String>,
55    /// Add tags attached to this object
56    #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
57    pub tags: Option<Vec<String>>,
58    /// Authentication token (see `/auth` and `/configure`)
59    #[serde(rename = "token", skip_serializing_if = "Option::is_none")]
60    pub token: Option<String>,
61    /// The universal identity token, Required only for universal_identity authentication
62    #[serde(rename = "uid-token", skip_serializing_if = "Option::is_none")]
63    pub uid_token: Option<String>,
64}
65
66impl CreateOidcApp {
67    pub fn new(name: String) -> CreateOidcApp {
68        CreateOidcApp {
69            accessibility: None,
70            audience: None,
71            delete_protection: None,
72            description: None,
73            item_custom_fields: None,
74            json: None,
75            key: None,
76            metadata: None,
77            name,
78            permission_assignment: None,
79            public: None,
80            redirect_uris: None,
81            scopes: None,
82            tags: None,
83            token: None,
84            uid_token: None,
85        }
86    }
87}
88