Files
openclaw-mission-control/backend/app/schemas/board_groups.py

40 lines
849 B
Python

"""Schemas for board-group create/update/read API operations."""
from __future__ import annotations
from datetime import datetime
from uuid import UUID
from sqlmodel import SQLModel
RUNTIME_ANNOTATION_TYPES = (datetime, UUID)
class BoardGroupBase(SQLModel):
"""Shared board-group fields for create/read operations."""
name: str
slug: str
description: str | None = None
class BoardGroupCreate(BoardGroupBase):
"""Payload for creating a board group."""
class BoardGroupUpdate(SQLModel):
"""Payload for partial board-group updates."""
name: str | None = None
slug: str | None = None
description: str | None = None
class BoardGroupRead(BoardGroupBase):
"""Board-group payload returned from read endpoints."""
id: UUID
organization_id: UUID
created_at: datetime
updated_at: datetime