Extract archive API¶
Unpack an archive that sits at a public URL and get a download link for every file inside.
| Endpoint | POST https://revidapi.com/v1/extract |
| Price | 25 credits per archive |
| Formats | zip, tar, tar.gz, tgz, tar.bz2, tbz2 |
| Result | a task — poll GET /v1/caption/task/{task_id} |
This endpoint unpacks archives. It does not extract audio from video — for that use Video Convert to mp3.
1. Start the job¶
| Parameter | Type | Required | Description |
|---|---|---|---|
file_url |
string | ✅ | Public URL of the archive. The gateway downloads it and uploads it for you |
curl -X POST "https://revidapi.com/v1/extract" \
-H "x-api-key: $REVID_KEY" -H "Content-Type: application/json" \
-d '{"file_url": "https://example.com/assets.zip"}'
{
"success": true,
"task_id": "530bac52-c290-45de-8ab4-96b3262eb40d",
"status": "pending",
"message": "Extraction started",
"archive_type": "zip",
"endpoints": {
"check_status": "https://revidapi.com/v1/caption/task/530bac52-c290-45de-8ab4-96b3262eb40d"
}
}
2. Get the files¶
curl "https://revidapi.com/v1/caption/task/530bac52-c290-45de-8ab4-96b3262eb40d" \
-H "x-api-key: $REVID_KEY"
{
"task_id": "530bac52-c290-45de-8ab4-96b3262eb40d",
"status": "completed",
"type": "extract",
"progress": 100,
"message": "Extraction completed: 1 files extracted",
"result": {
"archive_type": "zip",
"total_files": 1,
"files": [
{"filename": "a.txt", "path": "a.txt", "size": 6, "compressed_size": 6,
"download_url": "https://edit.revidapi.com/output/530bac52-..._extracted/a.txt"}
]
}
}
Small archives finish in a second or two; poll every 2–3 seconds until status is completed or failed.
Errors¶
| Code | Meaning |
|---|---|
400 |
Missing file_url, or the file is not a supported archive |
401 |
Missing or invalid API key |
402 |
Not enough credits |
502 |
The archive URL could not be downloaded |
Failed jobs are refunded automatically.