API & Runtime Documentation
BrowserAutomation.online provides ephemeral, isolated Chromium and WebKit microVMs accessible via Chrome DevTools Protocol (WSS) and synchronous REST endpoints.
WebSocket Connection (Playwright / Puppeteer / Java)
Pass query parameters directly in your WebSocket handshake URL to configure browser fingerprinting, residential proxy routing, and session persistence.
| Parameter | Type | Description |
|---|---|---|
| stealth | boolean | Enables kernel-level JA4 TLS spoofing, WebGL canvas noise, and navigator patching (Default: true). |
| proxy | string | ISO country code for residential proxy routing (e.g., res_us, res_gb, res_de, res_in). |
| solveCaptcha | boolean | Automatically intercepts and solves Cloudflare Turnstile, hCaptcha, and reCAPTCHA v2/v3 challenges. |
| sessionId | string | Mounts encrypted cookies and LocalStorage from the Persistent Session Vault across runs. |
| timeout | integer | Maximum session duration in milliseconds (30,000 to 1,800,000). |
AI Agent Runtime & Claude MCP Integration
Our platform powers autonomous web agents using Anthropic Claude (Computer Use & Sonnet/Haiku tool-calling), OpenAI, and LangGraph. You can attach our hosted Model Context Protocol (MCP) server directly to your agent workflow or extract structured JSON schemas from live DOM trees.
// claude_desktop_config.json or Agent MCP Client
{
"mcpServers": {
"browserautomation-cloud": {
"command": "npx",
"args": ["-y", "@browserautomation/mcp-server"],
"env": {
"BA_API_KEY": "ba_live_your_api_key_here",
"BA_STEALTH_MODE": "strict",
"BA_PROXY_REGION": "res_us"
}
}
}
}
Synchronous Structured Extraction (POST /v1/extract)
Render any JavaScript-heavy SPA in a stealth browser and extract clean Markdown or LLM-parsed JSON in a single HTTP call.
curl -X POST https://api.browserautomation.online/v1/extract \
-H "Authorization: Bearer ba_live_98a7f6..." \
-H "Content-Type: application/json" \
-d '{
"url": "https://example-ecommerce.com/product/492",
"waitForSelector": ".price-box",
"proxy": "res_us",
"outputFormat": "json",
"schema": {
"productName": "string",
"price": "number",
"inStock": "boolean"
}
}'
Rate Limits & Status Codes
Concurrency limits depend on your plan tier (5 concurrent browsers on Developer, 50 on Production, 500+ on Enterprise). Exceeding concurrency queues incoming WebSocket handshakes for up to 15 seconds before returning HTTP 429 Too Many Requests.