slack_rust/event_api/
app.rs1use crate::team::teams::Team;
2use crate::users::user::User;
3
4use serde::{Deserialize, Serialize};
5use serde_with::skip_serializing_none;
6
7#[skip_serializing_none]
8#[derive(Deserialize, Serialize, Debug, PartialEq)]
9pub struct AppRequest {
10 pub id: Option<String>,
11 pub app: Option<App>,
12 pub previous_resolution: Option<PreviousResolution>,
13}
14
15#[skip_serializing_none]
16#[derive(Deserialize, Serialize, Debug, PartialEq)]
17pub struct App {
18 pub id: Option<String>,
19 pub name: Option<String>,
20 pub description: Option<String>,
21 pub help_url: Option<String>,
22 pub privacy_policy_url: Option<String>,
23 pub app_homepage_url: Option<String>,
24 pub app_directory_url: Option<String>,
25 pub is_app_directory_approved: Option<bool>,
26 pub is_internal: Option<bool>,
27 pub additional_info: Option<String>,
28 pub user: Option<User>,
29 pub team: Option<Team>,
30 pub scopes: Option<Vec<Scope>>,
31 pub message: Option<String>,
32}
33
34#[skip_serializing_none]
35#[derive(Deserialize, Serialize, Debug, PartialEq)]
36pub struct PreviousResolution {
37 pub status: Option<String>,
38 pub scopes: Option<Vec<Scope>>,
39}
40
41#[skip_serializing_none]
42#[derive(Deserialize, Serialize, Debug, PartialEq)]
43pub struct Scope {
44 pub name: Option<String>,
45 pub description: Option<String>,
46 pub is_sensitive: Option<bool>,
47 pub token_type: Option<String>,
48}