auth0_integration/models/access_token/
decoded_access_token.rs1use serde::{Deserialize, Serialize};
2use serde_json::Value;
3
4#[derive(Debug, Deserialize, Serialize)]
5pub struct DecodedAccessToken {
6 pub aud: Option<Value>,
7 pub azp: Option<String>,
8 pub exp: u64,
9 pub gty: Option<String>,
10 pub iat: u64,
11 pub iss: String,
12 pub scope: Option<String>,
13 pub sub: String,
14 #[serde(default)]
15 pub user_roles: Vec<String>,
16 #[serde(default)]
17 pub permissions: Vec<String>,
18}
19
20impl DecodedAccessToken {
21 pub fn to_json(&self) -> Value {
22 serde_json::to_value(self).unwrap_or(Value::Null)
23 }
24}