Files
ai-contract-platform/backend/app/schemas/auth.py
T
2026-04-24 13:44:17 +08:00

55 lines
928 B
Python

from pydantic import BaseModel, EmailStr, Field
class RegisterRequest(BaseModel):
username: EmailStr
password: str = Field(min_length=6, max_length=64)
display_name: str = Field(min_length=1, max_length=100)
class LoginRequest(BaseModel):
account: str
password: str
class UserInfo(BaseModel):
id: str
tenant_id: str
username: str
display_name: str
role: str
status: str
class LoginResponse(BaseModel):
access_token: str
token_type: str = "Bearer"
expires_in: int
user: UserInfo
class RegisterResponse(BaseModel):
id: str
username: str
display_name: str
role: str
status: str
class LogoutResponse(BaseModel):
success: bool = True
class MessageResponse(BaseModel):
success: bool = True
class SeedAdminResponse(BaseModel):
username: str
password: str
created: bool
class AuthTokenPayload(BaseModel):
sub: str