vaultrs/api/database/
responses.rs

1use serde::{Deserialize, Serialize};
2
3/// Response from executing
4/// [ReadConnectionRequest][crate::api::database::requests::ReadConnectionRequest]
5#[derive(Deserialize, Debug, Serialize)]
6pub struct ReadConnectionResponse {
7    pub allowed_roles: Vec<String>,
8    pub connection_details: ConnectionDetails,
9    pub plugin_name: String,
10}
11
12#[derive(Deserialize, Debug, Serialize)]
13pub struct ConnectionDetails {
14    pub connection_url: String,
15    pub username: String,
16}
17
18/// Response from executing
19/// [ListConnectionsRequest][crate::api::database::requests::ListConnectionsRequest]
20#[derive(Deserialize, Debug, Serialize)]
21pub struct ListConnectionsResponse {
22    pub keys: Vec<String>,
23}
24
25/// Response from executing
26/// [ReadRoleRequest][crate::api::database::requests::ReadRoleRequest]
27#[derive(Deserialize, Debug, Serialize)]
28pub struct ReadRoleResponse {
29    pub creation_statements: Vec<String>,
30    pub db_name: String,
31    pub default_ttl: u64,
32    pub max_ttl: u64,
33    pub renew_statements: Vec<String>,
34    pub revocation_statements: Vec<String>,
35    pub rollback_statements: Vec<String>,
36}
37
38/// Response from executing
39/// [ListRolesRequest][crate::api::database::requests::ListRolesRequest]
40#[derive(Deserialize, Debug, Serialize)]
41pub struct ListRolesResponse {
42    pub keys: Vec<String>,
43}
44
45/// Response from executing
46/// [GenerateCredentialsRequest][crate::api::database::requests::GenerateCredentialsRequest]
47#[derive(Deserialize, Debug, Serialize)]
48pub struct GenerateCredentialsResponse {
49    pub username: String,
50    pub password: String,
51}
52
53/// Response from executing
54/// [ReadStaticRoleRequest][crate::api::database::requests::ReadStaticRoleRequest]
55#[derive(Deserialize, Debug, Serialize)]
56pub struct ReadStaticRoleResponse {
57    pub db_name: String,
58    pub username: String,
59    pub rotation_period: u64,
60    pub rotation_statements: Vec<String>,
61}
62
63/// Response from executing
64/// [ListStaticRolesRequest][crate::api::database::requests::ListStaticRolesRequest]
65#[derive(Deserialize, Debug, Serialize)]
66pub struct ListStaticRolesResponse {
67    pub keys: Vec<String>,
68}
69
70/// Response from executing
71/// [GetStaticCredentialsRequest][crate::api::database::requests::GetStaticCredentialsRequest]
72#[derive(Deserialize, Debug, Serialize)]
73pub struct GetStaticCredentialsResponse {
74    pub last_vault_rotation: String,
75    pub password: String,
76    pub rotation_period: u64,
77    pub ttl: u64,
78    pub username: String,
79}