This guide covers the basics of making requests to the ScrapeLLM API — both synchronous (blocking) and asynchronous (fire-and-forget).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.
Synchronous requests
Sync requests block until the scrape completes and return the full result in a single HTTP response.Request structure
All scraper endpoints follow a consistentGET structure with query parameters:
Common parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | The query to send to the AI provider (1–4,000 characters) |
country | string | No | ISO 3166-1 alpha-2 country code. Defaults to "US" |
bypass_cache | boolean | No | Skip the response cache for a fresh result. Defaults to false |
timeout | float | No | Max seconds to wait. Between 10 and 600. Defaults to 300 |
Country codes
The API supports country-specific routing. Common examples:US, GB, DE, FR, AU, CA, JP.
For region-specific behaviour, see Regional availability.
Response structure
All successful responses follow this base structure:Common response fields
| Field | Type | Description |
|---|---|---|
scraper | string | The scraper that processed the request |
status | string | Always "done" on success |
job_id | string | Unique identifier for this request |
prompt | string | The prompt submitted |
country | string | The country the request was routed through |
result | string | Plain text response from the AI provider |
result_markdown | string | Markdown-formatted response |
credits_used | integer | Credits consumed (typically 3) |
elapsed_ms | float | End-to-end request duration in milliseconds |
cached | boolean | true if served from cache |
markdown_url | string | Hosted .md URL for this response (expires after 24 h) |
Each scraper returns additional provider-specific fields. See the individual
endpoint documentation for full response schemas.
Request examples
Asynchronous requests
Async mode lets you submit a scrape and receive ajob_id immediately — without holding an open HTTP connection. The scrape runs in the background. Ideal for batch jobs, background workers, or any prompt that may take a long time.
Credits are deducted at submit time and restored automatically if every retry attempt fails.
Step 1: Submit the job
HTTP 202 with the job ID:
Step 2: Poll until done
GET /jobs/{job_id} — no authentication required.
Job status response
| Field | Description |
|---|---|
status | pending · done · failed |
result | Full scrape response. Present when status is "done" |
error | Error message. Present when status is "failed" |
failed.
Common questions
Why are some requests slow?
Request latency depends primarily on the upstream AI provider’s response time (5–45 seconds depending on provider and query complexity). Settimeout up to 600 seconds for complex prompts.
Can I request from a specific country?
Yes — pass any ISO 3166-1 alpha-2 code viacountry. Note that some providers don’t support all countries. See Regional availability.