upcloud_rs/data/
account.rs1use serde::Deserialize;
2
3#[derive(Deserialize, Debug)]
4pub struct UpcloudAccountsListRoot {
5 pub accounts: UpcloudAccountListRoot,
6}
7
8#[derive(Deserialize, Debug)]
9pub struct UpcloudAccountListRoot {
10 pub account: Vec<UpcloudAccountsListItem>,
11}
12
13#[derive(Deserialize, Debug)]
14pub struct UpcloudAccountsListItem {
15 #[serde(rename = "type")]
16 pub account_type: String,
17 pub username: String,
18 pub roles: UpcloudRoleRoot,
19}
20
21#[derive(Deserialize, Debug)]
22pub struct UpcloudRoleRoot {
23 pub role: Vec<String>,
24}
25
26#[derive(Deserialize, Debug)]
27pub struct UpcloudAccountRoot {
28 pub account: UpcloudAccount,
29}
30
31#[derive(Deserialize, Debug)]
32pub struct UpcloudAccountResources {
33 pub cores: f32,
34 pub detached_floating_ips: Option<f32>,
35 pub memory: f32,
36 pub networks: u32,
37 pub public_ipv4: u32,
38 pub public_ipv6: u64,
39 pub storage_hdd: f32,
40 pub storage_maxiops: Option<f32>,
41 pub storage_ssd: f32,
42}
43
44#[derive(Deserialize, Debug)]
45pub struct UpcloudAccount {
46 pub credits: f32,
47 pub resource_limits: UpcloudAccountResources,
48 pub username: String
49}