Image Compression API
Compress JPG, PNG, and WebP images programmatically. Integrate server-side compression into your apps, CI/CD pipelines, and workflows.
Your API Keys
Create and manage keys for programmatic access.
Loading...
Quick Start
cURL
curl -X POST https://image-compressor.appsnap.co.uk/api/v1/compress \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@photo.jpg" \
-F "quality=80" \
-F "format=jpeg" \
-o compressed.jpgJavaScript / TypeScript
const formData = new FormData();
formData.append("image", fileInput.files[0]);
formData.append("quality", "80");
formData.append("format", "jpeg");
const res = await fetch(
"https://image-compressor.appsnap.co.uk/api/v1/compress",
{
method: "POST",
headers: { Authorization: "Bearer YOUR_API_KEY" },
body: formData,
}
);
const compressedBlob = await res.blob();
console.log("Saved", res.headers.get("X-Savings-Percent") + "%");API Reference
| Parameter | Type | Default | Description |
|---|---|---|---|
| image | File | — | Required. JPG, PNG, or WebP. Max 10MB. |
| quality | number | 80 | Compression quality (1-100). JPEG/WebP only. |
| format | string | jpeg | Output format: jpeg, png, webp. |
| width | number | — | Max output width (pixels). Maintains aspect ratio. |
| height | number | — | Max output height (pixels). |
| target_kb | number | — | Target file size in KB (Pro only). Binary-searches quality. |
Response Headers
X-Original-SizeOriginal file size in bytesX-Compressed-SizeCompressed file size in bytesX-Savings-PercentPercentage size reductionX-RateLimit-RemainingCompressions left this monthRate Limits
Free Tier
100/mo
JPEG & PNG output, standard quality
Pro Tier
10,000/mo
All formats, target size, WebP, priority