Skip to main content
Theo Browser 為你的應用提供一個受管理的無頭 Chromium 會話,LLM 智能體可以通過自然語言工具(browser_navigate、browser_act、browser_extract、browser_observe、browser_screenshot)來驅動它,並通過可 iframe 嵌入的實時視圖將會話呈現出來,讓你的用戶可以實時觀看(或接管)。 以下四個端點均限定於調用者的 API 密鑰範圍,並受 connectors 權限範圍限制。會話默認硬性上限為 20 分鐘,並在空閒超時後自動關閉(可通過 THEO_BROWSER_SESSION_MAX_SECONDS / THEO_BROWSER_SESSION_IDLE_SECONDS 配置)。

端點

創建會話

請求體

string
可選的起始 URL。會話啓動後會立即導航到該地址,因此第一個實時視圖 URL 就已指向真實頁面(避免 about:blank 目標綁定問題)。
boolean
預設值:"false"
在智能體斷開連接後仍保持會話存活。如果你之後需要重新連接 Stagehand,則必須設置此項。
boolean
預設值:"false"
通過 Theo 的住宅代理池路由流量。按 MB 計費更高。
string
預設值:"us-west-2"
數據中心區域:us-west-2 · us-east-1 · eu-central-1 · ap-southeast-1。

響應(201)

embed_url 是零配置路徑。 直接將它放入你自己產品中的 <iframe src="...">,即可獲得帶 Theo 品牌的瀏覽器窗口(地址欄、實時狀態指示、重連界面),無需任何 SDK 集成。該令牌是短期有效的——請從你的後端調用 GET /:id 來獲取一個新的令牌。

刷新實時視圖 URL

BrowserBase 的調試器 URL 固定指向某個特定的 CDP 頁面目標。當智能體進行導航、點擊打開新標籤頁,或頁面銷燬了其目標時,嵌入的 WebSocket 連接會斷開。Theo 會在每次智能體工具調用後自動強制刷新——但你自己的界面也應支持按需刷新:
為什麼 live_view_version 很重要。 當 iframe 觸發 browserbase-disconnected postMessage 時,應帶 ?force=1 重新獲取。上游服務商可能返回相同的 URL 字符串,但在背後悄悄替換了底層的頁面目標。請使用 live_view_version(而不是 URL 相等性判斷)來決定何時應為 iframe 重新生成 key。

響應

列出活躍會話

返回 { sessions: BrowserSessionSnapshot[] }——與 GET /:id 中單個會話的結構相同。

查看會話

每次調用都會生成一個全新的 embed_url(有效期 1 小時),因此長時間運行的儀表盤可以不斷重新發起 iframe,而無需創建新的會話。

結束會話

響應

請始終顯式結束會話。空閒/最長時長清理器最終會關閉它們,但在此之前,你會按已經過的實際時長被計費。

錯誤