DocsElement Statebrowser_get_page_map

browser_get_page_map

browser_get_page_map

Get a compact structured map of all interactive elements on the page, grouped by sections. Returns a markdown table with numbered references, types, descriptions, current values, and selectors. Use element numbers as selectors in browser_click and browser_type (e.g., selector '5'). 10x cheaper than screenshots for AI agent page understanding.

When to use browser_get_page_map

Use browser_get_page_map when you need to inspect the state, attributes, and geometry of page elements. It is part of Owl Browser's Element State 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

1234567891011
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.get_page_map(
context_id=context_id
)

Parameters

Required

context_idstringrequired

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

Optional

intentstring

Task description to boost matching elements (e.g., 'buy nvidia jetson')

max_elementsinteger

Maximum number of elements to return (0 = unlimited). Returns top N by importance score

regionstring

Filter to specific page region: 'main', 'nav', 'header', 'footer', 'sidebar', 'article', 'form', 'dialog'. Empty = all regions

Response

Returns a JSON object with the operation result.

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

Frequently Asked Questions

What does browser_get_page_map do?

Get a compact structured map of all interactive elements on the page, grouped by sections. Returns a markdown table with numbered references, types, descriptions, current values, and selectors. Use element numbers as selectors in browser_click and browser_type (e.g., selector '5'). 10x cheaper than screenshots for AI agent page understanding. It belongs to Owl Browser's Element State category and is available through the REST API, the Python SDK (browser.get_page_map()), the Node.js SDK, and the MCP server.

What parameters does browser_get_page_map accept?

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

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

No. browser_get_page_map 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

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