33 lines
727 B
Python
33 lines
727 B
Python
from pydantic import BaseModel, EmailStr, Field
|
|
|
|
|
|
class RegisterRequest(BaseModel):
|
|
username: str = Field(min_length=3, max_length=64)
|
|
email: EmailStr
|
|
password: str = Field(min_length=8)
|
|
full_name: str = Field(min_length=2, max_length=120)
|
|
|
|
|
|
class LoginRequest(BaseModel):
|
|
login: str = Field(min_length=3, max_length=255)
|
|
password: str
|
|
|
|
|
|
class RefreshRequest(BaseModel):
|
|
refresh_token: str
|
|
|
|
|
|
class ForgotPasswordRequest(BaseModel):
|
|
login: str = Field(min_length=3, max_length=255)
|
|
|
|
|
|
class ResetPasswordRequest(BaseModel):
|
|
token: str
|
|
new_password: str = Field(min_length=8)
|
|
|
|
|
|
class TokenPairResponse(BaseModel):
|
|
access_token: str
|
|
refresh_token: str
|
|
token_type: str = "bearer"
|