plex_api/media_container/
home.rs1use serde::Deserialize;
2
3use crate::RestrictionProfile;
4
5#[derive(Deserialize, Clone, Debug)]
6#[serde(rename_all = "camelCase")]
7#[cfg_attr(feature = "tests_deny_unknown_fields", serde(deny_unknown_fields))]
8pub struct User {
9 #[serde(rename = "@id")]
10 pub id: u64,
11 #[serde(rename = "@uuid")]
12 pub uuid: String,
13 #[serde(rename = "@admin")]
14 pub admin: bool,
15 #[serde(rename = "@guest")]
16 pub guest: bool,
17 #[serde(rename = "@restricted")]
18 pub restricted: bool,
19 #[serde(rename = "@restrictionProfile")]
20 pub restriction_profile: Option<RestrictionProfile>,
21 #[serde(rename = "@hasPassword")]
22 pub has_password: bool,
23 #[serde(rename = "@protected")]
24 pub protected: bool,
25 #[serde(rename = "@title")]
26 pub title: String,
27 #[serde(rename = "@username")]
28 pub username: Option<String>,
29 #[serde(rename = "@email")]
30 pub email: Option<String>,
31 #[serde(with = "http_serde::uri", rename = "@thumb")]
32 pub thumb: http::Uri,
33}
34
35#[derive(Deserialize)]
36#[cfg_attr(feature = "tests_deny_unknown_fields", serde(deny_unknown_fields))]
37pub struct UsersResponse {
38 #[serde(rename = "User")]
39 pub users: Vec<User>,
40
41 #[serde(rename = "@friendlyName")]
42 pub friendly_name: String,
43 #[serde(rename = "@identifier")]
44 pub identifier: String,
45 #[serde(rename = "@machineIdentifier")]
46 pub machine_identifier: String,
47 #[serde(rename = "@totalSize")]
48 pub total_size: u16,
49 #[serde(rename = "@size")]
50 pub size: u16,
51 #[serde(rename = "@guestUserID")]
52 pub guest_user_id: u64,
53}