JRNET / schemas /user.py
Factor Studios
Upload 96 files
6a5b8d8 verified
raw
history blame contribute delete
704 Bytes
"""
User-related schemas
"""
from pydantic import BaseModel, EmailStr
from typing import Optional
from datetime import datetime
class UserBase(BaseModel):
username: str
email: EmailStr
vpn_protocol: str = "outline"
class UserCreate(UserBase):
password: str
class UserUpdate(BaseModel):
email: Optional[EmailStr] = None
password: Optional[str] = None
vpn_protocol: Optional[str] = None
class UserResponse(UserBase):
id: str
role: str
is_active: bool
created_at: datetime
last_login: Optional[datetime]
class Config:
orm_mode = True
class TokenResponse(BaseModel):
access_token: str
token_type: str