Scrape up to 50 URLs in a single request with full per-item results, credit tracking, and retry support
Batch scraping lets you queue up to 50 URLs in one API call. Each URL is processed independently and in parallel. You get back per-item results with status, content, credits used, and timestamps — all under a single batchId.Use batch scraping when:
You have a list of product, article, or listing URLs to extract
You want one API call per dataset rather than managing dozens of individual jobs
You need to retry only the URLs that failed without re-running the whole set
Send a POST /api/batch/scrape with your URL list and extraction options. You get a batchId back immediately — the job is queued.
2
Process
Spidra processes each URL independently using a real browser. CAPTCHA solving, proxy routing, and AI extraction all run per-item.
3
Poll
Call GET /api/batch/scrape/{batchId} every few seconds. The response includes live progress counters (completedCount, failedCount) and per-item results.
4
Handle failures
If any items fail, call POST /api/batch/scrape/{batchId}/retry. Only the failed items are re-queued — successful ones are untouched.
Batch jobs are asynchronous. Poll GET /api/batch/scrape/{batchId} every 2–5 seconds until status is a terminal value.
status
Meaning
pending
Queued, no items have started yet
running
At least one item is being processed
completed
All items finished (some may have failed — check failedCount)
failed
The entire batch failed unexpectedly
cancelled
You cancelled it via DELETE /api/batch/scrape/{batchId}
completed does not mean every URL succeeded. A batch is completed when all items have reached a terminal state (completed or failed). Always check failedCount and inspect individual item statuses.
When a schema is provided, output is automatically set to "json". The schema is validated before the batch is queued — a 422 is returned if it is malformed.
Structured Output Guide
Full guide on nested objects, arrays, nullable fields, and schema limits
Pass session cookies to scrape pages behind a login. Cookies are never stored — they are passed ephemerally to the worker and discarded after processing.