Image Converter API
A high-performance image processing and format conversion API powered by native libvips. Convert PNG, JPG, BMP, TIFF, or GIF images into ultra-efficient WebP or AVIF files with controllable quality, trimming, dynamic resizing, and optional GitHub Cloud Vault temporary storage.
Base URL
Authentication (Private API)
This API is private and protected. Every API request requires a valid API key. Unauthorized requests without a key will be rejected with HTTP 401 Unauthorized.
Needs CTA Lifetime? contact hello@kuramolabs.com
Get unlimited conversions, high-speed dedicated bandwidth, custom batch endpoints, and permanent vault storage access.
Quickstart Examples
curl -X POST https://converter.kuramolabs.com/api/convert \
-H "X-API-Key: YOUR_API_KEY" \
-F "file=@photo.png" \
-F "format=webp" \
-F "quality=85" \
--output photo.webp
curl -X POST https://converter.kuramolabs.com/api/convert \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"url": "https://images.unsplash.com/photo-1544551763-46a013bb70d5",
"format": "webp",
"width": 1200,
"quality": 80,
"store": true
}'
Main conversion endpoint. Upload an image file via multipart/form-data or provide a public URL via application/json.
| Parameter | Type | Default | Description |
|---|---|---|---|
| file | Binary | — | The image file to convert (multipart field). Max 50 MB. |
| url | String | — | Direct image URL, Google Drive link, Dropbox, or GitHub raw link. |
| format | String | webp | Output format: webp, png, jpeg, avif, tiff. |
| quality | Integer | 85 | Compression quality level from 1 to 100. |
| width / height | Integer | — | Resize target dimensions in pixels (proportions preserved by default). |
| scale | Float | — | Scale multiplier (e.g. 0.5 for 50%, 1.5 for 150%). |
| trim | Boolean | false | Automatically trims whitespace or transparent border pixels. |
| store | Boolean | false | When true, uploads the result to GitHub Cloud Vault and returns JSON download URL. |
Example JSON Response (when store=true)
{
"success": true,
"filename": "my_photo.webp",
"format": "webp",
"width": 1920,
"height": 1080,
"originalSize": 2450123,
"size": 312040,
"savings": "87.3%",
"downloadUrl": "https://converter.kuramolabs.com/api/download/183458992",
"proxyUrl": "https://converter.kuramolabs.com/api/download/183458992?inline=1",
"stored": true,
"createdAt": "2026-10-06T14:15:00.000Z"
}
Proxies and streams the converted image file directly from the GitHub Cloud Vault storage. The origin GitHub release URL is kept strictly confidential and never exposed.
?inline=1 (Opens in browser)
Query Param: ?download=1 (Forces download dialog)
Client Code Examples
const formData = new FormData();
formData.append('file', fileInput.files[0]);
formData.append('format', 'webp');
formData.append('quality', '85');
formData.append('store', 'true');
const res = await fetch('https://converter.kuramolabs.com/api/convert', {
method: 'POST',
body: formData
});
const data = await res.json();
console.log('Saved image URL:', data.downloadUrl);
console.log('Size saved:', data.savings);
import requests
files = {'file': open('photo.png', 'rb')}
data = {'format': 'webp', 'quality': 85}
# Direct stream download:
r = requests.post(
'https://converter.kuramolabs.com/api/convert',
files=files,
data=data
)
with open('photo.webp', 'wb') as f:
f.write(r.content)
print(f"Converted: {len(r.content)} bytes")
Interactive API Tester
Execute live requests against POST /api/convert directly from this browser console.