Scrape

Start a web page scrape

Navigates to a URL in Chrome via CDP, waits for framework-aware readiness, and extracts content in up to 7 formats from a single page load. HTTPS only. Two-layer SSRF prevention on the URL and again on the page a redirect lands on (a private landing fails the job). Up to 3 jobs run at once and 20 more wait; each job fails as timed out after 90 seconds. Requires Chrome connection.

Formats: markdown (AX tree → structured markdown, default — best for AI consumption), text (HTML → plain text, fast), readability (cleaned HTML, noise stripped), axTree (raw accessibility tree), html (raw page HTML), links (extracted links with anchor text and context), screenshot (base64 PNG).

post/v1/scrape

Request

  • Base URL: http://localhost:9998
  • URL: http://localhost:9998/v1/scrape
  • Auth: HTTP bearer

Request body

urlstring required

HTTPS URL to scrape

formatsstring[]

Output formats (default [markdown])

waitForSelectorstring

PiperSelector to wait for before extracting

waitMsinteger

Additional milliseconds to wait after page load (max 10000)

executeScriptstring

JavaScript to run before extraction

focusstring

For the AX-tree formats, only the subtree this selector names (e.g. role:main)

maxCharsinteger

For the AX-tree formats, the pruned tree's character budget

Response

Scrape job started

idstring required
urlstring required
status'running' | 'completed' | 'failed' required
errorstring nullable
createdAtstring date-time required

Changes

No recorded changes to this operation across all 1 revision of this API.