Scraper
Scrape any URL to clean, LLM-ready markdown in one call.
Send a URL and get its page content back as clean markdown (or raw HTML), with title and meta description. Results are cached and served from storage while fresh, so repeat lookups are fast. Ideal for content research, briefs and feeding pages into LLM pipelines.
/api/v1/scraper
$0.002 / request
Use your Seonio API key instantly.
curl -X POST https://seonio.com/api/v1/scraper \
-H "Content-Type: application/json" \
-H "X-API-Key: $SEONIO_API_KEY" \
-d '{"format": "md", "max_age_days": 7, "url": "https://moz.com/blog"}'
Sample response
{
"html": null,
"length": 18342,
"markdown": "# The Moz Blog\n\nThe latest SEO news, tips and research from the Moz team ...",
"meta_description": "Read the latest SEO news, tips and research from the Moz team.",
"scraped_at": "2026-07-05T12:00:00",
"title": "The Moz Blog | SEO Insights, Tips \u0026 Best Practices",
"url": "https://moz.com/blog"
}
Request and response
The full contract for /api/v1/scraper — what to send and what comes back.
Request body
url
string
required
A full URL, e.g. "https://moz.com/blog".
max_age_days
integer
optional
Cache freshness window in days (default 7). Cached pages younger than this are served from storage; older pages are re-scraped. Use 0 to force a fresh scrape.
format
string
optional
Output format: "md" (markdown, the default), "html" (raw HTML) or "both". Unknown values fall back to "md".
Response fields
url |
string |
The URL that was scraped. |
title |
string | null |
Page title, or null if nothing was scraped. |
meta_description |
string | null |
Meta description, or null if unavailable. |
length |
integer | null |
Character length of the page's markdown content, or null if nothing was scraped. |
markdown |
string | null |
The page content as markdown. Present for format "md" and "both"; null otherwise. |
html |
string | null |
The page as HTML. Present for format "html" and "both"; null otherwise. |
scraped_at |
string | null |
Timestamp of the stored scrape, or null if nothing was scraped. |
Code examples
Copy, paste, swap in your API key.
curl -X POST https://seonio.com/api/v1/scraper \
-H "Content-Type: application/json" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{"format": "md", "max_age_days": 7, "url": "https://moz.com/blog"}'
Playground
Run a real /api/v1/scraper request. No key? We show the real sample result so you can still inspect the shape.
Leave the API key empty to load the built-in sample response.
Request
POST /api/v1/scraper
What developers build with it
Common ways Scraper ends up in production.
Feeding page content into LLM and analysis pipelines as markdown.
Building content briefs from competitor pages.
Extracting article text without running your own scraper.
Status codes
The same predictable contract on every endpoint.
200 |
Success. The lookup completed and was charged, even if the response is empty. |
401 |
Missing or unknown API key. |
402 |
Not enough balance on the account. |
422 |
Invalid request body (wrong shape or types). |
429 |
Rate limit exceeded (fixed-window default: 30 requests / 3 seconds). |
Other endpoints
Explore the rest of the SEO API.
Keyword Research
/api/v1/keywords/global
Keyword Clustering
/api/v1/keywords/clustering
Keyword Suggestions
/api/v1/keywords/suggestions
Keyword Metrics by Country
/api/v1/keywords/country
SERP
/api/v1/serp/country
SERP Scraper
/api/v1/serp/scraper
Website Traffic
/api/v1/website/traffic
Website Ranking
/api/v1/website/ranking
URL Stats
/api/v1/url/stats
Website Stats
/api/v1/website/stats
Website Backlinks
/api/v1/backlink/website
URL Backlinks
/api/v1/backlink/url
API Balance
Add funds once and use them anytime. Your balance never expires. New accounts start with $1 free.
Starter
$10 to spend
Balance never expires.
A first top-up to kick the tires.
Pro
$115 to spend
+15% bonus
$100 + $15 free
The sweet spot for steady production traffic.
Scale
$1,300 to spend
+30% bonus
$1,000 + $300 free
Best rate per dollar for high-volume workloads.
FAQ
Simple answers for developers using the API.
Pricing & Balance
API & Integration
Start Researching for Free
$1 free balance included • No credit card required • Access all features