Zip / Unzip - File Compression < 100MB
Compress and decompress large files (10MB–100MB) using ZIP or GZIP formats. Output files are uploaded to cloud storage and returned as downloadable signed URLs that expire after 7 days.
Size range: Input and output must be between 10MB and 100MB. For files under 10MB, use the standard archive compressor tool.
Actions
compress
Create a ZIP or GZIP archive from input files.
ZIP Compression
Bundle multiple files into a single ZIP archive.
Required fields:
action(string):"compress"format(string):"zip"files(array): List of file objects, each containing:filename(string): Name/path for the file inside the archivecontent_base64(string): Base64-encoded file content
Optional fields:
filename(string): Output archive filename (default:"archive.zip")
Limits: Maximum 500 files per archive.
Example:
{
"action": "compress",
"format": "zip",
"files": [
{
"filename": "report.csv",
"content_base64": "<base64-encoded content>"
},
{
"filename": "data/records.json",
"content_base64": "<base64-encoded content>"
}
],
"filename": "monthly_export.zip"
}
Response includes: file_id, signed_url, signed_url_expires_in, size_bytes
GZIP Compression
Compress a single file using GZIP.
Required fields:
action(string):"compress"format(string):"gzip"input_base64(string): Base64-encoded file content to compress
Optional fields:
filename(string): Output filename (default:"archive.gz")
Example:
{
"action": "compress",
"format": "gzip",
"input_base64": "<base64-encoded content>",
"filename": "database_dump.gz"
}
Response includes: file_id, signed_url, signed_url_expires_in, size_bytes
decompress
Extract files from a ZIP or GZIP archive. Provide the archive via file_id (from a previous upload or tool output) or input_base64.
ZIP Decompression
Extract all files from a ZIP archive. Each extracted file is uploaded individually.
Required fields:
action(string):"decompress"format(string):"zip"- One of:
file_id(string): File ID of a previously stored archiveinput_base64(string): Base64-encoded ZIP archive
Example using file_id:
{
"action": "decompress",
"format": "zip",
"file_id": "abc123def456"
}
Example using base64:
{
"action": "decompress",
"format": "zip",
"input_base64": "<base64-encoded zip archive>"
}
Response includes: file_count and a files array, each entry with filename, size_bytes, file_id, signed_url, signed_url_expires_in
GZIP Decompression
Decompress a single GZIP file.
Required fields:
action(string):"decompress"format(string):"gzip"- One of:
file_id(string): File ID of a previously stored archiveinput_base64(string): Base64-encoded GZIP archive
Optional fields:
filename(string): Output filename for the decompressed file (default:"decompressed")
Example:
{
"action": "decompress",
"format": "gzip",
"file_id": "abc123def456",
"filename": "restored_backup.sql"
}
Response includes: file_id, signed_url, signed_url_expires_in, size_bytes
Common Workflows
- Archive and share large datasets: Compress multiple CSV/JSON files into a single ZIP, then share the signed URL.
- Process uploaded archives: Decompress a ZIP received via
file_id, process individual files, then re-compress results. - Compress database exports: GZIP a single large SQL dump or log file for efficient storage.
Important Notes
- Size enforcement: Both input and output must be between 10MB and 100MB. Files under 10MB should use the standard archive compressor. Files over 100MB must be split first.
- File limit: ZIP archives support up to 500 files.
- Output storage: Compressed/decompressed files are stored in cloud storage. Signed download URLs expire after 7 days.
- Path safety: Filenames in ZIP archives cannot use absolute paths or contain
..traversal segments. - Format default: If
formatis not specified, it defaults to"zip".







