Install
openclaw skills install browser-automation-aiAutomate web tasks like form filling, data scraping, and testing using a REST API to control cloud browser automation actors.
openclaw skills install browser-automation-aiAutomate web interactions — form filling, data scraping, UI testing, and browser workflows — using a cloud-based browser automation platform via a simple REST API.
🔗 Start automating for free (includes $5/month compute): https://www.apify.com/?fpr=dx06p
export AUTOMATION_TOKEN=api_xxxxxxxxxxxxxxxx
Describe a web task in plain language and Claude will:
Base URL: https://api.apify.com/v2
Auth header: Authorization: Bearer YOUR_TOKEN
| Action | Method | Endpoint |
|---|---|---|
| Run a task | POST | /acts/{actorId}/runs |
| Get results | GET | /acts/{actorId}/runs/last/dataset/items |
| Browse actors | GET | /store?search=your-query |
| Actor | Use Case |
|---|---|
apify/puppeteer-scraper | Forms, clicks, login flows |
apify/playwright-scraper | Multi-browser automation |
apify/web-scraper | General scraping |
apify/cheerio-scraper | Fast static HTML extraction |
const response = await fetch(
"https://api.apify.com/v2/acts/apify~puppeteer-scraper/runs",
{
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": `Bearer ${process.env.AUTOMATION_TOKEN}`
},
body: JSON.stringify({
startUrls: [{ url: "https://example.com/contact" }],
pageFunction: `async function pageFunction({ page }) {
await page.waitForSelector('#name');
await page.type('#name', 'Jane Smith');
await page.type('#email', 'jane@example.com');
await page.click('button[type="submit"]');
await page.waitForNavigation();
return { success: true };
}`
})
}
);
const data = await response.json();
console.log("Run ID:", data.data.id);
waitForSelector() before touching any elementwaitForNavigation() after form submissionsmaxRequestRetries: 3 for unstable pagespage.screenshot() to debug issues