vapi_client/models/
invite_user_dto.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct InviteUserDto {
16    #[serde(rename = "emails")]
17    pub emails: Vec<String>,
18    #[serde(rename = "role")]
19    pub role: Role,
20    #[serde(rename = "redirectTo", skip_serializing_if = "Option::is_none")]
21    pub redirect_to: Option<String>,
22}
23
24impl InviteUserDto {
25    pub fn new(emails: Vec<String>, role: Role) -> InviteUserDto {
26        InviteUserDto {
27            emails,
28            role,
29            redirect_to: None,
30        }
31    }
32}
33#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
35pub enum Role {
36    #[serde(rename = "admin")]
37    Admin,
38    #[serde(rename = "editor")]
39    Editor,
40    #[serde(rename = "viewer")]
41    Viewer,
42}
43
44impl Default for Role {
45    fn default() -> Role {
46        Self::Admin
47    }
48}
49