from fastapi import APIRouter, HTTPException from pydantic import BaseModel from common.token.token_manager import TokenManager router = APIRouter() token_manager = TokenManager() # Initialize TokenManager class VerifyTokenRequest(BaseModel): token: str class VerifyTokenResponse(BaseModel): valid: bool payload: dict @router.post("/verify-token", response_model=VerifyTokenResponse) async def verify_token(request: VerifyTokenRequest): """ Endpoint to verify if a token is valid and return the payload. """ try: payload = token_manager.decode_token(request.token) return VerifyTokenResponse(valid=True, payload=payload) except ValueError: raise HTTPException(status_code=401, detail="Invalid or expired token")