26 lines
479 B
Python
26 lines
479 B
Python
from __future__ import annotations
|
|
|
|
from typing import Any, Generic, TypeVar
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
DataT = TypeVar("DataT")
|
|
|
|
|
|
class ApiResponse(BaseModel, Generic[DataT]):
|
|
request_id: str
|
|
success: bool
|
|
code: str
|
|
message: str
|
|
data: DataT
|
|
timestamp: str
|
|
|
|
|
|
class ErrorResponse(BaseModel):
|
|
request_id: str
|
|
success: bool = False
|
|
code: str
|
|
message: str
|
|
data: dict[str, Any] = Field(default_factory=dict)
|
|
timestamp: str
|