67 lines
1 KiB
Python
67 lines
1 KiB
Python
from typing import Dict, List
|
|
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class AnalysisRequest(BaseModel):
|
|
analysis_type: str
|
|
filters: Dict
|
|
|
|
|
|
class AnalysisResponse(BaseModel):
|
|
result: str
|
|
|
|
|
|
class AvailableSource(BaseModel):
|
|
display_name: str
|
|
name: str
|
|
format: str
|
|
|
|
|
|
class AvailableSourcesResponse(BaseModel):
|
|
sources: List[AvailableSource]
|
|
|
|
|
|
class ConversionRequest(BaseModel):
|
|
source_type: str
|
|
source_format: str
|
|
filename: str
|
|
|
|
|
|
class ConversionResponse(BaseModel):
|
|
status: str
|
|
metadata: dict
|
|
|
|
|
|
class ExportRequest(BaseModel):
|
|
filters: Dict
|
|
format: str
|
|
|
|
|
|
class ExportResponse(BaseModel):
|
|
export_url: str
|
|
status: str
|
|
|
|
|
|
class GenerateRequest(BaseModel):
|
|
prompt: str
|
|
|
|
|
|
class GenerateResponse(BaseModel):
|
|
content_url: str
|
|
status: str
|
|
|
|
|
|
class ImportRequest(BaseModel):
|
|
source_type: str
|
|
object_name: str
|
|
|
|
|
|
class ImportResponse(BaseModel):
|
|
status: str
|
|
message: str
|
|
task_id: str = None
|
|
|
|
|
|
class AvailableCollectionsResponse(BaseModel):
|
|
collections: List[str]
|