Skip to content

Live View

Live View lets you see and interact with a remote Browser Run session in real time. This is useful for debugging automation scripts, monitoring what a browser is doing, or manually stepping in when a task requires human intervention (see Human in the Loop).

Live View is available for any Browser Session, including sessions created with Puppeteer, Playwright, or the CDP endpoints.

How to access Live View

There are three ways to access Live View: through the Cloudflare dashboard, via the hosted user interface (UI) at live.browser.run, or using native Chrome DevTools.

Cloudflare dashboard

In the Cloudflare dashboard, go to the Browser Run page and select the Live Sessions tab. This shows all active browser sessions in your account. Expand a session to see its tabs, then select Open to open the Live View for that tab.

Go to Browser Run

Hosted UI (any browser)

When you create a session or list targets through the CDP endpoints, the API response includes a devtoolsFrontendUrl for each target (tab). Open this URL in any browser to load the DevTools UI hosted at live.browser.run, which streams the remote session to your browser.

The hosted UI supports two viewing modes, controlled by the mode parameter in the URL:

ModeURL patternDescription
Tabhttps://live.browser.run/ui/view?mode=tab&wss=...Standalone page view
Inspectorhttps://live.browser.run/ui/view?mode=devtools&wss=...DevTools inspector panel (Elements, Console, Network, etc.)

Native Chrome DevTools (Chrome only)

Because Browser Run speaks standard CDP, you can connect Chrome's built-in DevTools directly to a remote session. Replace the https://live.browser.run/ui/inspector?wss= prefix in the devtoolsFrontendUrl with the devtools:// protocol:

devtools://devtools/bundled/inspector.html?wss=live.browser.run/api/devtools/browser/SESSION_ID/page/TARGET_ID?jwt=...

Paste this URL into Chrome's address bar to connect native DevTools to the remote browser session. You will get the same DevTools interface you use for local debugging. The devtools:// protocol is Chrome-only and limited to inspector viewing mode.

View a new session

  1. Create a browser session with targets=true to include target URLs in the response:
Terminal window
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/browser-rendering/devtools/browser?keep_alive=600000&targets=true" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
{
"sessionId": "1909cef7-23e8-4394-bc31-27404bf4348f",
"targets": [
{
"description": "",
"devtoolsFrontendUrl": "https://live.browser.run/ui/inspector?wss=live.browser.run/api/devtools/browser/1909cef7-.../page/8E598E99...?jwt=...",
"id": "8E598E996530FB09E46A22B8B7754F7F",
"title": "about:blank",
"type": "page",
"url": "about:blank",
"webSocketDebuggerUrl": "wss://live.browser.run/api/devtools/browser/1909cef7-.../page/8E598E99...?jwt=..."
}
],
"webSocketDebuggerUrl": "wss://api.cloudflare.com/client/v4/accounts/{account_id}/browser-rendering/devtools/browser/1909cef7-..."
}
  1. Copy the devtoolsFrontendUrl from targets[0] and open it in your browser. You now have a live, interactive view of the remote browser session.

View an existing session

If you have a running session and want to connect to it:

  1. List your active sessions:

    Terminal window
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/browser-rendering/devtools/session" \
    --request GET \
    --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
  2. Using the session ID, list the targets in that session:

    Terminal window
    curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/browser-rendering/devtools/browser/$SESSION_ID/json/list" \
    --request GET \
    --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"
    [
    {
    "id": "110850A800BDB8B593CDDA30676635CF",
    "type": "page",
    "url": "https://example.com",
    "title": "Example Domain",
    "description": "",
    "devtoolsFrontendUrl": "https://live.browser.run/ui/view?wss=live.browser.run/api/devtools/browser/28d75446-.../page/110850A8...?jwt=...",
    "webSocketDebuggerUrl": "wss://live.browser.run/api/devtools/browser/28d75446-.../page/110850A8...?jwt=..."
    }
    ]
  3. Copy the devtoolsFrontendUrl and open it in your browser.