Skip to main content

box_open_sdk/models/schemas/
invites.rs

1// Code generated by box-gantry 0.1.0 (spec 3fb3510fe12f2f80) for Box API 2024.0. DO NOT EDIT.
2
3use super::*;
4
5#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
6pub struct Invite {
7    pub id: String,
8    pub r#type: InviteType,
9    #[serde(default, skip_serializing_if = "Option::is_none")]
10    pub invited_to: Option<CollaborationAllowlistEntryEnterprise>,
11    #[serde(default, skip_serializing_if = "Option::is_none")]
12    pub actionable_by: Option<UserMini>,
13    #[serde(default, skip_serializing_if = "Option::is_none")]
14    pub invited_by: Option<UserMini>,
15    #[serde(default, skip_serializing_if = "Option::is_none")]
16    pub status: Option<String>,
17    #[serde(default, skip_serializing_if = "Option::is_none")]
18    pub created_at: Option<chrono::DateTime<chrono::Utc>>,
19    #[serde(default, skip_serializing_if = "Option::is_none")]
20    pub modified_at: Option<chrono::DateTime<chrono::Utc>>,
21}
22
23#[derive(Clone, Debug, Default, Eq, PartialEq, serde::Deserialize, serde::Serialize)]
24#[serde(transparent)]
25pub struct InviteType(pub String);
26
27impl InviteType {
28    pub const INVITE: &'static str = "invite";
29}
30
31#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
32pub struct PostActionableBy {
33    #[serde(default, skip_serializing_if = "Option::is_none")]
34    pub login: Option<String>,
35}
36
37#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
38pub struct CreateInviteRequest {
39    pub enterprise: AttributesParent,
40    pub actionable_by: PostActionableBy,
41}