Image Compressor

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.jpg

JavaScript / 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

ParameterTypeDefaultDescription
imageFileRequired. JPG, PNG, or WebP. Max 10MB.
qualitynumber80Compression quality (1-100). JPEG/WebP only.
formatstringjpegOutput format: jpeg, png, webp.
widthnumberMax output width (pixels). Maintains aspect ratio.
heightnumberMax output height (pixels).
target_kbnumberTarget file size in KB (Pro only). Binary-searches quality.

Response Headers

X-Original-SizeOriginal file size in bytes
X-Compressed-SizeCompressed file size in bytes
X-Savings-PercentPercentage size reduction
X-RateLimit-RemainingCompressions left this month

Rate Limits

Free Tier

100/mo

JPEG & PNG output, standard quality

Pro Tier

10,000/mo

All formats, target size, WebP, priority