| 123456789101112131415161718192021222324 |
- from typing import Literal, Optional
- from pydantic import BaseModel, Field
- class ExportDocRequest(BaseModel):
- file_name: str = Field(..., alias="fileName", max_length=255, description="文件名(不含扩展名)")
- format: Literal["doc"] = Field(..., description="阶段 0 固定为 doc")
- content: str = Field(..., description="文档当前内容(Markdown)")
- document_id: Optional[str] = Field(None, alias="documentId", description="关联文档 ID,传入时同步更新草稿")
- # 阶段 0 暂不生效,后端固定使用 default.json;阶段 1 起传入有效 ID 则使用用户上传的样式
- style_id: Optional[str] = Field(None, alias="styleId", description="样式 ID;不传时使用默认样式")
- model_config = {"populate_by_name": True}
- class ExportDocResponse(BaseModel):
- download_url: str = Field(..., serialization_alias="downloadUrl")
- file_name: str = Field(..., serialization_alias="fileName")
- expires_at: int = Field(..., serialization_alias="expiresAt", description="Unix 毫秒时间戳")
- style_id: str = Field(..., serialization_alias="styleId", description="实际使用的样式 ID")
- model_config = {"populate_by_name": True}
|