GET
https://spideriq.ai
/
api
/
v1
/
media
/
videos
/
bulk-import
/
{job_id}
Bulk Import Status
curl --request GET \
  --url https://spideriq.ai/api/v1/media/videos/bulk-import/{job_id} \
  --header 'Authorization: Bearer <token>'
{
  "job_id": "bulk_1234567890",
  "status": "processing",
  "total": 10,
  "completed": 3,
  "failed": 0,
  "progress_percent": 30.0,
  "results": null
}
Get the current status of a bulk video import job, including progress percentage and per-video results when complete.

Path Parameters

job_id
string
required
Job ID returned from the bulk import request

Response

job_id
string
The job ID
status
string
Job status: queued, processing, completed, or failed
total
integer
Total number of videos in the job
completed
integer
Number of videos successfully imported
failed
integer
Number of videos that failed to import
progress_percent
number
Progress percentage (0-100)
results
array
Per-video results (only included when job is complete). Each result contains:
  • url: Original video URL
  • success: Whether import succeeded
  • video_id: PeerTube video ID (if successful)
  • error: Error message (if failed)

Example

curl "https://spideriq.ai/api/v1/media/videos/bulk-import/bulk_1234567890" \
  -H "Authorization: Bearer cli_abc123:sk_xxx:secret_xxx"
{
  "job_id": "bulk_1234567890",
  "status": "processing",
  "total": 10,
  "completed": 3,
  "failed": 0,
  "progress_percent": 30.0,
  "results": null
}
Polling Recommendation: Check status every 30-60 seconds. More frequent polling provides no benefit as videos take time to download and process.
Webhook Support: For production workflows, consider implementing a webhook endpoint to receive notifications when the job completes, rather than polling.