feat: define ApiClaims

This commit is contained in:
2025-05-21 21:59:15 +02:00
parent 9473c83679
commit 7c58473ff1

View File

@ -3,8 +3,17 @@ package types
import "github.com/golang-jwt/jwt/v5"
type UserClaims struct {
UserID string `json:"user_id"`
// Role
UserEmail string `json:"user_email"`
jwt.RegisteredClaims
}
type ApiClaims struct {
UserID string `json:"user_id"`
// Permissions are guard's defined permissions
// Examples:
// 1. User MetaData (specifically some fields like email, profile picture and name)
// 2. Actions on User, e.g. home permissions fetching, notifications emitting
Permissions []string `json:"permissions"`
// Subject is an API ID defined in guard's DB after registration
jwt.RegisteredClaims
}