InstantUnzip avatar
InstantUnzip

Pricing

Pay per event

Go to Apify Store
InstantUnzip

InstantUnzip

Developed by

choayb ouaret

choayb ouaret

Maintained by Community

InstantUnzip downloads any ZIP file from a given URL and extracts its contents automatically. No manual steps or temporary files—just provide the link and get all extracted files saved directly to the Apify Key-Value Store.

0.0 (0)

Pricing

Pay per event

0

1

0

Last modified

3 days ago

📦 InstantUnzip - Effortless ZIP File Extraction

Automatically download, extract, and store ZIP file contents in seconds.

InstantUnzip is a powerful Apify Actor that downloads ZIP files from any URL, extracts all contents, and stores them in your key-value store. It's built with a fair, usage-based pricing model and includes plan-based limits to suit everyone from hobbyists to enterprise users.


✨ Key Features

  • 💰 Fair Pricing - A pay-per-file model ensures you only pay for what you extract.
  • 🚀 Tiered Limits - Generous limits for Free, Pro, and Business users.
  • 🎯 Smart Content Detection - Automatically identifies common file types (images, documents, etc.).
  • 🛡️ Secure by Design - Sanitizes filenames and prevents malicious path traversal.
  • 🍎 macOS Friendly - Automatically ignores .DS_Store and ._ metadata files.
  • 📊 Detailed Logging - Track extraction progress and see exactly which files were processed.
  • 🔄 Error Resilient - Continues extracting valid files even if some entries in the ZIP are corrupted.

🎯 Use Cases

  • Data Processing Pipelines: Extract datasets, CSVs, and JSON files from archives for automated analysis.
  • Image Bulk Processing: Download image collections and feed them to image processing or AI actors.
  • Content Archival: Automatically unzip and store website backups, reports, or documentation.
  • E-commerce Automation: Process product image packages from suppliers automatically.
  • Web Scraping Enhancement: Combine with scrapers to download and extract ZIP files found on websites.

🚀 Quick Start

Input

The actor accepts a simple JSON input with a single required field:

{
"url": "https://example.com/your-file.zip"
}

Run via API

curl -X POST https://api.apify.com/v2/acts/GWGDDegLMeubNPYpg/runs \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/file.zip"
}'

📤 Output

All extracted files are stored in the Key-Value Store associated with the actor run. Each file is stored with:

  • Key: Sanitized filename (e.g., product_photo.jpg)
  • Value: File content as binary data
  • Content-Type: Automatically detected MIME type (if recognized)

You can access the files via the Apify Console under the run's Storage tab or programmatically via the API.


📊 Pricing Tiers & Limits

This Actor enforces different limits based on your Apify subscription plan. This ensures fair usage and provides a clear upgrade path as your needs grow.

PlanMax ZIP SizeMax Files in ZIPMax Runs / Month
Free10 MB10050
Pro100 MB1,000500
Business500 MBUnlimited5,000
EnterpriseUnlimitedUnlimitedUnlimited

If you hit a limit, the Actor will fail with a clear error message prompting you to upgrade.


💰 Pricing Model

This Actor uses a pay-per-file model, making it cost-effective for any task size.

  • File Extraction Fee (zip-extraction): You are charged a small fee for each file successfully extracted.
    • Base Rate: $0.02 per extracted file.
    • Discounts: Paid Apify plans (Bronze, Silver, Gold) receive significant discounts on this rate.
  • Actor Start Fee: A tiny platform fee is applied for each Actor run (e.g., $0.00005).

This model ensures you only pay for the value you receive. The free Apify plan includes $5 of platform credits every month, which covers thousands of file extractions for free.


⚙️ Configuration

Input Schema

{
"title": "InstantUnzip Input",
"type": "object",
"schemaVersion": 1,
"properties": {
"url": {
"title": "ZIP File URL",
"type": "string",
"description": "Direct public URL to the .zip file you want to extract.",
"editor": "textfield",
"example": "https://github.com/apify/apify-js/archive/refs/heads/master.zip"
}
},
"required": ["url"]
}

🔧 Integration with Other Actors

You can easily chain this Actor with others in Apify Tasks or use it inside your own code.

import { Actor } from 'apify';
// Step 1: Run InstantUnzip to extract files
const unzipRun = await Actor.call('GWGDDegLMeubNPYpg', {
url: 'https://example.com/images.zip'
});
// Step 2: Get the Key-Value Store ID from the run's output
const storeId = unzipRun.defaultKeyValueStoreId;
// Step 3: Access and process each extracted file
const client = Actor.newClient();
const store = client.keyValueStore(storeId);
const { keys } = await store.listKeys();
for (const key of keys) {
if (key.key === 'OUTPUT') continue; // Skip the actor's own output record
const fileRecord = await store.getRecord(key.key);
// Process your file here...
// fileRecord.value contains the file buffer
console.log(`Processing file: ${key.key}`);
}

🐛 Troubleshooting

Q: "Failed to download: 403 Forbidden" or other HTTP errors.

  • The URL is likely not publicly accessible. Ensure it's a direct download link that doesn't require a login.

Q: "ZIP file is too large" or "Too many files in ZIP".

  • You have exceeded the limits of your current Apify plan. The error message will specify the limit you hit. Please upgrade your plan to process larger files. See the "Pricing Tiers & Limits" section above.

Q: "Monthly run limit reached".

  • You have used all the free runs allocated to this Actor for the month on your plan. You can either upgrade or wait until the next calendar month.

Q: Some files were skipped.

  • The logs will indicate why. Common reasons are invalid filenames or macOS metadata files (.DS_Store, ._*), which are skipped by design.

📝 Supported Content-Types

The Actor automatically detects and sets Content-Type for the following common extensions. All other files are saved as application/octet-stream.

ExtensionsContent Type
.txttext/plain
.jsonapplication/json
.htmltext/html
.jpg, .jpegimage/jpeg
.pngimage/png
.gifimage/gif
.webpimage/webp
.pdfapplication/pdf

Made with ❤️ for the Apify Community