ScrapeDrive

Introduction

Send your first ScrapeDrive request and choose the right options

ScrapeDrive

ScrapeDrive fetches one URL and returns the page content you asked for. A request uses a fast HTML fetch by default. Turn on JavaScript rendering only when the page needs a browser to reveal its content.

Your first scrape

The synchronous endpoint returns the result in the same request:

curl --get "https://sync.scrapedrive.com/api/v1/scrape" \
  --data-urlencode "api_key=YOUR_KEY" \
  --data-urlencode "url=https://example.com"

You can also make the same request directly from a browser:

https://sync.scrapedrive.com/api/v1/scrape?api_key=YOUR_KEY&url=https://example.com

For simple target URLs, you can leave https:// readable like this. If the target itself contains query parameters or a fragment, let your HTTP client encode the url value so characters such as & and # are not interpreted as part of the ScrapeDrive request.

Or send a JSON body:

curl "https://sync.scrapedrive.com/api/v1/scrape" \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "YOUR_KEY",
    "url": "https://example.com"
  }'

On success, the synchronous response is the scraped body itself, with the target's safe response headers replayed. There is no ScrapeDrive JSON envelope around the page. Failed scrapes return JSON by default; Sync requests can opt into a target response with transparent_mode=true when one exists.

Keep your API key secret. Do not expose it in browser-side application code, public repositories, logs, or screenshots.

Authentication

Send your key as api_key in either the query string or request body. New keys are URL-safe and do not contain a separator. Legacy keys with an id| prefix continue to work.

Get your key from the ScrapeDrive dashboard.

Choose the output

result_type controls the returned content:

ValueResult
htmlRaw page source. This is the default.
page_textVisible text without HTML markup.
page_markdownPage content converted to clean Markdown.
curl --get "https://sync.scrapedrive.com/api/v1/scrape" \
  --data-urlencode "api_key=YOUR_KEY" \
  --data-urlencode "url=https://example.com" \
  --data-urlencode "result_type=page_markdown"

Load JavaScript when the page needs it

JavaScript rendering is off by default. For SPAs, client-rendered product lists, and other dynamic pages, set render_js=true:

curl --get "https://sync.scrapedrive.com/api/v1/scrape" \
  --data-urlencode "api_key=YOUR_KEY" \
  --data-urlencode "url=https://example.com/app" \
  --data-urlencode "render_js=true"

Controls such as navigation waits, resource blocking, and ad blocking become relevant when JavaScript rendering is enabled. ScrapeDrive chooses the browser engine automatically. Screenshots require a browser-compatible result.

Choose a proxy network

Datacenter proxies are used by default. Choose Residential when the page varies by country or restricts datacenter traffic:

Proxy networkBest forBase job cost
datacenterFast, cost-efficient access to most public pages.5 credits
residentialCountry targeting and pages sensitive to datacenter traffic.10 credits

JavaScript rendering adds 5 credits. ScrapeDrive chooses the browser engine automatically, so there is no browser parameter to configure. Every screenshot option adds another 5 credits.

See Credits and limits for the complete calculation.

Let Auto mode adapt after a failure

Set auto=true with a required max_credits ceiling when you want ScrapeDrive to start with the least expensive compatible settings and progress only when an attempt fails:

curl --get "https://sync.scrapedrive.com/api/v1/scrape" \
  --data-urlencode "api_key=YOUR_KEY" \
  --data-urlencode "url=https://example.com" \
  --data-urlencode "auto=true" \
  --data-urlencode "max_credits=20"

Auto manages HTTP-versus-browser selection, proxy routing, location, and attempt identity. Do not combine it with render_js, proxy_pool, proxy_country, custom_proxy, or session_number. Screenshots and browser waits remain fixed requirements. The maximum reachable configuration price is reserved before execution, but you are charged only once for the configuration that succeeds and never above max_credits.

Take a screenshot

Choose the viewport, full page, or one element:

curl --get "https://sync.scrapedrive.com/api/v1/scrape" \
  --data-urlencode "api_key=YOUR_KEY" \
  --data-urlencode "url=https://example.com" \
  --data-urlencode "screenshot=true"

The screenshot URL comes back in the x-sdrive-screenshot-url response header (for an Async job, inside response.headers of the polled result). ScrapeDrive automatically enables JavaScript rendering and loads visual resources so the image can be captured.

Next steps

On this page