NewIntroducing semantic snapshotsPair every capture with structured DOM data →

Semantic snapshots

The web, pre-digested for your model

One call returns clean Markdown. Pro+ accounts can add structured DOM snapshots and deterministic extractions — so your agent reads pages the way a developer would, not the way a scraper does.

cURL
curl -X POST https://api.domscout.io/screenshot \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{ "url": "https://example.com", "extractMarkdown": true }'
Node.js
const response = await fetch("https://api.domscout.io/screenshot", {
  method: "POST",
  headers: { "Content-Type": "application/json", "x-api-key": "YOUR_API_KEY" },
  body: JSON.stringify({ url: "https://example.com", extractMarkdown: true, responseType: "json" }),
});
const { markdown, markdownMeta } = await response.json();
console.log(markdown, markdownMeta.estimatedTokens);
Python
import requests

response = requests.post("https://api.domscout.io/screenshot",
    headers={"Content-Type": "application/json", "x-api-key": "YOUR_API_KEY"},
    json={"url": "https://example.com", "extractMarkdown": True, "responseType": "json"})
result = response.json()
print(result["markdown"], result["markdownMeta"]["estimatedTokens"])
Request body
{
  "url": "https://example.com",
  "responseType": "json",
  "semanticSnapshot": { "detail": "summary", "selectorBundles": true },
  "cleanup": { "enabled": true, "preserveSelectors": [".product-gallery"] },
  "extract": {
    "fields": {
      "title": { "selector": "h1", "type": "text", "required": true },
      "price": { "selector": ".price", "type": "number" }
    }
  }
}

Pro+ availability

Semantic snapshots, deterministic extraction, cleanup, and related DOM intelligence are included on Pro+ plans. A deployment-wide emergency pause is reported as FEATURE_NOT_ENABLED with a platform reason; it is not an account-level entitlement issue.

Snapshot capabilities

Clean Markdown, ready for your model

HTML becomes tidy, readable Markdown, and every extraction reports its own markdownMeta.estimatedTokens — so the reduction is a number you measure on your pages, not one we quote. Fewer tokens, and no parsing rules to maintain.

Semantic DOM nodes, not soup

Tags, roles, accessible names, form state, hierarchy, visibility, and ranked selectors for every node — deterministic structure your agent can act on.

Deterministic extraction

Define selector-driven fields for text, numbers, booleans, attributes, URLs, and lists. Results report found, missing, or invalid selectors with source evidence. No prompt-based guessing.

Cleanup that hides the chrome

Heuristic cleanup hides consent UI, ads, chats, newsletters, and sticky navigation before extraction. Preserve selectors keep the elements you actually need visible.

How Markdown and DOM extraction work

From a URL to something a model can read, in three steps — with the page furniture removed before it ever becomes tokens.

  1. Step 1

    Send the URL with extractMarkdown

    One POST, one flag. The page is fetched and rendered in real Chromium first, so what gets converted is the DOM a browser produced rather than the HTML the server happened to send.

  2. Step 2

    Cleanup hides the page furniture

    Consent dialogs, ad slots, chat widgets, newsletter interstitials, and sticky navigation are hidden before extraction, so they never reach your model as tokens. Preserve selectors keep the elements you actually came for. Cleanup is a Pro+ DOM-intelligence feature.

  3. Step 3

    Read Markdown, nodes, or named fields

    Markdown arrives with a markdownMeta.estimatedTokens count so the reduction is a number you measure. Pro+ adds semantic DOM nodes with roles, accessible names, and ranked selectors, plus selector-driven extraction that reports each field as found, missing, or invalid.

Extraction questions, answered

Markdown conversion, token cost, semantic DOM nodes, field extraction, and cookie banners.

POST the URL with extractMarkdown set to true. The page renders in real Chromium, then the resulting DOM is converted to tidy Markdown and returned alongside a markdownMeta object that reports the estimated token count for what you got back. Markdown extraction is available on every plan, including the free Hobby tier.

Give your product a browser.

Get clean web content and visual proof into your workflow in minutes.