|
|
| |
| from typing import Optional |
| from pydantic import BaseModel, Field |
|
|
| |
| class ChartExecutionPayload(BaseModel): |
| code: str = Field(..., description="The Python code to execute.") |
| csv_url: Optional[str] = Field(None, description="Optional CSV URL to be injected into scope") |
| chat_id: str = Field(..., description="Chat ID required for Supabase mapping") |
| return_base64: bool = Field(False, description="If True, returns base64 string instead of uploading to Supabase") |
|
|
| class ChartExecutionResponse(BaseModel): |
| status: str |
| image_url: Optional[str] = None |
| base64_image: Optional[str] = None |
| output_log: Optional[str] = None |
| error: Optional[str] = None |
| request_id: str |