vaultrs/api/identity/entity/
responses.rs

1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5/// Response from executing
6/// [CreateEntityRequest](crate::api::identity::entity::requests::CreateEntityRequest)
7#[derive(Deserialize, Debug, Serialize)]
8pub struct CreateEntityResponse {
9    pub id: String,
10    pub alias: Option<Vec<Alias>>,
11}
12
13/// Response from executing
14/// [ReadEntityByIdRequest](crate::api::identity::entity::requests::ReadEntityByIdRequest)
15#[derive(Deserialize, Debug, Serialize)]
16pub struct ReadEntityByIdResponse {
17    pub id: String,
18    pub name: String,
19    pub disabled: bool,
20    pub policies: Vec<String>,
21    pub last_update_time: String,
22    pub creation_time: String,
23    pub metadata: Option<HashMap<String, String>>,
24    pub aliases: Vec<Alias>,
25    pub direct_group_ids: Vec<String>,
26    pub group_ids: Vec<String>,
27    pub inherited_group_ids: Vec<String>,
28    pub merged_entity_ids: Option<Vec<String>>,
29    pub namespace_id: String,
30}
31
32/// Response from executing
33/// [ReadEntityByNameRequest](crate::api::identity::entity::requests::ReadEntityByNameRequest)
34#[derive(Deserialize, Debug, Serialize)]
35pub struct ReadEntityByNameResponse {
36    pub id: String,
37    pub name: String,
38    pub disabled: bool,
39    pub policies: Vec<String>,
40    pub last_update_time: String,
41    pub creation_time: String,
42    pub metadata: Option<HashMap<String, String>>,
43    pub aliases: Vec<Alias>,
44    pub direct_group_ids: Vec<String>,
45    pub group_ids: Vec<String>,
46    pub inherited_group_ids: Vec<String>,
47    pub merged_entity_ids: Option<Vec<String>>,
48    pub namespace_id: String,
49}
50
51#[derive(Deserialize, Debug, Serialize)]
52pub struct Alias {
53    pub id: String,
54    pub canonical_id: String,
55    pub mount_accessor: String,
56    pub name: String,
57    pub creation_time: String,
58    pub last_update_time: String,
59    pub local: bool,
60    pub mount_type: String,
61    pub mount_path: String,
62    pub custom_metadata: Option<HashMap<String, String>>,
63    pub metadata: Option<HashMap<String, String>>,
64    pub merged_from_canonical_ids: Option<Vec<String>>,
65}
66
67/// Response from executing
68/// [ListEntitiesById](crate::api::identity::entity::requests::ListEntitiesByIdRequest)
69#[derive(Deserialize, Debug, Serialize)]
70pub struct ListEntitiesByIdResponse {
71    pub keys: Vec<String>,
72}
73
74/// Response from executing
75/// [CreateEntityByNameRequest](crate::api::identity::entity::requests::CreateEntityByNameRequest)
76#[derive(Deserialize, Debug, Serialize)]
77pub struct CreateEntityByNameResponse {
78    pub aliases: Option<Vec<Alias>>,
79    pub id: String,
80    pub name: String,
81}
82
83/// Response from executing
84/// [ListEntitiesById](crate::api::identity::entity::requests::ListEntitiesByNameRequest)
85#[derive(Deserialize, Debug, Serialize)]
86pub struct ListEntitiesByNameResponse {
87    pub keys: Vec<String>,
88}