add api for post browser-use tasks
This commit is contained in:
parent
890d492de0
commit
d277955a9a
11 changed files with 320 additions and 8 deletions
|
|
@ -1,15 +1,41 @@
|
|||
from typing import Optional
|
||||
from enum import Enum
|
||||
from typing import Optional, Any
|
||||
|
||||
from pydantic import BaseModel, Field
|
||||
|
||||
|
||||
class TaskStatus(str, Enum):
|
||||
queued = "queued"
|
||||
running = "running"
|
||||
succeeded = "succeeded"
|
||||
failed = "failed"
|
||||
|
||||
|
||||
class BrowserTaskRequest(BaseModel):
|
||||
task: str = Field(..., description="Задача для браузера")
|
||||
timeout: int = Field(300, description="Максимальное время выполнения задачи в секундах")
|
||||
metadata: dict[str, Any] | None = Field(default=None, description="Метаданные клиента")
|
||||
|
||||
|
||||
class BrowserTaskResponse(BaseModel):
|
||||
class BrowserTaskAcceptedResponse(BaseModel):
|
||||
task_id: str
|
||||
status: TaskStatus
|
||||
|
||||
|
||||
class BrowserTaskStatusResponse(BaseModel):
|
||||
task_id: str
|
||||
status: TaskStatus
|
||||
create_at: float
|
||||
started_at: float | None = None
|
||||
finished_at: float | None = None
|
||||
error: str | None = None
|
||||
|
||||
|
||||
class BrowserTaskResultResponse(BaseModel):
|
||||
task_id: str
|
||||
status: TaskStatus
|
||||
success: bool
|
||||
result: Optional[str] = None
|
||||
error: Optional[str] = None
|
||||
execution_time: float
|
||||
result: str | None = None
|
||||
error: str | None = None
|
||||
raw_response: dict[str, Any] | None = None
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue