Pangram verdict · v3.3
We believe that this document is primarily human-written, with some AI-assisted content detected
AI likelihood · overall
MixedArticle text · 954 words · 4 segments analyzed
Any page. Any data. Clean JSON.Web scraping that returns what you actually want.
REQUEST curl -X POST https://api.scrapewithruno.com/v1/extract \ -H "X-API-Key: sk_live_Kx9mT3vQ2wRs" \ -d '{ "url": "https://en.wikipedia.org/wiki/Rachel_McAdams", "schema": [ { "field": "name", "type": "string", "example": "John Doe" }, { "field": "knownFor", "type": "array<string>", "example": ["Oppenheimer"] }, { "field": "netWorth", "type": "float" }, { "field": "birthDate", "type": "date" }, { "field": "birthPlace", "type": "string", "example": "London, UK" } ] }' RESPONSE{ "url": "https://en.wikipedia.org/wiki/Rachel_McAdams", "status": "success", "render_mode": "headless", "data": { "name": "Rachel McAdams", "knownFor": ["Mean Girls", "The Notebook", "Spotlight"], "netWorth": 8000000.0, "birthDate": "1978-11-23", "birthPlace": "London, Ontario, Canada" } }
FEATURESScraping made easy.Built for developers tired of babysitting broken scrapers and parsing raw HTML.Typed JSON, AlwaysStrict coercion on every field: strings, integers, floats, booleans, dates, and arrays.
Control each field to ensure no more ambiguous values slip through.Plain JSON SchemaNo CSS selectors, XPath, or complex DSLs. Simply define your field names, types, and examples to create a schema any developer can write in 30 seconds.Static & Dynamic KeysBind a schema to a static key once and future requests require only a URL. Alternatively, attach a custom schema to every request using your dynamic API key, enabling higher flexibility.Three Methods of ScrapingScrape a single URL with /extract, fan-out to multiple URLs with /batch, or crawl recursively with /crawl using the same schema on the same API key.Semantic ExtractionRuno extracts by meaning, not DOM position. Site redesigns and HTML changes won't ever break your pipeline.Explicit NullsUnresolvable fields return null. Runo never quietly drops, never omits and never foolheartedly guesses a wrong response. You always know exactly what was and was not found.Field HintsIn the case of a specific request, add a hint string to any field to have it injected directly into Runo's extraction instructions, ensuring you get exactly what you need.Auto JS RenderingTransparent fetch-first strategy. Auto-escalates to Playwright headless when JS detection or 403 triggers. "render_mode" in the response tells you exactly which path ran.Bot BypassCAPTCHA solving and residential proxy access included with Pro & Scale plan. Runo automatically detects and escalates the right bot detection and bypassing systems to ensure you get the data you called for, no matter the website or their defense.HOW DOES COST COUNTING WORK?Request CountingOne /extract call = 1 request. One /batch call = 1 request per URL in the batch. One /crawl call reserves max_pages requests upfront and refunds the unused portion when done. So a crawl that visits 40 of a reserved 100 pages refunds 60.Overage PolicyOnly available on Pro and Scale plans, overage is a prepaid deposit with a minimum $5. The requests per dollar improves with deposit size and interpolates linearly between them.
HOW IT WORKSDefine your schemaList the fields you want. Name, type, example and add a hint if necessary.Call the APIPOST to /extract, /batch, or /crawl with your key and schema and Runo handles the rest.
Runo fetches and rendersPlain HTTP first. Auto-escalates to headless if JS-gating or empty response detected.Get typed JSON backRuno extracts and coerces every field. Clean validated JSON. Unresolvable fields return null.
VS. COMPETITORSWhy choose Runo?With Runo, we attempted to find every API scraper pain-point and turn them around into an advantage. Here's how we compare to our competitors. Runo vs. other web scraping APIs - feature comparison Other APIs Runo Requests return raw HTML or Markdown, meaning you still have to parse it. Returns ready-to-use typed JSON. Zero post-processing needed on your end. Schema requires CSS selectors, XPath, or proprietary DSL. Runo schemas are plain JSON: field name, type, and example. Our competitors are brittle. Applications break when site HTML structure changes. Runo extracts by meaning. Site redesigns and HTML changes won't ever break your pipeline. Silent failures occur relentlessly. Empty or wrong data returned with 200 OK. Unresolvable fields return null explicitly. JS-heavy sites silently return empty content. Runo solves that through auto-escalation to headless rendering, transparent to you, the caller. Crawling requires a separate product or extra setup. Runo is one API, three modes: /extract, /batch, /crawl. Inconsistent returns per call. E.g. price comes back as a string, number, or null Runo has enforced type coercion: float, integer, string, boolean, date, array.
PRICINGChoose what works for you.Our free tier is available to everyone with absolutely no charges. However, if the free tier doesn't fit your needs, you can choose to upgrade through one of our paid plans below.Runo Free$0/month 500 requests/month. 1 request/min rate limit. Enhanced bot detection + bypassing. Overage opt-in. Runo Starter$17/month 15,000 requests/month.
30 requests/min rate limit. Enhanced bot detection + bypassing. Overage opt-in. Runo Pro$59/month 50,000 requests/month. 120 requests/min rate limit. Enhanced bot detection + bypassing. Overage opt-in. Runo Scale$449/month 500,000 requests/month. 500 requests/min rate limit. Enhanced bot detection + bypassing. Overage opt-in. OVERAGE PRICING Overage pricing by tier and deposit size Tier Deposit Total Requests Cost Per 1k/req Pro $5 3,300 $1.515 Pro $500 440,000 $1.136 Scale $5 4,500 $1.11 Scale $500 525,000 $0.952 Cost per 1K/requests decreases linearly between $5 and $500.
FAQsIf you can't find the answer to your question below, email us at [email protected]Yes. Model selection is automatic and included in the request cost.For most Cloudflare protections, yes. Runo runs a multi-tier bypass process: TLS impersonation, fingerprint spoofing, and session cookie persistence. It identifies Cloudflare, Datadome, PerimeterX, Akamai, and Incapsula on the first fetch and jumps straight to the appropriate countermeasure instead of wasting a failed request. Sites using Cloudflare's CAPTCHA challenges, or bot score thresholds that require a residential IP, are handled via CAPTCHA solving and residential proxies. Both are included on Pro and Scale plans.Runo caps crawl jobs at 25% of your remaining monthly quota per job, so a single runaway crawl can't exhaust your account. Unused reserved pages are refunded immediately when the crawl finishes or is cancelled.