SnoopScan
Get started

Output formats

Markdown, HTML, links, JSON in your schema.

formats is a list, so one request can return several formats of the same page. Each one is its own key on data.

FormatYou getUse it for
markdownThe page as markdownLLM prompts, search indexes and archives. The default.
htmlCleaned HTMLKeeping the page structure without the clutter.
rawHtmlThe document as servedParsing the page yourself.
linksEvery link on the pageFinding more pages, or checking what a page links to.
summaryA short summaryThe gist of a page, without the full text.
screenshotA PNG of the rendered pageRecords, monitoring and visual comparison.
jsonRows in your own schema, or a named templateStructured data. For a product, article or job listing, {"type":"json","template":"product"} needs no schema. See Extract.

Requesting several formats

import requestsr = requests.post(    'https://api.snoopscan.com/v1/scrape',    headers={'Authorization': 'Bearer sk_YOUR_KEY'},    json={        'url': 'https://example.com/pricing',        'formats': [            'markdown',            'links',            'screenshot'        ],        'onlyMainContent': True    },)print(r.json())
const r = await fetch('https://api.snoopscan.com/v1/scrape', {  method: 'POST',  headers: { Authorization: 'Bearer sk_YOUR_KEY', 'Content-Type': 'application/json' },  body: JSON.stringify({      "url": "https://example.com/pricing",      "formats": [          "markdown",          "links",          "screenshot"      ],      "onlyMainContent": true  }),});console.log(await r.json());
curl -X POST https://api.snoopscan.com/v1/scrape \  -H 'Authorization: Bearer sk_YOUR_KEY' \  -H 'Content-Type: application/json' \  -d '{    "url": "https://example.com/pricing",    "formats": [        "markdown",        "links",        "screenshot"    ],    "onlyMainContent": true}'
Returns data.markdown, data.links and data.screenshot in one response.

Including and excluding content

onlyMainContent is on by default and removes navigation, headers, footers and cookie banners. To keep an element it removes, list it in includeTags. To remove more, list it in excludeTags. Both take CSS selectors.

Ask only for the formats you need. A screenshot renders the page in a browser, so it is slower and can cost more than markdown.