- Sub-100ms decisions — Hybrid CNN-LLM architecture delivers production-ready speed
- Real-time video streaming — Watch sessions live as they execute
- Human-in-the-loop controls — Manual takeover for credentials, approvals, or edge cases
- Multiple integration paths — REST, WebSocket, MCP, or OpenAI-compatible APIs
What WebRun Handles
Data Extraction at Scale
Extract structured data from dynamic websites without building custom scrapers. Example task: “Search LinkedIn for engineering managers in San Francisco with 5+ years experience. Return their profiles as JSON with name, title, company, and LinkedIn URL.”Form Automation
Navigate multi-step forms with conditional logic and dynamic fields. Example task: “Fill out this insurance quote form using the customer data in the attached JSON. Handle the multi-step workflow and return the final quote amount.”E-commerce Workflows
Search products, compare prices, add items to cart—all through natural language commands. Example task: “Find wireless keyboards under $50 on Amazon, filter by 4+ star ratings, and return the top 3 with price and review count.”Cross-Site File Transfers
Download files from one platform and upload them to another—moving documents, reports, and data between systems autonomously. Example task: “Download the monthly sales report from our analytics dashboard and upload it to the shared Google Drive folder.”Adaptive Testing
Test web applications without maintaining brittle test selectors. The agent adapts to UI changes automatically. Example task: “Go through the signup flow with invalid email formats and document all validation errors you encounter.”Sessions and Tasks
A session is an isolated browser instance. A task is a single instruction you give that session. Sessions can run indefinitely while active and expire after 5 minutes of inactivity, letting you chain multiple tasks sequentially.Response Model
Most tasks complete in 10-40 seconds. WebRun waits up to 50 seconds before returning. If your task finishes within that window, you get the result inline. If it takes longer, you poll for the result. This gives you the simplicity of synchronous APIs for typical use cases, with async polling available for complex workflows. Response model detailsGuardrails
When the agent needs human input—credentials, clarification, purchase approval—it triggers a guardrail and pauses. Your application detects this via the API response and provides the needed information to continue. Common triggers: Login forms, payment confirmations, CAPTCHAs, ambiguous instructions For login credentials, you can bypass guardrails entirely by providing secrets upfront when creating the session. Secrets are matched to websites by domain pattern and are never stored — they exist only in the session’s memory and are discarded when the session ends. Alternatively, use browser profiles to persist login cookies across sessions — log in once and reuse the saved browser state for future tasks. Guardrails documentation | Secrets documentation | Profiles documentationIntegration Options
Choose the integration method that fits your stack:| Method | Best For | Real-time Updates |
|---|---|---|
| REST API | Serverless functions, simple integrations | Poll for updates |
| WebSocket | Live dashboards, real-time monitoring | Yes |
| OpenAI-Compatible | Drop-in replacement for LangChain, Vercel AI SDK | Stream or poll |
| MCP Server | Claude Desktop, Cline, MCP clients | Session-based |
- Single task, auto-terminate? →
POST /start/run-task - Multiple tasks in sequence? →
POST /start/start-session+/send-message - Using LangChain or OpenAI SDK? →
POST /v1/chat/completions - Claude Desktop or MCP client? → MCP Server