Extract Structured Data
extractFetches a public page and returns, in data, JSON that matches the supplied JSON Schema. Only fields listed in required are guaranteed; optional nulls are omitted. Use it to get specific fields as structured data. Not for plain page text: use scrape_url. Reddit and Amazon pages are refused (use read_reddit or amazon_product). 40 credits per successful call, whatever the options; an answer that does not match the schema returns EXTRACTION_FAILED and is not charged. Required: url, schema.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"url": "<url>",
"schema": "<schema>"
},
"name": "extract"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http or https page URL, at most 8192 characters, e.g. "https://example.com/product/42". Reddit and Amazon pages, private addresses and sign-in pages are refused without charge. | |
| schema | Yes | JSON Schema (draft 2020-12 subset) of the JSON to return, e.g. {"type":"object","required":["title","price"],"properties":{"title":{"type":"string"},"price":{"type":"number"}}}. Root type object or array; at most 8 KB, 5 levels and 50 properties; local $ref only. | |
| premium | No | Fetch through residential proxies, for pages that come back blocked. Boolean, default false; same price. | |
| render_js | No | Run the page's JavaScript in a browser before extracting, for pages built in the browser. Boolean, default false; same price. |