Files
freepik-api/app/schemas/common.py

40 lines
755 B
Python
Raw Normal View History

from datetime import datetime
from enum import Enum
from typing import Optional
from pydantic import BaseModel
class TaskStatus(str, Enum):
pending = 'pending'
processing = 'processing'
completed = 'completed'
failed = 'failed'
class TaskResponse(BaseModel):
task_id: str
status: TaskStatus
created_at: datetime
class TaskDetail(BaseModel):
task_id: str
status: TaskStatus
created_at: datetime
updated_at: datetime
progress: Optional[float] = None
result_url: Optional[str] = None
error: Optional[str] = None
class TaskListResponse(BaseModel):
tasks: list[TaskDetail]
total: int
class ErrorResponse(BaseModel):
error: str
detail: Optional[str] = None
status_code: int