Spaces:
Runtime error
Runtime error
| from pydantic import BaseModel, EmailStr, EmailStr, Field | |
| from typing import List, Optional | |
| from datetime import datetime | |
| class UserCreate(BaseModel): | |
| username: str | |
| email: EmailStr | |
| password: str | |
| brand_name: Optional[str] | |
| timezone: Optional[str] = None | |
| class UserResponse(BaseModel): | |
| username: str | |
| email: EmailStr | |
| brand_name: Optional[str] | |
| role: str = "user" | |
| plan: str = "free" | |
| trial_start_date: Optional[datetime] = None | |
| trial_end_date: Optional[datetime] = None | |
| subscription_start_date: Optional[datetime] = None | |
| subscription_end_date: Optional[datetime] = None | |
| status: str = "active" | |
| credits: int = 3 | |
| websites: List[str] = [] | |
| created_at: Optional[datetime] = None | |
| updated_at: Optional[datetime] = None | |
| class SignupResponse(BaseModel): | |
| message: str | |
| user: UserResponse | |
| class UserLogin(BaseModel): | |
| email: EmailStr | |
| password: str | |
| timezone: Optional[str] = None | |
| class TokenResponse(BaseModel): | |
| access_token: str | |
| token_type: str = "bearer" | |
| class ForgotPasswordRequest(BaseModel): | |
| email: EmailStr | |
| class ResetPasswordRequest(BaseModel): | |
| email: EmailStr | |
| otp: str | |
| new_password: str = Field(..., min_length=6, description="Your new password") |