traq 0.1.5

⚠️ Community Driven ⚠️ traQ v3 API
Documentation
/*
 * traQ v3
 *
 * traQ v3 API
 *
 * The version of the OpenAPI document: 3.0
 *
 * Generated by: https://openapi-generator.tech
 */

/// UserPermission : ユーザー権限

/// ユーザー権限
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum UserPermission {
    #[serde(rename = "get_webhook")]
    GetWebhook,
    #[serde(rename = "create_webhook")]
    CreateWebhook,
    #[serde(rename = "edit_webhook")]
    EditWebhook,
    #[serde(rename = "delete_webhook")]
    DeleteWebhook,
    #[serde(rename = "access_others_webhook")]
    AccessOthersWebhook,
    #[serde(rename = "get_bot")]
    GetBot,
    #[serde(rename = "create_bot")]
    CreateBot,
    #[serde(rename = "edit_bot")]
    EditBot,
    #[serde(rename = "delete_bot")]
    DeleteBot,
    #[serde(rename = "access_others_bot")]
    AccessOthersBot,
    #[serde(rename = "bot_action_join_channel")]
    BotActionJoinChannel,
    #[serde(rename = "bot_action_leave_channel")]
    BotActionLeaveChannel,
    #[serde(rename = "create_channel")]
    CreateChannel,
    #[serde(rename = "get_channel")]
    GetChannel,
    #[serde(rename = "edit_channel")]
    EditChannel,
    #[serde(rename = "delete_channel")]
    DeleteChannel,
    #[serde(rename = "change_parent_channel")]
    ChangeParentChannel,
    #[serde(rename = "edit_channel_topic")]
    EditChannelTopic,
    #[serde(rename = "get_channel_star")]
    GetChannelStar,
    #[serde(rename = "edit_channel_star")]
    EditChannelStar,
    #[serde(rename = "get_my_tokens")]
    GetMyTokens,
    #[serde(rename = "revoke_my_token")]
    RevokeMyToken,
    #[serde(rename = "get_clients")]
    GetClients,
    #[serde(rename = "create_client")]
    CreateClient,
    #[serde(rename = "edit_my_client")]
    EditMyClient,
    #[serde(rename = "delete_my_client")]
    DeleteMyClient,
    #[serde(rename = "manage_others_client")]
    ManageOthersClient,
    #[serde(rename = "upload_file")]
    UploadFile,
    #[serde(rename = "download_file")]
    DownloadFile,
    #[serde(rename = "delete_file")]
    DeleteFile,
    #[serde(rename = "get_message")]
    GetMessage,
    #[serde(rename = "post_message")]
    PostMessage,
    #[serde(rename = "edit_message")]
    EditMessage,
    #[serde(rename = "delete_message")]
    DeleteMessage,
    #[serde(rename = "report_message")]
    ReportMessage,
    #[serde(rename = "get_message_reports")]
    GetMessageReports,
    #[serde(rename = "create_message_pin")]
    CreateMessagePin,
    #[serde(rename = "delete_message_pin")]
    DeleteMessagePin,
    #[serde(rename = "get_channel_subscription")]
    GetChannelSubscription,
    #[serde(rename = "edit_channel_subscription")]
    EditChannelSubscription,
    #[serde(rename = "connect_notification_stream")]
    ConnectNotificationStream,
    #[serde(rename = "register_fcm_device")]
    RegisterFCMDevice,
    #[serde(rename = "get_stamp")]
    GetStamp,
    #[serde(rename = "create_stamp")]
    CreateStamp,
    #[serde(rename = "edit_stamp")]
    EditStamp,
    #[serde(rename = "edit_stamp_created_by_others")]
    EditStampCreatedByOthers,
    #[serde(rename = "delete_stamp")]
    DeleteStamp,
    #[serde(rename = "delete_my_stamp")]
    DeleteMyStamp,
    #[serde(rename = "add_message_stamp")]
    AddMessageStamp,
    #[serde(rename = "remove_message_stamp")]
    RemoveMessageStamp,
    #[serde(rename = "get_my_stamp_history")]
    GetMyStampHistory,
    #[serde(rename = "get_stamp_palette")]
    GetStampPalette,
    #[serde(rename = "create_stamp_palette")]
    CreateStampPalette,
    #[serde(rename = "edit_stamp_palette")]
    EditStampPalette,
    #[serde(rename = "delete_stamp_palette")]
    DeleteStampPalette,
    #[serde(rename = "get_user")]
    GetUser,
    #[serde(rename = "register_user")]
    RegisterUser,
    #[serde(rename = "get_me")]
    GetMe,
    #[serde(rename = "get_oidc_userinfo")]
    GetOIDCUserInfo,
    #[serde(rename = "edit_me")]
    EditMe,
    #[serde(rename = "change_my_icon")]
    ChangeMyIcon,
    #[serde(rename = "change_my_password")]
    ChangeMyPassword,
    #[serde(rename = "edit_other_users")]
    EditOtherUsers,
    #[serde(rename = "get_user_qr_code")]
    GetUserQRCode,
    #[serde(rename = "get_user_tag")]
    GetUserTag,
    #[serde(rename = "edit_user_tag")]
    EditUserTag,
    #[serde(rename = "get_user_group")]
    GetUserGroup,
    #[serde(rename = "create_user_group")]
    CreateUserGroup,
    #[serde(rename = "create_special_user_group")]
    CreateSpecialUserGroup,
    #[serde(rename = "edit_user_group")]
    EditUserGroup,
    #[serde(rename = "delete_user_group")]
    DeleteUserGroup,
    #[serde(rename = "edit_others_user_group")]
    AllUserGroupsAdmin,
    #[serde(rename = "web_rtc")]
    WebRTC,
    #[serde(rename = "get_my_sessions")]
    GetMySessions,
    #[serde(rename = "delete_my_sessions")]
    DeleteMySessions,
    #[serde(rename = "get_my_external_account")]
    GetMyExternalAccount,
    #[serde(rename = "edit_my_external_account")]
    EditMyExternalAccount,
    #[serde(rename = "get_unread")]
    GetUnread,
    #[serde(rename = "delete_unread")]
    DeleteUnread,
    #[serde(rename = "get_clip_folder")]
    GetClipFolder,
    #[serde(rename = "create_clip_folder")]
    CreateClipFolder,
    #[serde(rename = "edit_clip_folder")]
    EditClipFolder,
    #[serde(rename = "delete_clip_folder")]
    DeleteClipFolder,
}

