feat: add admin account detail management

This commit is contained in:
chihlasm
2026-04-02 04:37:23 +00:00
parent 296153850b
commit f9de76b28c
8 changed files with 985 additions and 2 deletions

View File

@@ -86,6 +86,15 @@ class AdminAccountUsageSummary(BaseModel):
session_count_this_month: int = 0
class AdminAccountInviteSummary(BaseModel):
id: UUID
email: EmailStr
role: str
expires_at: Optional[datetime] = None
created_at: datetime
used_at: Optional[datetime] = None
class AdminAccountListItem(BaseModel):
id: UUID
name: str
@@ -110,6 +119,19 @@ class AdminAccountListResponse(BaseModel):
per_page: int
class AdminAccountDetailResponse(AdminAccountListItem):
invites: list[AdminAccountInviteSummary] = Field(default_factory=list)
class AdminAccountCreate(BaseModel):
name: str = Field(..., min_length=1, max_length=255)
plan: Literal["free", "pro", "team"] = "free"
class AdminAccountUpdate(BaseModel):
name: str = Field(..., min_length=1, max_length=255)
# --- Audit Logs ---
class AuditLogEntry(BaseModel):