The Hoody Browser service exposes a REST API for navigating pages, evaluating JavaScript, extracting rendered content, and exporting the visible document. All endpoints target the in-container Browser service reached through the Hoody proxy at the container hostname — they are not part of the control-plane Hoody API.
Every operation requires a browser_id query parameter selecting the browser instance (a 0-based index). Instance creation is automatic unless explicitly disabled with start=false.
Unique identifier for the browser instance (0-based index)
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
url
query
string
No
The URL to navigate to
tabId
query
integer
No
The ID of the tab to interact with
active
query
boolean
No
Make the tab active (focused) after navigation. Default: true
onlyIfNotExists
query
boolean
No
Only create a new tab if no tab with the same URL exists. Default: false
ignoreGetParameters
query
boolean
No
Ignore query parameters when checking for existing URL. Default: false
Opens a new tab (or reuses an existing one) and navigates to a URL using a JSON request body. Useful when the URL is long or you prefer POST semantics for navigation requests.
Unique identifier for the browser instance (0-based index)
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
Executes a JavaScript snippet in the context of the last active tab and returns the result. The script parameter accepts base64-encoded input for binary-safe transport.
Unique identifier for the browser instance (0-based index)
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
script
query
string
Yes
JavaScript code to execute (can be base64 encoded)
Executes a JavaScript snippet provided in the request body. The body may be JSON (application/json) with a script field or raw JavaScript (text/plain).
Unique identifier for the browser instance (0-based index)
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
The body is required. It may be sent as JSON or raw text:
application/json — object with a script field
text/plain — raw JavaScript source
Field
Type
Required
Description
script
string
No
JavaScript code to execute. The server rejects requests that omit this field with the MISSING_SCRIPT error code, so it should always be supplied even though the schema marks it optional.
Unique identifier for the browser instance (0-based index)
tabId
query
integer
No
The ID of the tab to interact with
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
Unique identifier for the browser instance (0-based index)
tabId
query
integer
No
The ID of the tab to interact with
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
url
query
string
No
Optional URL to navigate to before generating the PDF
Navigates to a URL and/or captures a screenshot of a browser tab. The response format depends on the format parameter:
png (default) — raw PNG bytes (image/png)
jpeg — raw JPEG bytes (image/jpeg)
base64 — JSON envelope with a data field containing the base64-encoded image
When url is provided, the browser navigates first and waits for the page to load before capturing. When url is omitted, a screenshot of the current page state is taken.
Unique identifier for the browser instance (0-based index)
start
query
boolean
No
Controls instance creation behavior. Instances are created automatically unless set to false. When auto-start is disabled globally, set to true to create an instance.
url
query
string
No
The URL to navigate to
tabId
query
integer
No
The ID of the tab to interact with
onlyIfNotExists
query
boolean
No
Only create a new tab if no tab with the same URL exists. Default: false
ignoreGetParameters
query
boolean
No
Ignore query strings when checking for existing URL. Default: false