bitwarden_api_api/models/
organization_user_invite_request_model.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct OrganizationUserInviteRequestModel {
17 #[serde(rename = "emails", alias = "Emails")]
18 pub emails: Vec<String>,
19 #[serde(rename = "type", alias = "R#type")]
20 pub r#type: models::OrganizationUserType,
21 #[serde(
22 rename = "accessSecretsManager",
23 alias = "AccessSecretsManager",
24 skip_serializing_if = "Option::is_none"
25 )]
26 pub access_secrets_manager: Option<bool>,
27 #[serde(
28 rename = "permissions",
29 alias = "Permissions",
30 skip_serializing_if = "Option::is_none"
31 )]
32 pub permissions: Option<Box<models::Permissions>>,
33 #[serde(
34 rename = "collections",
35 alias = "Collections",
36 skip_serializing_if = "Option::is_none"
37 )]
38 pub collections: Option<Vec<models::SelectionReadOnlyRequestModel>>,
39 #[serde(
40 rename = "groups",
41 alias = "Groups",
42 skip_serializing_if = "Option::is_none"
43 )]
44 pub groups: Option<Vec<uuid::Uuid>>,
45}
46
47impl OrganizationUserInviteRequestModel {
48 pub fn new(
49 emails: Vec<String>,
50 r#type: models::OrganizationUserType,
51 ) -> OrganizationUserInviteRequestModel {
52 OrganizationUserInviteRequestModel {
53 emails,
54 r#type,
55 access_secrets_manager: None,
56 permissions: None,
57 collections: None,
58 groups: None,
59 }
60 }
61}