{"slug":"2s-io-api-url-render-929bd2","title":"Render a URL in a real headless browser (JavaScript executed) and return its art","host":"2s.io","method":"GET","resource":"https://2s.io/api/url/render","category":"code","description":"Render a URL in a real headless browser (JavaScript executed) and return its article content with the clutter stripped — same cleaning + output formats as /api/url/clean, but for client-rendered / SPA pages whose content only appears after JS runs (where a raw HTTP fetch returns an empty shell). `fo","price_listed":0.015,"price_asked":0.015,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":244,"reported_calls_30d":1,"reported_payers_30d":1,"networks":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"method":"GET","queryParams":{"format":"markdown","url":"https://react.dev"},"type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"properties":{"method":{"const":"GET"},"queryParams":{"properties":{"format":{"default":"markdown","enum":["markdown","text","both","html","pdf"],"type":"string"},"timeoutMs":{"default":12000,"maximum":15000,"minimum":1000,"type":"integer"},"url":{"type":"string"},"waitUntil":{"default":"networkidle2","enum":["load","domcontentloaded","networkidle0","networkidle2"],"type":"string"}},"required":["url"]},"type":{"const":"http"}},"required":["type","method","queryParams"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-09-24","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.015,"price_match":true,"latency_ms":244,"error":null}],"description_full":"Render a URL in a real headless browser (JavaScript executed) and return its article content with the clutter stripped — same cleaning + output formats as /api/url/clean, but for client-rendered / SPA pages whose content only appears after JS runs (where a raw HTTP fetch returns an empty shell). `format`: markdown (default), text, both (JSON envelope), html (self-contained reader page, raw text/html), or pdf (typeset reading doc, raw application/pdf). Optional `waitUntil` (load|domcontentloaded|networkidle0|networkidle2, default networkidle2) and `timeoutMs` (1000-15000, default 12000) control how long to let JS settle. Use /api/url/clean instead for server-rendered pages — it is faster and cheaper; only reach for render when JS rendering is required.","last_updated":"2026-09-07T22:34:17.01Z","schemes":["exact"]}