29 lines
730 B
Python
29 lines
730 B
Python
from pydantic import BaseModel, Field
|
|
from datetime import datetime
|
|
from typing import Optional
|
|
from schemas.base import BaseSchema
|
|
from fastapi import UploadFile
|
|
|
|
# For additional metadata about the upload
|
|
class FileMetadata(BaseModel):
|
|
source: str = Field(..., title="Source")
|
|
type: str = Field(..., title="Type")
|
|
# optional
|
|
service: Optional[str] = Field(None, title="Service")
|
|
|
|
# For the response after upload
|
|
class FileUploadResponse(BaseSchema):
|
|
id: str
|
|
filename: str
|
|
type: str
|
|
file_size_kb: float
|
|
source: str
|
|
status: str
|
|
service: str
|
|
|
|
class FileDeleteResponse(BaseModel):
|
|
id: str
|
|
status: str
|
|
|
|
class GetPreparedFilesResponse(BaseModel):
|
|
files: list[FileUploadResponse] |