Turn any website into structured JSON

Send a URL and CSS selectors. Get clean, structured data back. No scraping, no parsing, no HTML to wade through.

View Docs See Pricing
$ curl -X POST https://structapi.duckdns.org/extract \
  -H "X-API-Key: sk-..."
  -H "Content-Type: application/json"
  -d '{
    "url": "https://news.ycombinator.com",
    "fields": [
      {"name": "title", "selector": ".titleline a"},
      {"name": "score", "selector": ".score", "multiple": true}
    ]
  }'

{
  "success": true,
  "data": {
    "title": "Show HN: StructAPI",
    "score": ["127", "89", "342", ...]
  }
}

CSS Selectors You Control

Define exactly what fields you want using familiar CSS selectors. Extract text, attributes, or HTML — with single values or arrays.

Auto-Detect Mode

No selectors? No problem. POST /auto and get title, headings, links, images, and paragraphs auto-extracted.

Structured Output Always

Every other scraping API returns raw HTML. We return clean JSON. Skip the parsing entirely.

Cheaper Than Diffbot

Diffbot starts at $299/mo. We start at free. Same idea — structured extraction — without the enterprise price tag.

No API Key? No Problem

Free tier gives you 100 requests/month. No credit card. Just curl and go.

Built for Developers

curl, Python, JavaScript — all in the docs. Copy-paste examples that just work.

Pricing

Free

100 requests/month
$0
  • Direct extraction
  • Auto-detect mode
  • Documentation

Pro

50,000 requests/month
$99/mo
  • Everything in Starter
  • Residential proxies
  • Geo-targeting
  • JS rendering

Scale

200,000 requests/month
$299/mo
  • Everything in Pro
  • Priority queue
  • Dedicated IPs
  • Custom SLAs