DocsDialog Handlingbrowser_set_dialog_action

browser_set_dialog_action

browser_set_dialog_action

Configure automatic handling for JavaScript dialogs (alert, confirm, prompt, beforeunload). Set once and all future dialogs of that type are handled automatically. Useful for preventing dialog interruptions during automated browsing. Each dialog type can have a different action.

When to use browser_set_dialog_action

Use browser_set_dialog_action when you need to handle native JavaScript alerts, confirms, and prompts. It is part of Owl Browser's Dialog Handling toolset and runs inside a self-hosted, source-level stealth engine, so every call inherits the same undetectable browser fingerprint as the rest of your automation — no separate anti-detect setup required.

Usage Example

12345678910111213
import asyncio
from owl_browser import OwlBrowser, RemoteConfig
# Async usage
async with OwlBrowser(config) as browser:
context = await browser.create_context()
context_id = context["context_id"]
await browser.set_dialog_action(
context_id=context_id,
dialog_type="alert",
action="accept"
)

Parameters

Required

context_idstringrequired

The unique identifier of the browser context (e.g., 'ctx_000001')

dialog_typeenum
alertconfirmpromptbeforeunload
required

Type of JavaScript dialog to configure: 'alert' (message display), 'confirm' (yes/no), 'prompt' (text input), 'beforeunload' (page leave warning)

actionenum
acceptdismissaccept_with_textwait
required

How to automatically handle this dialog type: 'accept' clicks OK/Yes, 'dismiss' clicks Cancel/No, 'accept_with_text' accepts and provides text input (for prompts), 'wait' holds the dialog for manual handling via browser_handle_dialog

Optional

prompt_textstring

Default text to enter when accepting prompt dialogs. Only used when dialog_type='prompt' and action='accept_with_text'. Leave empty for blank input

Response

Returns a JSON object with the operation result.

{
  "success": true,
  "result": <value>
}

Frequently Asked Questions

What does browser_set_dialog_action do?

Configure automatic handling for JavaScript dialogs (alert, confirm, prompt, beforeunload). Set once and all future dialogs of that type are handled automatically. Useful for preventing dialog interruptions during automated browsing. Each dialog type can have a different action. It belongs to Owl Browser's Dialog Handling category and is available through the REST API, the Python SDK (browser.set_dialog_action()), the Node.js SDK, and the MCP server.

What parameters does browser_set_dialog_action accept?

browser_set_dialog_action accepts 3 required parameters (context_id, dialog_type, action) and 1 optional parameter. All parameters are sent as JSON in a POST request to /api/execute/browser_set_dialog_action.

Is browser_set_dialog_action detectable by anti-bot systems like Cloudflare or DataDome?

No. browser_set_dialog_action executes inside Owl Browser's Chromium engine, which applies fingerprint spoofing at the C++ source level rather than through JavaScript patches. Every tool call shares the same consistent, human-like fingerprint, so anti-bot systems such as Cloudflare, DataDome, and Akamai see an ordinary browser.

Related Tools

browser_get_pending_dialog

Check if there's a JavaScript dialog currently waiting for user action. Returns dialog type, message, default prompt value, and dialog ID. Returns null/empty if no dialog is pending.

browser_get_dialogs

Get all dialog events that have occurred in the context, including handled and pending dialogs. Useful for reviewing dialog history and debugging dialog handling.

browser_handle_dialog

Manually accept or dismiss a specific dialog by its ID. Use for interactive dialog handling instead of automatic actions. For prompt dialogs, can provide response text when accepting.

browser_create_context

Create a new isolated browser context with its own cookies, storage, and optional proxy configuration. Each context acts as an independent browser session. Use this to create multiple isolated browsing sessions, configure proxy/Tor connections, load browser profiles with saved fingerprints, and enable/disable LLM features. Returns a context_id to use with other browser tools.

browser_navigate

Navigate the browser to a specified URL. This is a non-blocking operation that starts navigation and returns immediately. Use browser_wait_for_network_idle or browser_wait_for_selector to wait for the page to fully load. Supports HTTP, HTTPS, file, and data URLs. When wait_until is set (load, networkidle, fullscroll, domcontentloaded) and the page declares WebMCP tools, the response includes a webmcp_tools array containing the full tool definitions (name, description, inputSchema). Use browser_webmcp_call_tool to execute any of these tools directly.

browser_observe

Agent-native page observation. Returns the compacted OwlMark render (text-only structural view of the page), a handle table of interactive elements with stable tokens, page metadata, and a token estimate. Pass a handle token (e.g. 'b3') or 'pm:N' to browser_click/browser_type. Requires the context to be created with render_mode 'agent' or 'both'. ~20-100x fewer tokens than a screenshot for AI agent page understanding.

Browse the full Owl Browser API reference or get started with the Python SDK and Node.js SDK.