Skip to main content
Send one request to the Bright Data Scraper API and get structured JSON back. This guide scrapes an Amazon product page. The same call works for every one of Bright Data’s thousands of pre-built scrapers: change the dataset_id over HTTP, or call a different method in the SDK.

Prerequisites

  • A Bright Data account. New accounts get 5,000 free credits every month, no credit card required
  • One of:
    • cURL
    • Python 3.9+ with the Bright Data Python SDK: pip install brightdata-sdk
    • Node.js 20+ with the Bright Data JavaScript SDK: npm install @brightdata/sdk

Scrape your first page

1

Get your API key

New accounts receive an API key in the Bright Data welcome email. Use that key for this guide.If you no longer have that email, open Account settings and click Add API key to create a new one. Only admins can create API keys.
A Bright Data API key is shown once, at the moment it is created. Existing keys cannot be viewed in plain text afterwards, so copy the key and store it securely as soon as it appears. If you lost a key, create a new one rather than looking for the old one.
The same key works across every Bright Data product, so this is the only credential step in this guide.
2

Send a request

This request scrapes an Amazon product page. Replace YOUR_API_KEY with your API key and run it as-is.You should see the product JSON printed. This takes 10 to 30 seconds.
3

Read the response

The Bright Data Scraper API returns a JSON array with structured product data. The Python SDK exposes it as result.data; the JavaScript SDK returns the array directly:
The full record carries 64 fields, including variants, delivery, buybox prices and customer review topics. See the full response schema.
You now have a working Bright Data integration.

How do I scrape a different site?

Over HTTP, every scraper has its own dataset_id: change that value and the input URL, and keep the rest of the request identical. In the SDKs, call the matching method instead. The JavaScript SDK uses the same tree with collect-prefixed names, for example scrape.amazon.collectProducts. Full method lists: Python SDK, JavaScript SDK. Bright Data maintains thousands of pre-built scrapers covering popular sites. Browse the full library in the Scrapers overview, and see async requests for the complete dataset ID table.

What if no pre-built scraper covers my site?

Build one with Bright Data Scraper Studio. Pass a target URL and one sentence describing the data you want, and the AI Agent generates the output schema and writes the scraper code. Generation typically takes 5 to 15 minutes, and up to 25 minutes for complex targets. The Scraper Studio quickstart walks through the whole path, from bdata scraper create to triggering the published scraper from your own code. Prefer no code? Build the same scraper from your dashboard with the AI Agent.

How do I scale past one URL?

The request above is synchronous: one call, one response, up to 20 URLs. For production volumes, switch to the asynchronous /trigger endpoint, which has no URL ceiling other than 1 GB of input per job and returns a snapshot_id instead of records. Rather than polling for that snapshot_id, have Bright Data push results to a webhook, Amazon S3, Google Cloud Storage, Azure or Snowflake when the job completes. See async requests for the full trigger, poll and download workflow, and delivery options for the destinations.

Frequently asked questions

Use the Scraper API when a pre-built scraper already covers your target site, which is the case for most popular sites. Use Scraper Studio when none does, or when you want to own the scraper logic. Both return the same structured output and run on the same infrastructure. For the full comparison, see Choose a product.
A 401 means the API key was rejected: the response body names which case. A 403 is different, the key is valid but lacks permission for that product or zone. See the authentication guide.
Synchronous requests have a 1-minute timeout. If a request exceeds it, the Bright Data Scraper API automatically switches to async and returns a snapshot_id instead of records. Use that ID with the async workflow.
Yes. Set the format query parameter to csv or ndjson. The default is json.
Yes, and new accounts get 5,000 free credits every month with no credit card, drawn from a single shared pool across eligible products. See the free tier.

Next steps

For your coding agent

Set up Claude Code, Cursor or Codex with skills, the MCP server and llms.txt.

Choose a product

Scraping search engines, unlocking pages or running a browser? Match your goal to the right product.

Scale to production

Batch unlimited URLs, monitor snapshots and deliver results to your warehouse.