Get your first response in under 2 minutes.
GET https://api.scrapellm.com/scrapers/{scraper}. Pass your key as ?api_key= or the X-API-Key header.
result (plain text) and result_markdown. Source-citing scrapers also return sources or citations.
# Responses can take up to 300 s — set --max-time accordingly curl --max-time 300 \ "https://api.scrapellm.com/scrapers/chatgpt?api_key=YOUR_KEY&prompt=Best+coffee+in+Tokyo%3F&country=JP"
Every request must include your API key via the api_key query parameter or the X-API-Key request header.
?api_key=your_key is simplest for testing. Use the X-API-Key header in production to keep credentials out of server logs. Requests without a valid key return 401 Unauthorized.
# Option A — query parameter GET /scrapers/chatgpt?api_key=your_api_key&prompt=… # Option B — request header (preferred in production) GET /scrapers/chatgpt?prompt=… X-API-Key: your_api_key
Scrape ChatGPT's real user interface and receive the full reply with inline links and optional markdown token tree.
{ "scraper": "chatgpt", "status": "done", "job_id": "job_abc123", "result": "Tokyo's best coffee…", "result_markdown": "**Tokyo's** best coffee…", "links": [{"text":"Fuglen Tokyo","url":"https://fuglen.no/…"}], "llm_model": "gpt-4o", "credits_used": 3, "elapsed_ms": 8421.5, "cached": false }
ChatGPT-specific parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| markdown_json | boolean | Optional |
When
true, includes result_markdown_json in the response — the full markdown-it token tree of ChatGPT's reply.Default:
false |
Scrape Perplexity AI and receive the answer with numbered web citations and suggested follow-up questions.
import requests r = requests.get( "https://api.scrapellm.com/scrapers/perplexity", params={ "api_key": "your_key", "prompt": "Best treatments for insomnia?", "country": "US", "web_search": True, }, timeout=300, ) print(r.json()["sources"])
{ "scraper": "perplexity", "result": "CBT-I is considered the gold standard…", "sources": [{ "title": "Insomnia - Mayo Clinic", "url": "https://mayoclinic.org/…", "snippet": "CBT-I involves…" }], "related_questions": ["What causes insomnia?"], "credits_used": 3 }
Perplexity-specific parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| web_search | boolean | Optional |
Enable live web search before answering. Disable for faster responses that rely on trained knowledge only.
Default:
true |
Scrape Grok (xAI) and receive the answer alongside web sources and X (Twitter) posts — Grok's unique dual-source response format.
⚠ Country codes JP and TW are not supported.
import requests r = requests.get( "https://api.scrapellm.com/scrapers/grok", params={ "api_key": "your_key", "prompt": "Latest news on AI?", "country": "US", "mode": "MODEL_MODE_AUTO", }, timeout=300, ) data = r.json() print(data["web_sources"], data["x_results"])
{ "scraper": "grok", "mode": "MODEL_MODE_AUTO", "result": "OpenAI announced…", "web_sources": [{"title":"OpenAI Blog","url":"…"}], "x_results": [{ "user_name": "sama", "text": "Excited about GPT-5…", "view_count": 1200000 }], "llm_model": "grok-3", "credits_used": 3 }
Grok-specific parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| mode | string | Optional |
Grok reasoning mode.
MODEL_MODE_FAST — quick (Grok mini). MODEL_MODE_EXPERT — deep reasoning (full Grok). MODEL_MODE_AUTO — Grok chooses.Default:
"MODEL_MODE_AUTO" |
Scrape Google Gemini and receive the full markdown answer with rich citation metadata including snippets, highlights, and favicons.
⚠ Country codes JP and TW are not supported.
import requests r = requests.get( "https://api.scrapellm.com/scrapers/gemini", params={ "api_key": "your_key", "prompt": "Explain quantum entanglement.", "country": "US", }, timeout=300, ) print(r.json()["citations"])
{ "scraper": "gemini", "result": "Quantum entanglement…", "citations": [{ "title": "Quantum Entanglement - Wikipedia", "url": "https://en.wikipedia.org/…", "snippet": "When particles become entangled…", "website_name": "Wikipedia", "highlights": ["non-locality"] }], "llm_model": "gemini-2.0-flash", "credits_used": 3 }
No Gemini-specific parameters beyond the common set.
Scrape Microsoft Copilot in one of five modes — from quick chat to deep study guides — and receive citations and all outbound links.
⚠ Country codes JP and TW are not supported.
import requests r = requests.get( "https://api.scrapellm.com/scrapers/copilot", params={ "api_key": "your_key", "prompt": "Best coffee shops in London?", "country": "GB", "mode": "search", }, timeout=300, ) print(r.json()["citations"])
{ "scraper": "copilot", "mode": "search", "result": "London's best coffee…", "citations": [{ "title": "Time Out London", "url": "https://timeout.com/…" }], "links": ["https://timeout.com/…"], "credits_used": 3 }
Copilot-specific parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| mode | string | Optional |
Copilot response mode.
search — web-grounded. smart — balanced. chat — quick reply. reasoning — deeper (slower). study — structured guide.Default:
"search" |
Scrape Google AI Mode and receive the AI answer alongside rich citations and the supporting web search results panel.
⚠ Country codes JP and TW are not supported.
import requests r = requests.get( "https://api.scrapellm.com/scrapers/google_ai_mode", params={ "api_key": "your_key", "prompt": "Best running shoes 2026", "country": "US", }, timeout=300, ) data = r.json() print(data["citations"], data["search_results"])
{ "scraper": "google_ai_mode", "result": "The best running shoes of 2026…", "citations": [{ "title": "Runner's World", "url": "https://runnersworld.com/…", "website_name": "Runner's World" }], "search_results": [{ "title": "Best Shoes 2026", "url": "https://…" }], "credits_used": 3 }
No Google AI Mode-specific parameters beyond the common set.
These query parameters are accepted by every scraper endpoint.
| Parameter | Type | Required | Description |
|---|---|---|---|
| api_key | string | Required* |
Your ScrapeLLM API key. Alternatively supply via the
X-API-Key request header. |
| prompt | string | Required |
The prompt to submit. 1–4,000 characters, must be non-blank.
|
| country | string | Optional |
ISO 3166-1 alpha-2 country code. Routes the request through infrastructure in that region.
JP and TW are not supported on Grok, Gemini, Copilot, or Google AI Mode.Default:
"US" |
| bypass_cache | boolean | Optional |
Set to
true to skip the response cache and always fetch a fresh result. Credits are still charged.Default:
false |
| timeout | number | Optional |
Maximum seconds to wait for the scraper to respond. Set your HTTP client timeout to match or exceed this value.
Default:
300 — Range: 10–600 |
Every 200 response includes these fields regardless of which scraper was used.
All errors return a JSON body with a detail field describing the problem.
?api_key= or the X-API-Key header.
timeout you specified. Retry with a higher timeout, or use a shorter prompt.
detail field for which parameter is invalid.
timeout parameter.
Use the interactive builder to configure parameters, generate code in Python, JavaScript, or cURL, and test live requests against the API.