diff --git a/skyvern/webeye/schemas.py b/skyvern/webeye/schemas.py index f525af33..4895f978 100644 --- a/skyvern/webeye/schemas.py +++ b/skyvern/webeye/schemas.py @@ -4,6 +4,7 @@ from datetime import datetime from pydantic import BaseModel, Field +from skyvern.config import settings from skyvern.forge.sdk.schemas.persistent_browser_sessions import PersistentBrowserSession @@ -33,6 +34,11 @@ class BrowserSessionResponse(BaseModel): description="Url for connecting to the browser", examples=["http://localhost:9222", "https://3.12.10.11/browser/123456"], ) + app_url: str | None = Field( + None, + description="Url for the browser session page", + examples=["https://app.skyvern.com/browser-session/pbs_123456"], + ) started_at: datetime | None = Field(None, description="Timestamp when the session was started") completed_at: datetime | None = Field(None, description="Timestamp when the session was completed") created_at: datetime = Field( @@ -52,6 +58,9 @@ class BrowserSessionResponse(BaseModel): Returns: BrowserSessionResponse: The converted response object """ + app_url = ( + f"{settings.SKYVERN_APP_URL.rstrip('/')}/browser-session/{browser_session.persistent_browser_session_id}" + ) return cls( browser_session_id=browser_session.persistent_browser_session_id, organization_id=browser_session.organization_id, @@ -59,6 +68,7 @@ class BrowserSessionResponse(BaseModel): runnable_id=browser_session.runnable_id, timeout=browser_session.timeout_minutes, browser_address=browser_session.browser_address, + app_url=app_url, started_at=browser_session.started_at, completed_at=browser_session.completed_at, created_at=browser_session.created_at,