URL to HTML Content API
Get the fully rendered HTML of any URL, including content loaded by JavaScript, for one page or hundreds at once.
Paste up to 50 URLs above and get the complete HTML of each page after it has been rendered in a real browser. Unlike a plain HTTP request, the HTML includes everything React, Vue, or Angular added to the page, so you can parse it with your own tools. You get 5 free requests without an account; see plans for more.
Need structured data instead of raw HTML? Use the web scraper with CSS selectors, or convert pages to LLM-ready Markdown. Every option is documented in the Content API reference.
Features
- Rendered HTMLThe DOM after JavaScript runs, not the raw response.
- Wait rulesWait for DOM load, network idle, or a CSS selector.
- Custom headers & cookiesSend auth cookies and headers for logged-in pages.
- Custom user agentFetch the mobile or desktop version of a page.
- Bulk fetchPaste a list of URLs and download every page.
- Status & titleResponse status and page title with every result.
Use cases
- Archive the HTML of landing pages and competitors
- Feed rendered pages into your own parser or scraper
- Debug what search engines see on JavaScript sites
- Collect HTML datasets for testing and machine learning
- Compare server-rendered and client-rendered output
API examples
View full API referencecurl -X POST https://api.agenty.ai/v1/content \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com",
"goToOptions": { "waitUntil": "networkidle2" }
}'const urls = ['https://example.com', 'https://agenty.com'];
for (const url of urls) {
const res = await fetch('https://api.agenty.ai/v1/content', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({ url }),
});
const { result: html, meta } = await res.json();
console.log(url, meta.status, html.length);
}import requests
res = requests.post(
"https://api.agenty.ai/v1/content",
headers={"Authorization": "Bearer YOUR_API_KEY"},
json={"url": "https://example.com"},
)
html = res.json()["result"]
print(html[:500])Frequently asked questions
What does the URL to HTML API return?
It returns the full HTML of the page in result after the page has loaded in a headless browser, along with the response status and title in meta. See the API reference for every option.
How is this different from viewing the page source?
View source shows the HTML the server sent before any JavaScript ran. This API returns the rendered DOM, so content added by JavaScript frameworks is included. Choose Network idle in the tool, or pass goToOptions.waitUntil: "networkidle2", for pages that load data after the first render.
How do I get the HTML of multiple URLs at once?
Paste your URLs into the tool at the top of this page, one per line, and click Get HTML. Each page is fetched in turn and you can download every result as an .html file. To find every URL on a site first, run the sitemap crawler.
Can I fetch pages behind a login?
Yes. Pass session cookies or setExtraHTTPHeaders with your request, or use authenticate for HTTP basic auth.
Is there a free tier?
You can fetch 5 pages without an account, and all accounts include free credits. Visit our pricing page for details.