Skip to content

fastapi_tools.schemas.auth

Authentication-related Pydantic schemas.

Classes:

AuthURLResponse

Bases: BaseModel

Response containing Google OAuth authorization URL.

GoogleUserInfo

Bases: BaseModel

User information returned by the Google userinfo endpoint.

LoginResponse

Bases: BaseModel

Response after successful login.

LogoutResponse

Bases: BaseModel

Response after logout.

SessionData

Bases: BaseModel

Represents an active user session.

UserResponse

Bases: BaseModel

Public representation of a user.

Methods:

from_session classmethod

from_session(session: SessionData) -> UserResponse

Create a UserResponse from session data.

Source code in src/fastapi_tools/schemas/auth.py
@classmethod
def from_session(cls, session: SessionData) -> "UserResponse":
    """Create a UserResponse from session data."""
    return cls(
        id=session.user_id,
        email=session.email,
        name=session.name,
        picture=session.picture,
    )