GrowthOps_OS / app /schemas.py
Corin1998's picture
Update app/schemas.py
e126128 verified
from pydantic import BaseModel, EmailStr, Field
from typing import Optional, Any
class TenantCreate(BaseModel):
name: str
class TenantOut(BaseModel):
id: int
name: str
class Config:
from_attributes = True
class UserCreate(BaseModel):
email: EmailStr
password: str
tenant_id: int
is_tenant_admin: bool = False
class UserOut(BaseModel):
id: int
email: EmailStr
tenant_id: int
is_tenant_admin: bool
class Config:
from_attributes = True
class LoginRequest(BaseModel):
email: EmailStr
password: str
class TokenOut(BaseModel):
access_token: str
token_type: str = "bearer"
class PlanCreate(BaseModel):
name: str
monthly_quota: int = 1000
features: dict = Field(default_factory=dict)
class SubscriptionCreate(BaseModel):
tenant_id: int
plan_id: int
class AppCreate(BaseModel):
name: str
description: str = ""
callback_url: str = ""
class InstallAppRequest(BaseModel):
tenant_id: int
class JobCreateRequest(BaseModel):
tenant_id: int
kind: str = "pptx" # pptx | docx
payload: dict = Field(default_factory=dict)
class SSORequest(BaseModel):
tenant_id: int
user_id: int
expires_in: int = 300
class SimpleMessage(BaseModel):
message: str
data: Optional[Any] = None