{"uid":"cap_8uivdu5rKbDlOn7TcDgdR","slug":"agishub-browser-automation-404089e0","name":"AGISHub Browser Automation","description":"Drive a headless browser: open a URL and run an ordered list of steps — click, type, press keys, wait, extract text and screenshot. For flows the plain scraper can't reach (logins, forms, multi-step pages).","url":"https://api.agishub.com/v1/browser-automate","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input","output"],"properties":{"input":{"type":"object","required":["type","method","queryParams"],"properties":{"type":{"enum":["http"],"type":"string"},"method":{"enum":["GET"],"type":"string"},"queryParams":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri","description":"Starting URL to open in a headless browser."},"steps":{"type":"array","items":{"type":"object","required":["action"],"properties":{"ms":{"type":"integer","maximum":10000,"minimum":0,"description":"Milliseconds to wait (wait, when no selector given)."},"text":{"type":"string","description":"Text to type (type), or key to press (press, e.g. 'Enter')."},"action":{"enum":["click","type","press","wait","extract_text","screenshot"],"type":"string","description":"What to do."},"selector":{"type":"string","description":"CSS selector (for click/type/wait-for/extract_text)."}},"additionalProperties":false},"maxItems":20,"description":"Ordered actions to perform after the page loads."},"screenshot":{"type":"boolean","description":"Also return a final full-page PNG screenshot (base64)."}},"additionalProperties":false}},"additionalProperties":false},"output":{"type":"object","required":["type","example"],"properties":{"type":{"enum":["json"],"type":"string"},"example":{"type":"object"}},"additionalProperties":false}}},"responseSchema":{"type":"json","example":{"result":"Drive a headless browser: open a URL and run an ordered list of steps — click, type, press keys, wait, extract text and "}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.1","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.1/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.1","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_R3l9799MHZVRnGKarf-Q8","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.1","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Drives a headless browser to open a URL and execute an ordered sequence of actions (click, type, press keys, wait, extract text, screenshot) for automating multi-step or login-gated web flows.","exampleAgentPrompt":"Go to https://example.com/login, click the username field with selector '#username', type 'myuser', click '#password', type 'mypass', press Enter, then wait 2000ms for the dashboard to load and extract the text from '.dashboard-summary', and take a final screenshot.","exampleUseCases":[{"title":"Scraping login-gated content","prompt":"Go to https://app.example.com/login, type 'myemail@company.com' into '#email' and 'secret123' into '#password', click the submit button, wait 2 seconds, then extract all the text inside '.report-table' and take a screenshot."},{"title":"Automating multi-step web form","prompt":"Open https://portal.example.gov/application, click '#start-button', type 'John Smith' into '#full-name', press Tab, type '1990-05-15' into '#dob', click '#next-step', wait 1500ms, then extract the confirmation text from '.confirmation-message'."},{"title":"Capturing dynamic page screenshot","prompt":"Navigate to https://dashboard.example.com/analytics?range=30d, wait 3000ms for the charts to fully render, then take a full-page screenshot and extract the summary numbers from '.stats-overview'."}],"resultDescription":"A JSON object containing the results of each step — extracted text strings from extract_text actions, and optionally a base64-encoded PNG screenshot of the final page state. Step results are returned in order corresponding to the input steps array.","failureModes":["Page fails to load or times out — network error or invalid URL returns error response","CSS selector not found on page — action step fails with selector-not-found error","Login or CAPTCHA challenge blocks headless browser — authentication step may fail silently","JavaScript-heavy pages not fully rendered within wait time — extracted text may be empty or incomplete","Exceeded 20-step limit — request rejected with validation error","Invalid step action enum value — schema validation error returned","Screenshot disabled by default — must explicitly set screenshot:true to receive image"],"whenToPreferThis":"Choose this endpoint when a plain HTTP scraper cannot reach the content — specifically for pages that require login, form interaction, JavaScript rendering, pagination clicks, or multi-step user flows. It is superior to static scrapers for dynamic single-page apps, authenticated portals, and any workflow requiring typed input or button clicks. Prefer it over static fetch-based scrapers whenever the target page requires user interaction to reveal content.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-16T00:39:11.948Z","isFirstParty":false}