Several results from one page visit
scrape_urlExposes POST /scrape. Runs any subset of the other operations in one request, served from a single page visit where possible. Each operation is billed and stored exactly as the individual call would be, so this is not a discount — with one exception, and it is the reason to use it: a residential exit is charged per page VISIT, so several results off one visit pay the surcharge once.
Answers with one object keyed by operation, each entry carrying its own success and result, so a partial failure still returns everything that worked.
lighthouse does not share the visit — it runs its own audit on its own engine — so including it means two page fetches, and two surcharges when residential is on. So does a screenshot whose screenshot_options set viewport_width, viewport_height, device_scale_factor, dark_mode or block_ads: those change how the page loads, so the screenshot gets a visit of its own.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The page to fetch. Must be a public http(s) URL. | |
| sync | No | Wait for the result and return it (default false). When false the call returns a token immediately and you collect the result with get_result. | |
| device | No | Lighthouse only, when it is among the operations. Default mobile. | |
| labels | No | Your own keys to find this request by later, e.g. {"client": "acme"}: they come back with the result, in the webhook and in list_requests, which can filter by them. Up to 16 keys of up to 40 letters, digits, _ - or .; string values up to 256 characters. | |
| max_age | No | How fresh a stored result must be to be reused, e.g. "2 hours" or "3 days". Default 7 days, maximum 30. A reused result is free. Pass "0" to force a fresh fetch. | |
| report_to | No | Async only: a webhook URL to deliver the result to. Defaults to the project's configured endpoint, if it has one. | |
| operations | Yes | Which operations to run off this page. | |
| project_id | Yes | Which project this request belongs to. From list_projects. | |
| residential | No | Fetch the page from a residential (home ISP) exit instead of a datacentre one. Costs a surcharge per page visit — see get_usage. Use it for sites that block datacentre traffic. | |
| page_options | No | What to do to the page before anything is read off it. Applies to the result itself: removed ads and banners are gone from html, markdown and summaries too. | |
| include_audits | No | Lighthouse only: include the full per-audit detail. Default false. | |
| idempotency_key | No | Makes the call safe to retry: sending it again with the same key within 24 hours returns the first call's token and result instead of starting (and charging for) new work, even with max_age "0". Up to 255 printable ASCII characters; a UUID is ideal. | |
| screenshot_options | No | Screenshot only, when it is among the operations: how to take it, exactly as capture_screenshot takes it. |