1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
* Account API
*
* # Introduction The Account API allows you to manage projects. Project is Scaleway’s resource management feature. Designed to help you organize your infrastructure and cloud services, the feature allows resources to be isolated and grouped into specific projects.
*
* The version of the OpenAPI document: v2
*
* Generated by: https://openapi-generator.tech
*/
#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
pub struct CreateApiKeyRequest {
/// ID of application principal
#[serde(rename = "application_id", skip_serializing_if = "Option::is_none")]
pub application_id: Option<String>,
/// ID of user principal
#[serde(rename = "user_id", skip_serializing_if = "Option::is_none")]
pub user_id: Option<String>,
/// Expiration date of the API key (RFC 3339 format)
#[serde(
rename = "expires_at",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub expires_at: Option<Option<String>>,
/// The default project ID to use with object storage
#[serde(
rename = "default_project_id",
default,
with = "::serde_with::rust::double_option",
skip_serializing_if = "Option::is_none"
)]
pub default_project_id: Option<Option<String>>,
/// The description of the API key (max length is 200 chars)
#[serde(rename = "description", skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
}
impl CreateApiKeyRequest {
pub fn new() -> CreateApiKeyRequest {
CreateApiKeyRequest {
application_id: None,
user_id: None,
expires_at: None,
default_project_id: None,
description: None,
}
}
}