Skip to main content
The Search endpoint of the Bright Data Marketplace Dataset API runs a real-time, Elasticsearch-powered query against a Marketplace dataset: send a filter, get records back in the response with sub-second latency.
Paste your API key into the authorization field. To get an API key, create an account and learn how to generate an API key.
Use Search when you need a small number of records back in a single, low-latency call:
  • Real-time lookups, such as enriching a lead the moment it hits the CRM.
  • Feeding live records into AI agents or LLM apps.
  • Sales prospecting by name, title, company or location.
  • Sampling a dataset before buying, with "sort": "random".
  • Any workload that needs up to 1,000 records back in one call.
If you need file uploads, bulk exports or a dataset that is not in the supported list, use Filter instead.

Run your first Search query

Send a POST request to /datasets/search/:dataset_id with a filter object. The example below searches the LinkedIn people profiles dataset for records whose name includes Egor:
Search returns the records inline. There is no polling and no snapshot IDs:

Which datasets does Search support?

Search is in alpha and currently supports three LinkedIn datasets. For any other dataset, use Filter.
Amazon datasets are next. More datasets are rolling out toward general availability in Q3 2026. Passing an unsupported dataset_id to Search returns a 404.

How do I authenticate?

Search uses Bearer token authentication. Pass your API key in the Authorization header:
Get your key from account settings.

What parameters does Search accept?

What does Search return?

How do I sort and paginate?

Set sort to control ordering, and use the returned search_after cursor to page through results.

Sample a dataset with random sort

Use "sort": "random" to pull a representative sample, for example before buying a dataset:

Page through results with search_after

Set "sort": "default" to get a search_after cursor in the response. Request the first page:
Pass the returned search_after array back to fetch the next page:

Sort by a custom field

Pass an array of field-to-direction objects to sort by a specific field:

How much does Search cost?

Search costs $2.5 CPM (per 1,000 records returned), the same rate as the Marketplace. There is no charge when the filter returns 0 records.

What errors can Search return?

FAQ

Does Search support CSV or JSON file uploads?

No. Elasticsearch cannot read external files at query time. To filter against thousands of values in a CSV or JSON file, use the Filter endpoint.

How many records can Search return in one call?

Search is best for up to 1,000 records per call. For larger pulls, use Filter, which is snapshot-based and supports bulk exports.

Why do Search and Filter return slightly different results?

The two endpoints use different engines. Elasticsearch tokenizes text differently from the snapshot engine, so free-text matches can differ. On free-text fields, prefer the includes operator over =.