WealthFromAI/data-science-ml-document-generation-api-2fd7
0
1from pydantic import BaseModel, Field
2from typing import Optional
3from datetime import datetime
4
5
6class ItemCreate(BaseModel):
7 name: str = Field(..., min_length=1, max_length=200, description="Item name")
8 description: Optional[str] = Field(None, max_length=2000)
9 category: Optional[str] = Field(None, max_length=100)
10 tags: list[str] = Field(default_factory=list)
11 metadata: dict = Field(default_factory=dict)
12
13 model_config = {"json_schema_extra": {"example": {
14 "name": "Sample Item",
15 "description": "A sample data_science item",
16 "category": "default",
17 "tags": ["data_science"],
18 "metadata": {},
19 }}}
20
21
22class ItemUpdate(BaseModel):
23 name: Optional[str] = Field(None, min_length=1, max_length=200)
24 description: Optional[str] = Field(None, max_length=2000)
25 category: Optional[str] = None
26 tags: Optional[list[str]] = None
27 metadata: Optional[dict] = None
28
29
30class ItemResponse(BaseModel):
31 id: str
32 name: str
33 description: Optional[str]
34 category: Optional[str]
35 tags: list[str]
36 metadata: dict
37 created_by: str
38 created_at: str
39 updated_at: str
40
41
42class HealthResponse(BaseModel):
43 status: str
44 service: str
45 version: str
46 timestamp: str
47 items_count: int
48 