How it works
You send a prompt to the Bright Data ChatGPT Scraper API. Bright Data handles the scraping infrastructure and returns clean, structured JSON with the answer, citations, and sources.dataset_id for ChatGPT Search and return results in JSON, NDJSON, or CSV.
What the response looks like
A single record returned by the Bright Data ChatGPT Scraper API on September 6, 2026, trimmed to the fields shown. Run the request yourself in the quickstart.Which capabilities are supported
Search with Citations
Get structured answers with source citations, positions, and linked references from ChatGPT web search.
Follow-up Prompts
Send an additional prompt to get follow-up answers within the same search context.
Shopping and Map Results
Detect when ChatGPT returns shopping product cards or map-based results for location queries.
Web Search Control
Use
web_search to allow or disable live web search and web_search_triggered to know whether a search actually ran.Request methods
The Bright Data Scraper API supports two request methods. Choose based on your volume and latency needs.
Learn more in Understanding sync vs. async requests.
Both endpoints accept the inputs as a bare JSON array, which is what every example on this page uses, or as an object with an
input array. Use the object form when you also send custom_output_fields or limit_per_input on either endpoint, or a deliver block on /trigger. See Request body.
Capabilities and limits
Which other AI answer engines have a scraper
The scraper library also covers five other engines. Each takes a prompt and returns the answer with its citations; each link opens the scraper in the Control Panel, and each country list says where the engine can be targeted.
ChatGPT’s own country list is on GitHub. Web search control differs by engine: ChatGPT and Grok take the
web_search input, Gemini decides on its own. See Query fan-out and web search control.
Common questions
Is the data scraped in real time?
Yes. Each request triggers a live ChatGPT search session. There is no cached or stale data. Processing time varies with prompt complexity, whether web search is enabled and scraper workload. The Bright Data ChatGPT Scraper API does not publish a fixed response time. A synchronous request waits up to 1 minute, then returns HTTP202 with a snapshot_id and continues asynchronously.
Why do response times change over time?
OpenAI changes how its pages are served, and the Bright Data ChatGPT Scraper API collectors are updated to match. A collector update can change how long a scrape takes even when the success rate stays the same. For production workloads, build against the async workflow or webhook delivery so a longer run does not break the integration.Can I maintain conversation context across requests?
No. Each request starts a fresh ChatGPT session. There is no memory or context carried over between requests. To ask a follow-up question within a single request, use theadditional_prompt field.
How is this different from scraping using proxies or Web Unlocker API?
When scraping using proxies or Web Unlocker API, you still need to write and maintain your own parsing logic and update it whenever the target site changes its page structure. The Bright Data Scraper API handles the entire stack: proxy rotation, anti-bot bypassing and parsing. You send a URL or keyword and get clean, structured JSON back, with no scraping infrastructure or parser maintenance on your end.Next steps
Quickstart
Search ChatGPT with your first prompt in 5 minutes.
Endpoints
One request per endpoint, each with a captured response.
API reference
Endpoint specs, parameters, and response schemas.