1use serde::{Deserialize, Serialize};
2
3#[derive(Serialize, Deserialize, Debug, Clone)]
4pub struct TokenRequest {
5 pub resource: String,
6 pub operation: String,
7}
8
9#[derive(Serialize, Deserialize, Debug, Clone)]
10pub struct TokenResponse {
11 pub response_msg: String,
12 pub token: Option<String>,
13}
14
15#[derive(Serialize, Deserialize, Debug, Clone)]
16pub struct VerifyTokenRequest {
17 pub token: String,
18 pub subject: String,
19 pub resource: String,
20 pub operation: String,
21}
22
23#[derive(Serialize, Deserialize, Debug, Clone)]
24pub struct VerifyTokenResponse {
25 pub response_msg: String,
26}
27
28#[derive(Serialize, Deserialize, Debug, Clone)]
29pub struct PublicKeyResponse {
30 pub response_msg: String,
31 pub public_key: String,
32}
33
34#[derive(Serialize, Deserialize, Debug, Clone)]
35pub struct HealthResponse {
36 pub status: String,
37 pub version: String,
38}
39
40#[derive(Serialize, Deserialize, Debug, Clone)]
41pub struct IdentityTokenRequest {
42 pub identifier: Option<String>,
43}
44
45#[derive(Serialize, Deserialize, Debug, Clone)]
46pub struct IdentityTokenResponse {
47 pub response_msg: String,
48 pub token: Option<String>,
49 pub expires_in: Option<u64>,
50 pub identity: Option<String>,
51}
52
53#[derive(Serialize, Deserialize, Debug, Clone)]
54pub struct RefreshIdentityTokenRequest {
55 pub current_token: String,
56 pub identifier: Option<String>,
57}