Skip to main content

auth0_integration/models/access_token/
decoded_access_token.rs

1use 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}