Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.scrapellm.com/llms.txt

Use this file to discover all available pages before exploring further.

Submit any scrape as a background job. Returns a job_id immediately (HTTP 202) — no open connection required. Poll GET /jobs/{job_id} to retrieve the result when done.

Endpoint

POST https://api.scrapellm.com/scrapers/{scraper}/jobs
Replace {scraper} with the target AI provider: chatgpt, perplexity, grok, copilot, gemini, google_ai_mode, or amazon_rufus.

Parameters

All query parameters accepted by the sync endpoint are supported. Pass them as query parameters on the POST request.
prompt
string
required
The prompt or query to send. Maximum 4,000 characters.
country
string
default:"US"
ISO 3166-1 alpha-2 country code. Defaults to "US".
timeout
float
default:"300"
Maximum seconds to wait per scrape attempt. Between 10 and 600.
See individual scraper endpoint pages for provider-specific parameters (e.g. mode for Grok and Copilot, web_search for Perplexity).

Example request

curl -X POST "https://api.scrapellm.com/scrapers/chatgpt/jobs" \
  -H "X-API-Key: YOUR_API_KEY" \
  -G \
  --data-urlencode "prompt=What brands do marketers recommend for email automation?" \
  --data-urlencode "country=US"

Response

HTTP 202 Accepted
{
  "job_id": "3f7a2b1c-9e4d-4f8a-b2c1-7d6e5f4a3b2c",
  "status": "pending"
}
job_id
string
Unique UUID for this job. Pass this to GET /jobs/{job_id} to retrieve the result.
status
string
Always "pending" on a successful submission.

Credit behaviour

  • Credits are deducted at submit time
  • If the scrape fails after all retry attempts, credits are automatically restored
  • Failed jobs are retried up to 3 times before being marked failed

Error codes

StatusMeaning
401Missing or invalid API key
429Credit limit reached

What’s next

After submitting a job, poll GET /jobs/{job_id} to check status and retrieve the result.

Get job status

Poll for job completion and retrieve the full scrape result