Go to App

Batch Export

Create export jobs for many URLs in a single API call — the same "paste a list of URLs" flow exposed in the web dashboard. Each URL becomes an independent job with its own GUID, but they share a batch_id so you can poll a single endpoint for an aggregated status rollup.

When to use this

  • Backfilling a list of public posts / videos / reviews you already have collected
  • Running the same export options across many sources in one shot
  • Avoiding the round-trip and per-job rate-limit windows of submitting URLs one at a time

For downloading the results of multiple completed jobs as a single ZIP, see Bulk Download — that's a different feature.

Workflow

  1. Create the batch with an array of URLs and shared options
  2. Poll status at the batch endpoint (or any individual /jobs/{guid})
  3. Each job's CSV / Excel / JSON download URL is available once that specific job hits done
bash
POST /api/v1/batch-export → { batch_id, guids: [...], errors: [...] }
GET /api/v1/batch-export/{id} → { batch_id, status, total, done, errored, queueing, in_progress }

Endpoints

MethodPathDescription
POST/api/v1/batch-exportCreate a batch from an array of URLs
GET/api/v1/batch-export/{batchId}Aggregated status of all jobs in the batch

Plan limits

PlanMax URLs per batch
Free / Personalnot available
Premium25
Business100

A request that exceeds the per-plan ceiling returns HTTP 400 with an explanatory message — submit smaller batches or upgrade the plan.

💡
Each URL counts as one export job

Every URL in the batch consumes one job slot against your daily / monthly limits, identical to submitting jobs individually. Batching saves HTTP overhead and rate-limit window pressure — it does not give you extra capacity.

⚠️
Premium plan or higher required

The batch endpoint returns HTTP 400 "Bulk export requires a Premium or Business plan." for Free and Personal plans. Single-job creation via /api/v3/job remains available on every paid plan.