/v1/compress-image
Compress JPG/PNG/WEBP images.
Tool Usage Notes
Accepts one or multiple image URLs (JPG, PNG, WEBP).
If one image is processed, you get a single file.
If multiple images are processed, you get a ZIP file.
For lossy profiles, system avoids returning larger files than original when possible.
If one image is processed, you get a single file.
If multiple images are processed, you get a ZIP file.
For lossy profiles, system avoids returning larger files than original when possible.
Estimate Before Processing
Use the estimate endpoint to preview token cost and validate your input URLs before starting conversion.
curl -X POST https://filemazing.com/v1/compress-image/estimate \
-H "Authorization: Bearer fm_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"inputs": ["https://example.com/file"],
"response_type": "json"
}'
{
"ok": true,
"tool": "compress-image",
"mode": "estimate",
"estimated_tokens": 1,
"available_tokens": 10,
"enough_tokens": true,
"shortfall_tokens": 0
}
Example Request
Select a compression profile for each request.
curl -X POST https://filemazing.com/api/v1/compress-image \
-H "Authorization: Bearer fm_live_your_api_key" \
-H "Content-Type: application/json" \
-d '{
"inputs": ["https://example.com/image.jpg"],
"profile": "balanced",
"response_type": "json"
}'
Request Parameters Breakdown
| Parameter | Required | Type | Options | Default | Example |
|---|---|---|---|---|---|
| inputs | Yes | array<string> | HTTP/HTTPS URL(s) to JPG, PNG, WEBP files |
none (required)
|
["https://example.com/image.jpg"]
|
| Provide one or more image URLs. | |||||
| profile | Yes | string |
lossless, balanced, maximum
|
none (required)
|
balanced
|
| Compression profile applied to all input files. | |||||
| response_type | No | string |
json, xml, text
|
json
|
json
|
| Controls API response payload format. | |||||
| promo_code | No | string | Any active promo code |
empty
|
SPRING25
|
| Optional; applies discount rules when valid. | |||||
Example Response
Compressed image package is available at the returned URL.
{
"ok": true,
"tool": "compress-image",
"mode": "sync",
"status": "completed",
"download_url": "https://filemazing.com/tool/compress-image/jobs/.../download",
"estimated_tokens": 1,
"final_tokens": 1
}
Response Fields Breakdown
| Field | Type | Always Returned | Example |
|---|---|---|---|
| ok | boolean | Yes |
true
|
| Indicates success/failure. | |||
| tool | string | Yes |
compress-image
|
| Tool identifier. | |||
| mode | string | Yes |
sync
|
| Current execution mode. | |||
| status | string | Yes |
completed
|
| Processing state. | |||
| download_url | string | Yes |
https://filemazing.com/tool/compress-image/jobs/.../download
|
| Single file or ZIP download URL. | |||
| estimated_tokens | integer | Yes |
1
|
| Estimated reserved tokens. | |||
| final_tokens | integer | Yes |
1
|
| Final charged tokens. | |||