Browser Actions API
Click, fill, select, scroll and capture screenshots on the rendered page, then extract the result. One request, a result for every action.
How It Works
Request → rendered page → your actions → screenshot or extraction.
- 1
Your request
POST a URL with render_js: true and an ordered list in advanced.actions.
- 2
Rendered page
AlterLab opens the page in a managed Chromium browser and waits for it to load.
- 3
Your actions
Each action runs in order: click, fill, select, scroll, wait, evaluate.
- 4
Screenshot or extraction
You get the final HTML, Markdown or JSON, optional screenshots, and action_results.
Action Types at a Glance
Everything a person does on a page, as a JSON step.
waitFixed delay, or wait until an element is visible. A selector wait that times out fails the action.
wait_forWait for an element to reach a state. Fails on timeout.
clickClick an element.
fillFill an input field with a value.
pressPress a keyboard key.
scrollScroll by a number of viewport heights.
infinite_scrollScroll repeatedly until the end of content or max_scrolls is reached.
screenshotCapture a screenshot at this point in the sequence (returned as screenshot_url).
evaluateRun JavaScript in the page. The return value is reported in result.
dismiss_consentRemove the cookie consent overlay from the live page.
selectChoose an option in a <select> element.
hoverHover over an element (menus, tooltips, lazy content).
click_textClick the element whose visible text matches.
extractRead text or an attribute from the first matching element into result.
checkCheck a checkbox or radio button.
uncheckUncheck a checkbox.
wait_eventWait for a page load state (e.g. after a navigation).
snapshotCapture the page HTML or markdown at this point (returned as snapshot_url).
What Teams Build With Actions
The content you need often appears only after someone interacts with the page.
Clean screenshots for website audits and visual monitoring
dismiss_consent → wait_for → screenshot
E-commerce variant selection and price capture
select → wait_for → extract
Load-more and infinite-scroll feeds
click → wait_for → infinite_scroll
Search and form-driven pages
fill → press → wait_for
AI agents via MCP
MCP scrape tool → actions
No-code with n8n
n8n node → actions
Clean screenshots for website audits and visual monitoring
Dismiss the cookie notice, wait for the hero to load, then capture a full-page screenshot. Use it for SEO and accessibility audits, client reports, or visual change monitoring.
New to page captures? Read what screenshot capture is.
E-commerce variant selection and price capture
Pick a size or color from the variant selector and read the price that appears for it. Each extract action returns its value directly in action_results.
Load-more and infinite-scroll feeds
Click a Load more button or scroll until the feed stops growing, then extract every card in one response.
Search and form-driven pages
Type a query into a search box, press Enter and wait for the results list. Works for store locators, directories and filter panels.
AI agents via MCP
The hosted MCP server exposes the same actions to Claude, Cursor and other agents, so an agent can click through a page and read the result in one tool call.
Set up the hosted MCP server.
No-code with n8n
Add actions to the AlterLab n8n node and feed screenshots or extracted values into the rest of your workflow without writing code.
See the n8n integration guide.
One Request, Every Step Reported
Hide the cookie notice, choose a size, read the price and take a full-page screenshot.
curl -X POST https://api.alterlab.io/v1/scrape \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://shop.example.com/product/123",
"advanced": {
"render_js": true,
"screenshot": true,
"actions": [
{
"type": "dismiss_consent",
"mode": "hide"
},
{
"type": "select",
"selector": "#size",
"value": "M"
},
{
"type": "wait_for",
"selector": ".price",
"state": "visible"
},
{
"type": "extract",
"selector": ".price"
},
{
"type": "screenshot",
"full_page": true
}
]
}
}'Every action returns an entry in action_results with its success flag, result and screenshot URL. Try it on your own URL in the playground or read the full browser actions guide.
Actions Are Included
Pay for the rendered page, not for each click.
Failed screenshot captures are free. PDF, extraction and OCR add-ons are billed as usual. See pricing for every tier.
Browser Actions Resources
Browser Actions Guide
Every action type, limits, ordering, action_results and recipes.
JavaScript Rendering API
Full browser rendering for React, Vue, Angular and other SPAs.
Authenticated Scraping
Use your own session cookies to scrape pages behind a login.
What Is Screenshot Capture?
How headless browsers capture pages for audits, monitoring and archiving.
MCP Server for AI Agents
Give Claude, Cursor and other agents a scrape tool with browser actions.
n8n Integration
Run browser actions from no-code n8n workflows.
Your first scrape.
Sixty seconds.
Up to 5,000 free requests — about 5,000 Light, 500 Protected or 250 Dynamic requests. No credit card.
Just a POST request.
No credit card required · Up to 5,000 free requests (about 5,000 Light, 500 Protected or 250 Dynamic requests) · Balance never expires