Skip to main content
Web Data API gives you every way to collect web data from one place - scrape a page, search the web, crawl a whole site, or map its URLs. Every endpoint runs on the same infrastructure, so proxy rotation, JavaScript rendering, and anti-bot protection are handled for you, whichever one you use. One API key works with every endpoint, and all of them share the same base URL: https://data.decodo.com/v1

Endpoints

EndpointWhat it doesReturnsMode
/scrapeGets the content of a single page, or parsed data from a supported website such as Google or Amazon.HTML, Markdown, JSON, screenshots, and moreSynchronous, asynchronous, or batch
/searchGets search engine results for a query in under a second.Parsed organic results and top storiesSynchronous
/crawlFollows links across a website and scrapes every page it finds.Markdown or HTML for each pageAsynchronous
/mapLists every URL on a website, without scraping page content.A list of URLsSynchronous

Which endpoint should I use?

You want to…Use
Get the content of a page you already have the URL for/scrape
Get structured data from Google, Amazon, Walmart, TikTok, or another supported website/scrape with a target template
Scrape many URLs at once, or collect results later/scrape with asynchronous or batch requests
Get search results for a query, fast/search
Get the content of every page on a website, or a section of it/crawl
See what pages a website has before you scrape it/map
/map and /crawl work well together: use /map to see a site’s structure and decide which paths you need, then run /crawl with select_paths to collect only those pages.

Authentication

Every endpoint uses the same API key. Copy it from the dashboard and send it in the Authorization header:

Synchronous and asynchronous requests

  • Synchronous endpoints - /scrape, /search and /map - return results in the same response.
  • Asynchronous endpoints return an ID straight away and do the work in the background. /crawl is always asynchronous. /scrape can also run asynchronously through /task, which suits large volumes or slow pages. Check the status, fetch results when they’re ready, or provide a callback URL to be notified.

Quick start

  1. Sign up - activate the free plan or choose a paid plan in the dashboard.
  2. Copy your API key from the dashboard.
  3. Pick an endpoint from the table above.
  4. Send your first request - for example, scrape a single page:
You can also build and send requests directly in the dashboard, then copy ready-to-use cURL, Python, or Node.js code for integration.

Pricing

All endpoints are priced per 1K requests, and the rate gets lower on larger plans. Depending on the endpoint, the rate also depends on the proxy pool and whether JavaScript is rendered:
EndpointProxy poolJavaScript rendering
/scrapeStandard or PremiumOptional
/searchSingle rate-
/crawlPremiumOptional - only for pages that fail without it
/mapPremiumOptional
The Perplexity, ChatGPT and Gemini templates on /scrape have a single rate of $1 per 1K requests on every plan. You only pay for successful requests. See all rates on the Billing page. You can monitor usage for every endpoint in the dashboard’s Statistics section, including success rates and traffic breakdowns by domain and time.

Usage policy

Web Data API is intended for collecting publicly accessible web data.We don’t support collecting:
  • Post-login or authenticated content
  • Private user information
  • Restricted or non-public data
Users are responsible for ensuring their use of the service complies with applicable website terms and internal policies.