Browser Run's browser bindings now let you handle sessions and DevTools with typed methods!
Hi, I'm Shiichan! Today I want to share a nice little update from Cloudflare Changelog about Browser Run.
Cloudflare ChangelogWhat was announced?
On September 21, 2026, Cloudflare Changelog announced that Browser Run's browser bindings now provide typed methods for session management and DevTools operations.
Here's what you can now do just by calling methods:
- Acquire a session with
acquire() - Launch and connect a browser client with
launch() - Acquire and connect in separate steps with
connectSession(sessionId) - Create Live View URLs
- Check active sessions
- View session history
- Check session limits
- Get session details
- Clean up (close) sessions
There's also a nested devtools binding that provides typed methods for browser version information, protocol descriptions, and target operations such as listing, creating, activating, and closing targets.
The story so far
Previously, managing sessions and DevTools operations on Browser Run's browser bindings required constructing HTTP requests by hand, which was a bit of a hassle.
What changes
With these typed methods in place, you can now acquire, connect, and manage sessions directly from code, without building HTTP requests yourself.
Another nice addition: acquire() and launch() now accept an outboundByHost option. This lets you route requests for selected hostnames through another Worker, for example one that adds authentication or reaches a private service.
Dive Deep
Use connectSession(sessionId) when you need to acquire and connect in separate steps. It returns a session-pinned WebSocket Fetcher for a CDP (Chrome DevTools Protocol) client.
Here's a code example using outboundByHost:
const connection = await env.BROWSER.launch({
outboundByHost: {
"private.example.test": env.OUTBOUND,
},
});
Just specify another Worker keyed by hostname, and requests to that host get routed through it.
For full method signatures, check the Browser binding API documentation, and for routing examples, see the outbound Worker feature guide.
Wrap-up
- Browser Run's browser bindings gained typed methods for session management and DevTools operations
acquire(),launch(), andconnectSession(sessionId)let you acquire and connect sessionsacquire()andlaunch()now acceptoutboundByHostto route requests for specific hosts through another Worker- The nested
devtoolsbinding adds version info and target operations too - Great news for developers building browser automation or scraping on Cloudflare Workers