DOCUMENTATION

Make the web legible to your software.

RounderOne exposes five JSON POST routes on this domain. Authenticate with an API key from your dashboard, then read cleaned Markdown, link maps, or structured JSON back.

Authentication

Create a key in the dashboard and send it as a bearer token. Keys are shown once, stored only as hashes, and can be revoked at any time. Unauthenticated calls run in a limited demo mode capped per day and per IP.

curl -X POST https://rounderone.app/api/scrape \
  -H 'Authorization: Bearer ro-YOUR_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com","formats":["markdown"]}'

Core endpoints

Every route returns JSON with a success flag, the retrieved data or an actionable error, and a usage block reporting credits charged and credits remaining.

POST /api/search

Query the live web with provider fallback across DuckDuckGo, Bing, Brave, Mojeek, and Wikipedia. 1 credit, plus 1 per page when scrapeResults is enabled.

POST /api/scrape

Extract one public HTML URL into Markdown, text, raw HTML, metadata, and normalized links. 1 credit.

POST /api/map

Discover a site's URLs from sitemap.xml with a homepage link fallback. 1 credit.

POST /api/crawl

Bounded same-origin crawl with page, depth, include, and exclude controls. 1 credit per page fetched.

POST /api/extract

Structured JSON from CSS selectors or regex patterns. Standard plan and above. 3 credits.

Plans and limits

Credits reset monthly. Rate limits are per key, per minute, and every response includes X-RateLimit headers so clients can back off precisely.

Free

500 credits, 10 requests/minute, 5-page crawls, 10 search results, 15s scrape timeout.

Standard

100,000 credits, 120 requests/minute, 50-page crawls, 20 search results, 25s scrape timeout, extract and scrapeResults enabled.

Enterprise

Unmetered credits, 600 requests/minute, 200-page crawls, concurrency 10, 5,000-URL maps.

Errors and retries

Fix 4xx input errors before retrying: 400 for invalid URLs or blocked private hosts, 401 for bad keys, 402 when a plan upgrade is required, 429 when rate limited, and 503 when quota is exhausted. Retry 5xx upstream failures conservatively and keep crawl budgets small.

Fix 4xx input errors before retrying: 400 for invalid URLs or blocked private hosts, 401 for bad keys, 402 when a plan upgrade is required, 429 when rate limited, and 503 when quota is exhausted. Retry 5xx upstream failures conservatively and keep crawl budgets small.

Health and status

GET /api/health reports database reachability and the live endpoint list without exposing credentials, which makes it safe for uptime monitors.

curl https://rounderone.app/api/health

Ready to give your product better context?

Run a real URL in the playground or review the request and response formats in the API docs.