Skip to main content
Piloterr
Back to library

Website Rendering API

Render JavaScript-heavy pages in a headless browser and return post-render HTML. Use when Crawler returns empty DOM; escalate to WebUnlocker if bot protection blocks the session.

Active2 credits = 1 requestGET/v2/website/rendering

Endpoint Overview

Detailed documentation, pricing, and usage examples.

Choosing the right endpointLink to Choosing the right endpoint

Piloterr exposes three complementary ways to fetch a public web page. Pick the lightest engine that works for your target site.

Endpoint Engine Credits Use when
Website Crawler HTTP request (no JavaScript) 1 The HTML you need is already in the first response: blogs, docs, server-rendered catalog pages, sitemaps.
Website Rendering Headless browser (JavaScript executed) 2 Content appears only after JS runs: React/Vue/Angular SPAs, lazy-loaded listings, pages that need wait_for or POST browser_instructions.
Website WebUnlocker Browser + unlock stack 3 Website Rendering or Website Crawler hit bot walls (Cloudflare, DataDome, Akamai, PerimeterX) and the domain is on Piloterr's approved whitelist.

Decision flow

  1. Try Crawler first if you do not need client-side rendering. It is the fastest and cheapest option.
  2. Switch to Rendering when the DOM is empty, prices load asynchronously, or you must wait for a selector / run browser steps.
  3. Escalate to WebUnlocker only for hardened retail or marketplace domains that block normal browser traffic. Whitelist approval is required before production use.

See also: Website Scraping guide.

OverviewLink to Overview

Website Rendering loads the URL in a managed headless browser, executes JavaScript, waits for the DOM to settle, and returns the fully rendered HTML. Use it when Website Crawler returns a shell page or missing prices because content is injected client-side.

Rendering handles most dynamic sites and light anti-bot friction. When Cloudflare Enterprise, DataDome, or Akamai still block the session, escalate to Website WebUnlocker (whitelist required).

Costs 2 credits per successful call.

QuickstartLink to Quickstart

GET https://api.piloterr.com/v2/website/rendering?query=https://example.com&wait_in_seconds=3

POST is supported when you need browser_instructions (scroll, click, fill forms before extraction).

ParametersLink to Parameters

Parameter Type Required Description
query string yes Public URL with http:// or https://
wait_in_seconds integer no Extra wait after load (0–30 seconds)
wait_for string no CSS/XPath selector to wait for before returning HTML
block_ads boolean no Block ad requests during render. Default false
timeout integer no Max seconds to wait for page load. Default 30
browser_instructions array no POST only: automation steps before capture

ResponseLink to Response

Field Description
Response body HTML after JavaScript execution
Situation Endpoint
Static HTML, no JS needed Website Crawler (1 credit, faster)
Bot wall on whitelisted retail domain Website WebUnlocker
PNG capture instead of HTML Website Screenshot

NotesLink to Notes

  • Domain filtering may apply. Contact Piloterr support to whitelist production targets when needed.
  • Combine wait_for with timeout on slow SPAs and infinite-scroll listings.
  • Prefer Crawler when a quick test shows complete HTML without JS.

Main use casesLink to Main use cases

  • Scrape React, Vue, or Angular marketplaces and dashboards
  • Wait for lazy-loaded product grids or search results
  • Run multi-step flows (accept cookies, open tab, scroll) via POST instructions
  • Collect HTML from pages that fail with plain HTTP crawling

Related APIs

Expand your data capabilities with these complementary tools.

Website Antibot/v2/website/antibot

Detect which anti-bot protection protects a website before you scrape. Get the vendor, confidence level, and matching clues from a single URL check.

GET1 credit = 1 requestActive
Website Crawler (POST)/v2/website/crawler

A robust solution for efficiently extracting a wide range of data from web pages.

POST1 credit = 1 requestActive
Website Crawler/v2/website/crawler

Fetch public pages with fast HTTP crawling (no JavaScript). Best first choice for static or server-rendered HTML; use Rendering or WebUnlocker when JS or anti-bot blocks you.

GET1 credit = 1 requestActive
Website Email Phone Extractor/v2/website/email_phone_extractor

Extract emails and phone numbers from websites for comprehensive contact details, including social media profiles across 12+ platforms.

GET1 credit = 1 requestActive
Website Rendering Instructions (POST)/v2/website/rendering

Execute browser automation instructions (scroll, scroll_to_bottom) during headless rendering to trigger lazy-loaded content, bypass anti-bot detection, and scrape dynamically loaded pages.

POST2 credits = 1 requestActive
Website Screenshot/v2/website/screenshot

Browser-like Screenshot API that captures webpages as PNG/JPEG/WebP or PDF for previews, QA, reporting, monitoring, and archiving no headless setup.

GET2 credits = 1 requestActive
Website Technology/v2/website/technology

Identify the technologies behind any website CMS, frameworks, analytics, CDN, hosting, and more, for competitive market analysis and technological insight.

GET1 credit = 1 requestActive
Website WebUnlocker/v2/website/webunlocker

Bypass advanced anti-bot systems (Cloudflare, DataDome, Akamai, PerimeterX) on whitelisted domains. Combines browser rendering and unlock tooling; use after Crawler and Rendering fail.

GET3 credits = 1 requestActive
Website WebUnlocker (POST)/v2/website/webunlocker

Send POST requests to whitelisted websites or APIs through WebUnlocker to bypass advanced anti-bot protection and retrieve the upstream response.

POST3 credits = 1 requestActive

Ready to get started?

Your web scraping API is one click away. Start with +500 credits, no infrastructure to set up, no proxies to manage, and no credit card required.

  • +500 credits
  • No credit card required
  • All endpoints included