Prerequisites
- A Bright Data account with an active API key
- Completed the Quickstart
Request structure
Every synchronous request follows the same pattern:url field is always https://chatgpt.com/. The prompt field contains your search query.
Synchronous requests support up to 20 inputs and have a 1-minute timeout. If the request takes longer, the API automatically returns a
snapshot_id instead. See async requests.ChatGPT Search
Dataset ID:gd_m7aof0k82r803d5bjm
Basic search
Send a prompt and get a structured answer with citations:200 response. This takes 15-45 seconds.
Example response
Example response
Search with country targeting
Use thecountry field to get location-specific results:
Example response
Example response
Search with follow-up prompt
Use theadditional_prompt field to ask a follow-up question in the same session:
Example response
Example response
Quick reference: dataset ID
| Endpoint | Dataset ID | Input |
|---|---|---|
| ChatGPT Search | gd_m7aof0k82r803d5bjm | url + prompt |
Input fields
| Field | Required | Description |
|---|---|---|
url | Yes | Always https://chatgpt.com/ |
prompt | Yes | Search prompt (max 4,096 characters) |
country | No | Country code for location-targeted results |
index | No | Unique tracking ID (number) |
require_sources | No | Return error if no sources found (boolean) |
additional_prompt | No | Follow-up prompt within the same session |
web_search | No | Enable or disable web search during the run (default: true). This is a permission, not a guarantee: read web_search_triggered in the response to know whether a search actually ran. See Query fan-out and web search control |
Output fields (web search signals)
| Field | Type | Always returned | Meaning |
|---|---|---|---|
web_search | boolean | No | Echoes the input value (defaults to true if omitted). Does not indicate whether a search actually happened. |
web_search_triggered | boolean | Yes | true only if the model actually triggered a web search during the run; false otherwise. |
Do not use prompt-derived output fields like
is_map, citations, or shopping_visible as proof that a web search ran. Those fields depend on the prompt and the model’s response format. Use web_search_triggered as the canonical signal. Full rules in Query fan-out and web search control.Output formats
Control the response format with theformat query parameter:
| Value | Description |
|---|---|
json | JSON array (default) |
ndjson | Newline-delimited JSON, one record per line |
csv | Comma-separated values |
Next steps
Async batch requests
Search ChatGPT with hundreds of prompts in a single batch job.
API reference
Full parameter and response field reference.