impl ToString for UserPermission {
    fn to_string(&self) -> String {
        match self {
            Self::GetWebhook => String::from("get_webhook"),
            Self::CreateWebhook => String::from("create_webhook"),
            Self::EditWebhook => String::from("edit_webhook"),
            Self::DeleteWebhook => String::from("delete_webhook"),
            Self::AccessOthersWebhook => String::from("access_others_webhook"),
            Self::GetBot => String::from("get_bot"),
            Self::CreateBot => String::from("create_bot"),
            Self::EditBot => String::from("edit_bot"),
            Self::DeleteBot => String::from("delete_bot"),
            Self::AccessOthersBot => String::from("access_others_bot"),
            Self::BotActionJoinChannel => String::from("bot_action_join_channel"),
            Self::BotActionLeaveChannel => String::from("bot_action_leave_channel"),
            Self::CreateChannel => String::from("create_channel"),
            Self::GetChannel => String::from("get_channel"),
            Self::EditChannel => String::from("edit_channel"),
            Self::DeleteChannel => String::from("delete_channel"),
            Self::ChangeParentChannel => String::from("change_parent_channel"),
            Self::EditChannelTopic => String::from("edit_channel_topic"),
            Self::GetChannelStar => String::from("get_channel_star"),
            Self::EditChannelStar => String::from("edit_channel_star"),
            Self::GetMyTokens => String::from("get_my_tokens"),
            Self::RevokeMyToken => String::from("revoke_my_token"),
            Self::GetClients => String::from("get_clients"),
            Self::CreateClient => String::from("create_client"),
            Self::EditMyClient => String::from("edit_my_client"),
            Self::DeleteMyClient => String::from("delete_my_client"),
            Self::ManageOthersClient => String::from("manage_others_client"),
            Self::UploadFile => String::from("upload_file"),
            Self::DownloadFile => String::from("download_file"),
            Self::DeleteFile => String::from("delete_file"),
            Self::GetMessage => String::from("get_message"),
            Self::PostMessage => String::from("post_message"),
            Self::EditMessage => String::from("edit_message"),
            Self::DeleteMessage => String::from("delete_message"),
            Self::ReportMessage => String::from("report_message"),
            Self::GetMessageReports => String::from("get_message_reports"),
            Self::CreateMessagePin => String::from("create_message_pin"),
            Self::DeleteMessagePin => String::from("delete_message_pin"),
            Self::GetChannelSubscription => String::from("get_channel_subscription"),
            Self::EditChannelSubscription => String::from("edit_channel_subscription"),
            Self::ConnectNotificationStream => String::from("connect_notification_stream"),
            Self::RegisterFCMDevice => String::from("register_fcm_device"),
            Self::GetStamp => String::from("get_stamp"),
            Self::CreateStamp => String::from("create_stamp"),
            Self::EditStamp => String::from("edit_stamp"),
            Self::EditStampCreatedByOthers => String::from("edit_stamp_created_by_others"),
            Self::DeleteStamp => String::from("delete_stamp"),
            Self::DeleteMyStamp => String::from("delete_my_stamp"),
            Self::AddMessageStamp => String::from("add_message_stamp"),
            Self::RemoveMessageStamp => String::from("remove_message_stamp"),
            Self::GetMyStampHistory => String::from("get_my_stamp_history"),
            Self::GetStampPalette => String::from("get_stamp_palette"),
            Self::CreateStampPalette => String::from("create_stamp_palette"),
            Self::EditStampPalette => String::from("edit_stamp_palette"),
            Self::DeleteStampPalette => String::from("delete_stamp_palette"),
            Self::GetUser => String::from("get_user"),
            Self::RegisterUser => String::from("register_user"),
            Self::GetMe => String::from("get_me"),
            Self::GetOIDCUserInfo => String::from("get_oidc_userinfo"),
            Self::EditMe => String::from("edit_me"),
            Self::ChangeMyIcon => String::from("change_my_icon"),
            Self::ChangeMyPassword => String::from("change_my_password"),
            Self::EditOtherUsers => String::from("edit_other_users"),
            Self::GetUserQRCode => String::from("get_user_qr_code"),
            Self::GetUserTag => String::from("get_user_tag"),
            Self::EditUserTag => String::from("edit_user_tag"),
            Self::GetUserGroup => String::from("get_user_group"),
            Self::CreateUserGroup => String::from("create_user_group"),
            Self::CreateSpecialUserGroup => String::from("create_special_user_group"),
            Self::EditUserGroup => String::from("edit_user_group"),
            Self::DeleteUserGroup => String::from("delete_user_group"),
            Self::AllUserGroupsAdmin => String::from("edit_others_user_group"),
            Self::WebRTC => String::from("web_rtc"),
            Self::GetMySessions => String::from("get_my_sessions"),
            Self::DeleteMySessions => String::from("delete_my_sessions"),
            Self::GetMyExternalAccount => String::from("get_my_external_account"),
            Self::EditMyExternalAccount => String::from("edit_my_external_account"),
            Self::GetUnread => String::from("get_unread"),
            Self::DeleteUnread => String::from("delete_unread"),
            Self::GetClipFolder => String::from("get_clip_folder"),
            Self::CreateClipFolder => String::from("create_clip_folder"),
            Self::EditClipFolder => String::from("edit_clip_folder"),
            Self::DeleteClipFolder => String::from("delete_clip_folder"),
        }
    }
}

impl Default for UserPermission {
    fn default() -> UserPermission {
        Self::GetWebhook
    }
}