@startuml userlogout actor Client participant "APIRouter" as router participant "OAuth2Scheme" as oauth2 participant "TinyDBHelper" as db Client -> router : user_logout(token) activate router router -> oauth2 : get token from request activate oauth2 oauth2 --> router : token deactivate oauth2 router -> db : query_token(user_id, token) activate db alt if token exists db --> router : true router -> db : remove_token_by_value(token) db -> router : token removed else db --> router : false router --> Client : {"detail": "Token not found."} end deactivate db router --> Client : {"message": "User logged out successfully"} deactivate router @enduml