Deep web research
Pull facts from public web pages into structured research workflows. Every field comes with a confidence score and the source URLs that produced it, ready to cite.
The problem with web research today
Web research is slow because every source needs a custom scraper, and manual research is not reproducible. LLM agents that browse the web produce hallucination-prone summaries with no source trail, you can't tell which claim came from which page, and you can't re-run the same query later and get a consistent result.
The other problem is depth. A single-page scrape misses context spread across ten related pages. Research workflows need to map a domain, process relevant pages in parallel, and aggregate results against a shared schema.
How SuperScraper fits
Define a schema, point the API at a URL or a domain, and get structured research output with confidence scores and source citations.
Scrape → extract → structured output in one call
/v1/extract takes a URL and a JSON schema and returns structured fields extracted by the four-layer cascade: JSON-LD first (free, highest quality), then Open Graph, then regex, then LLM. You get structured data without writing a parser.
Source trail on every field
The _provenance array lists every URL that contributed to the result. For research workflows, that is the citation list, ready to include in a report or hand to a human reviewer.
Chat-native for open-ended research
POST /v1/chat accepts natural language queries. The intent router classifies the request, selects the right data source, and returns structured data with a preview. Good for explorations where you don't yet know the schema.
Batch processing for breadth
/v1/batch processes up to 100 URLs in one request and returns structured results for each. Use it to pull the same fields from a list of sources in parallel, price comparisons, industry surveys, coverage mapping.
/v1/extract
Schema extraction with _confidence + _provenance on every field
/v1/scrape
Page → clean markdown, good for reading before defining schema
/v1/map
Discover every URL on a domain in one call
/v1/batch
Extract from up to 100 URLs in parallel
/v1/crawl
Async full-site crawl for very large domains
/v1/chat
Natural-language research queries routed to the right data source
Extract structured facts with citations
Define the fields you want and pass the URL. The response includes the structured data, a confidence score, and the source URLs.
curl -X POST https://superscraper-production-1381.up.railway.app/v1/extract \
-H "Authorization: Bearer $SS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/about",
"schema": {
"companyName": "string",
"founded": "string",
"headquarters": "string",
"employeeCount": "string",
"products": "string[]",
"ceo": "string"
}
}'
# Response
{
"companyName": "Example Corp",
"founded": "2012",
"headquarters": "Austin, TX",
"employeeCount": "250-500",
"products": ["Platform A", "Platform B"],
"ceo": "Jane Smith",
"_confidence": 0.88,
"_extraction_method": "json-ld+llm-schema",
"_provenance": [
"https://example.com/about",
"https://example.com/team"
]
}For multi-source research, use /v1/batch with the same schema across many URLs:
curl -X POST https://superscraper-production-1381.up.railway.app/v1/batch \
-H "Authorization: Bearer $SS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"urls": [
"https://source-a.com/report",
"https://source-b.com/analysis",
"https://source-c.com/data"
],
"schema": {
"metric": "string",
"value": "number",
"date": "string",
"source": "string"
}
}'Frequently asked questions
What is the extraction cascade and why does it matter for research?
The extraction cascade tries four methods in order: JSON-LD structured data (highest quality, free), Open Graph meta tags, regex on markdown, and LLM schema extraction. Each method returns a _confidence score. For research, this means structured data without a custom parser and a clear signal about how reliable each extracted field is.
How do I get citations for extracted facts?
Every /v1/extract and /v1/scrape response includes a _provenance array with the URLs the data was pulled from. For /v1/batch, each result in the response carries its own _provenance. Use these as the citation list in your research output.
Can I research a whole domain, not just one page?
Yes. Use /v1/map to discover all URLs on a domain, then pass the URL list to /v1/batch with a schema. For very large sites, use /v1/crawl which processes the whole domain asynchronously and returns a job ID you poll for results.
Does the LLM extraction use Claude or another model?
The LLM router picks the model based on task complexity and your tier. The free tier uses Llama via Groq, the paid tier uses DeepSeek by default, and complex extraction tasks route to Claude. The _extraction_method field in the response tells you which method and model was used.
Start your first research workflow
Run any endpoint live in the playground, or grab a free key. 1,000 credits a month, no card.