> ## Documentation Index
> Fetch the complete documentation index at: https://docs.webrun.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Frequently Asked Questions

> Common questions about WebRun's browser automation platform

## Sessions & Performance

### How long can sessions run?

Sessions can run indefinitely while active and expire after 5 minutes of inactivity. The session inactivity timeout is fixed at 5 minutes and cannot be configured.

Tasks have a configurable `maxDuration` (in milliseconds) for maximum task execution time. Default and max is 300000 (5 minutes). Always terminate sessions when finished.

[Session lifecycle documentation](/concepts/sessions#lifecycle)

***

### Can I run parallel sessions?

Yes. Concurrent session limits:

* **Free Tier:** 2 sessions
* **Pro Tier:** 15 sessions
* **Enterprise:** Custom limits

When you hit the limit, new session requests fail with `SESSION_LIMIT_REACHED`. Terminate unused sessions before creating new ones or upgrade your plan.

[Session management](/concepts/sessions)

***

### What browsers does WebRun use?

Chrome only. Latest stable version. Standard desktop user agent (Windows 10, 64-bit).

We don't support Firefox, Safari, custom versions, or mobile emulation yet.

***

### What's the browser resolution?

1920×1080 (Full HD). Fixed resolution for all sessions.

Custom viewport sizes and mobile device emulation aren't supported yet.

***

## Authentication & Security

### How do I handle website login?

Four approaches:

**1. Secrets (recommended):**
Provide credentials upfront using the `secrets` parameter. The agent authenticates automatically without pausing. Secrets are matched by domain pattern and are never stored — they are discarded when the session ends.

```json theme={null}
{
  "task": {
    "prompt": "Log in and export the report",
    "secrets": [
      { "match": "*.example.com", "fields": { "email": "user@example.com", "password": "pass123" } }
    ]
  }
}
```

**2. Provide credentials in task description:**

```json theme={null}
{
  "prompt": "Navigate to example.com/login, enter username 'user@example.com' and password 'pass123', then go to dashboard"
}
```

**3. Handle via guardrails:**
When the agent encounters a login form, it triggers a guardrail. Your app provides credentials through the guardrail response.

**4. Manual takeover:**
Use manual control to enter credentials yourself while watching the video stream.

[Secrets guide](/usage-guides/secrets) | [Guardrails guide](/usage-guides/handling-guardrails) | [Manual control](/usage-guides/manual-interaction)

***

### Is my data secure?

**Session isolation:** Each session runs in an isolated browser instance. No shared cookies, localStorage, or cache between sessions. Instances are destroyed after termination.

**Encryption:** All API communication uses HTTPS/TLS 1.3. WebSocket connections are encrypted (WSS).

**Data retention:** Session logs are deleted after 30 days. Screenshots and recordings are deleted with the session.

**Credentials:** WebRun doesn't store credentials you provide to websites. When using [secrets](/usage-guides/secrets), credentials are only attached to the active session and immediately discarded when the session is destroyed — they are never persisted to a database or disk. Don't hardcode credentials—use environment variables.

***

### How do I handle CAPTCHAs?

CAPTCHAs require manual intervention. When the agent encounters a CAPTCHA, it triggers a guardrail. Use manual takeover to solve it while watching the video stream, then release control.

No automated CAPTCHA solving. Use rate limiting to reduce CAPTCHA frequency.

[Manual control guide](/usage-guides/manual-interaction)

***

## Integration & Compatibility

### Does WebRun work with my framework?

WebRun provides REST and WebSocket APIs. Any language or framework that makes HTTP requests works.

**Supported:**

* JavaScript/TypeScript (Node.js, Deno, Bun)
* Python (requests, httpx, FastAPI)
* Any language with HTTP/WebSocket support

**Popular integrations:**

* Next.js / React
* Express.js
* FastAPI / Django
* LangChain, LlamaIndex, Vercel AI SDK (via OpenAI-compatible endpoint)

[Integration guides](/integrations/rest-api)

***

### Can I use WebRun with MCP?

Yes. WebRun provides a native Model Context Protocol (MCP) server.

Install: `npx -y @webrun/mcp-server`

[MCP integration guide](/integrations/mcp-server)

***

### Can I use my own LLM API keys?

No. WebRun uses its own browser-optimized AI models. You cannot bring your own API keys or use different models.

Costs are included in your WebRun usage and billed based on input/output tokens.

[Pricing](/concepts/pricing)

***

## Pricing & Billing

### Is there a free tier?

Yes. \$5 free credits per month, 2 concurrent sessions, unlimited session duration (expires after 5 minutes of inactivity). All API features enabled.

Credits reset monthly and don't roll over.

[Pricing plans](/concepts/pricing)

***

### How are tokens counted?

**Input tokens:** Task description, page HTML/DOM content, previous conversation history, agent reasoning.

**Output tokens:** Agent actions, navigation decisions, extracted data, status messages.

Token costs:

* Input: \$0.60 per 1M tokens
* Output: \$1.80-2.70 per 1M tokens (model dependent)

Input tokens are cheaper because the model processes them in parallel. Output generation is sequential.

[Token usage guide](/concepts/pricing#token-pricing)

***

### Do idle sessions cost money?

No token costs during idle time. However, idle sessions occupy a concurrent session slot and consume compute time from creation until termination.

Always terminate sessions when finished to free up session slots.

[Cost optimization](/usage-guides/cost-optimization)

***

### Can I set spending limits?

Yes. Configure spending limits in your account at [app.webrun.ai/billing](https://app.webrun.ai/billing).

Options: Hard limits (API requests fail when reached) or soft limits (alerts only).

***

## Capabilities

### Can WebRun download and upload files?

Yes. WebRun can download files from websites and upload them to other platforms. This works for documents, reports, images, CSVs, and other common file types.

You can combine downloads and uploads in a single multi-task session to move files between systems—for example, exporting a report from one platform and uploading it to another.

**Example workflow:**

1. **Task 1:** "Download the monthly invoice from the billing dashboard"
2. **Task 2:** "Upload the invoice to the shared Google Drive folder"

[Supported interactions](/capabilities/supported-interactions) | [Multi-task workflows](/usage-guides/multi-task-workflows)

***

## Technical Details

### What User-Agent does WebRun use?

Standard Chrome User-Agent matching the latest stable version:

```
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
```

Appears as Windows 10, 64-bit Chrome. Not marked as headless or automated.

Cannot currently customize user agent, platform, or browser version.

***

### Can I use proxies?

Yes. Proxy support is available on all plans. Two options:

* **WebRun-managed proxies** — specify a country and WebRun assigns a residential proxy (\$4/GB data transfer).
* **Custom proxies** — bring your own HTTP or SOCKS proxy server (no additional charge).

Proxies are applied at the device level with 2-3 seconds of cold-start latency, ensuring no IP leakage.

[Proxies guide](/usage-guides/proxies) | [API parameters](/api-reference/parameters#proxy)

***

### Can I access browser console logs?

Not directly. Critical JavaScript errors are captured and may be included in task results.

For debugging, use guardrails to ask the agent: "Tell me if there are any JavaScript errors visible on the page."

[Debugging guide](/troubleshooting/common-issues)

***

### Can WebRun access sites behind login?

Yes, with considerations:

**Works:** Username/password forms, cookie-based auth
**Limited:** 2FA/MFA (requires manual intervention), OAuth flows (complex), session persistence (cookies don't persist across different sessions)

Recommended approach: use [secrets](/usage-guides/secrets) to provide credentials upfront. Alternatively, provide credentials in the task description or handle via guardrails.

[Secrets guide](/usage-guides/secrets) | [Authentication patterns](/usage-guides/handling-guardrails)

***

## Support

### Where can I find code examples?

* [Quickstart guide](/getting-started/quickstart) — Basic integration
* [API Reference](/api-reference/introduction) — All endpoints with examples
* [Usage guides](/usage-guides/multi-task-workflows) — Common patterns
* [GitHub examples](https://github.com/webrun-ai/examples) — Sample projects

***

### How do I get support?

**Free Tier:** Documentation, community Discord, email (48-hour response)

**Pro Tier:** Priority email (24-hour response), live chat during business hours

**Enterprise:** Dedicated account manager, 24/7 phone support, SLA guarantees

**Contact:** [support@webrun.ai](mailto:support@webrun.ai) | [discord.gg/webrun](https://discord.gg/webrun) | [status.webrun.ai](https://status.webrun.ai)

Before contacting support:

1. Check this documentation
2. Review [common issues](/troubleshooting/common-issues)
3. Check [error reference](/troubleshooting/errors-reference)
4. Check system status page

Include when reporting issues: Session ID, task ID, full error message, code snippet (redact API keys), timestamp.

***

## Related Resources

<CardGroup cols={2}>
  <Card title="Error Codes Reference" icon="exclamation-triangle" href="/troubleshooting/errors-reference">
    Complete error code documentation
  </Card>

  <Card title="Common Issues" icon="circle-exclamation" href="/troubleshooting/common-issues">
    Solutions for frequent problems
  </Card>

  <Card title="Quickstart Guide" icon="rocket" href="/getting-started/quickstart">
    Get started in 5 minutes
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/introduction">
    Complete API documentation
  </Card>
</CardGroup>
