Image Processing Image Optimization File Compression

Image Compression

Compress and resize JPEG, PNG, or WebP images

What can this API do?

Uploads and public image URLs

Optimize files supplied by users or images already available through a public HTTP(S) URL.

JPEG, PNG, and WebP

Accept the three common web image formats and choose the output format your workflow needs.

Aspect-ratio-preserving resize

Fit images within target dimensions without distortion or unnecessary upscaling.

Quality control

Balance file size and visual quality for JPEG and WebP while keeping PNG output lossless.

Direct optimized image bytes

Receive the processed image with the correct media type and a usable download filename.

Faster media delivery

Reduce image payloads for websites, mobile apps, storage, email, archives, and publishing pipelines.

Plan and usage

What does the 5 requests per second limit mean?

It is a request-rate limit, not a concurrency allowance. Keep your request rate at or below 5 per second. If the service returns a rate-limit response, reduce the frequency and retry with backoff.

Is total paid usage limited?

There is no total request cap during an active paid subscription and no usage-based overage charge.

How does the free trial work?

Each account can receive a limited trial key. Requests are shared across APIs in the same category. Check Trial Keys for the exact allowance and remaining requests.

How do renewal and cancellation work?

The plan renews annually until canceled. Manage or cancel the renewal from Dashboard → Orders & Billing. Access continues through the paid period after cancellation. See the Terms of Service for the current refund policy. If the billing portal is unavailable, contact support.

API Document

HTTP Protocol:HTTPS

HTTP Method:POST

HTTP Endpoint:https://api.gugudata.io/v1/image/image-compress

Response Type:application/json; charset=utf-8

DEMO Endpoint:https://api.gugudata.io/v1/image/image-compress/demo

Live Demo:Try Interactive Demo

Postman Collection:Run in Postman

API Request Parameters

NameTypeIs RequiredDefault ValueRemark
appkeystringtrueYOUR_APPKEY API key used to authenticate the request.
filefilefalse JPEG, PNG, or WebP multipart upload up to 10 MiB. Supply either file or image_url, but not both.
image_urlstringfalse Complete public HTTP or HTTPS image URL up to 2,048 characters. Supply either image_url or file, but not both.
targetWidthintegerfalse Output width bound from 1 to 8,192 pixels. Aspect ratio is preserved and smaller images are not enlarged.
targetHeightintegerfalse Output height bound from 1 to 8,192 pixels. Aspect ratio is preserved and smaller images are not enlarged.
maxWidthintegerfalse Maximum output width from 1 to 8,192 pixels while preserving aspect ratio.
maxHeightintegerfalse Maximum output height from 1 to 8,192 pixels while preserving aspect ratio.
qualityintegerfalse85 JPEG or WebP output quality from 1 to 95. PNG output remains lossless.
formatstringfalse Output format: jpeg, jpg, png, or webp. The source format is used when omitted.

API Response Parameters

NameTypeRemark
imagebinary Compressed image bytes. The response media type and download filename match the selected output format.

API Response Status Codes

Status CodeExplanation of Status CodeRemarks
200Request processed successfully.Some endpoints expose a separate application-level status field in the response body, such as `dataStatus.statusCode`.
400Invalid request parameters or request format.Check required fields, data types, and request body format.
401Missing or unknown application key.Provide a valid `appkey` with the request.
403The application key is recognized but access is not allowed.The key may be expired, inactive, or not permitted for the requested API.
429Request rate or trial usage limit exceeded.Reduce request frequency and retry with backoff. If a trial allowance is exhausted, check Trial Keys for remaining requests and subscribe to continue.
500Internal service error.Retry later or contact support if the error persists.
503Upstream service unavailable.Retry later; the requested upstream dependency is temporarily unavailable.

Remote MCP

AI client access

Use this API through GuGuData Remote MCP

Connect your AI client once, authorize in the browser, and the client can use the GuGuData API tools available to your account. You do not need to paste an appkey into the MCP client.

Endpoint https://mcp.gugudata.io/mcp
Open MCP Guide
Generic MCP configuration
{
  "mcpServers": {
    "gugudata": {
      "url": "https://mcp.gugudata.io/mcp",
      "transportType": "streamable-http"
    }
  }
}

Code Snippets