Skip to main content
POST
Submit an async ChatGPT scrape job
Replace chatgpt in the endpoint path with any scraper: perplexity, grok, copilot, gemini, google_ai_mode, or amazon_rufus. All accept the same parameters.

Overview

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. See individual scraper pages for provider-specific parameters (e.g. mode for Grok and Copilot, web_search for Perplexity).

Example request

Response

HTTP 202 Accepted
string
Unique UUID for this job. Pass this to GET /jobs/{job_id} to retrieve the result.
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

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

Authorizations

X-API-Key
string
header
required

Your ScrapeLLM API key passed in the request header.

Query Parameters

prompt
string
required

The prompt to send to ChatGPT. Maximum 4,000 characters.

Required string length: 1 - 4000
country
string
default:US

ISO 3166-1 alpha-2 country code. Routes the request through infrastructure in that region so you receive the localised ChatGPT response. Defaults to US.

Required string length: 2
markdown_json
boolean
default:false

Include the full markdown-it token tree in the result.

timeout
number<float>
default:300

Maximum seconds to wait per scrape attempt. Must be between 10 and 600.

Required range: 10 <= x <= 600

Response

Job accepted. Poll GET /jobs/{job_id} for status and result.

job_id
string<uuid>
required

Unique identifier for the submitted job. Pass this to GET /jobs/{job_id}.

Example:

"3f7a2b1c-9e4d-4f8a-b2c1-7d6e5f4a3b2c"

status
enum<string>
required

Always "pending" on a successful submission.

Available options:
pending
Example:

"pending"