Skip to content

Convert

Convert images between formats. Supports common web formats as well as specialized formats like HEIC, JXL, BMP, ICO, JP2, QOI, and PSD.

API Endpoint

POST /api/v1/tools/convert

Accepts multipart form data with an image file and a JSON settings field.

Parameters

ParameterTypeRequiredDefaultDescription
formatstringYes-Target format: jpg, png, webp, avif, tiff, gif, heic, heif, jxl, bmp, ico, jp2, qoi, psd
qualitynumberNo-Output quality (1-100). Applies to lossy formats like jpg, webp, avif, heic.

Supported Output Formats

FormatTypeNotes
jpgLossyJPEG, best compatibility
pngLosslessSupports transparency
webpBothModern web format, good compression
avifLossyNext-gen format, excellent compression
tiffBothPrint/publishing workflows
gifLosslessLimited to 256 colors
heic / heifLossyApple ecosystem format
jxlBothJPEG XL, next-gen format
bmpLosslessUncompressed bitmap
icoLosslessWindows icon format
jp2LossyJPEG 2000
qoiLosslessQuite OK Image format
psdLayeredAdobe Photoshop (requires ImageMagick)

Example Request

Convert to WebP:

bash
curl -X POST http://localhost:1349/api/v1/tools/convert \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"format": "webp", "quality": 85}'

Convert to PNG (lossless):

bash
curl -X POST http://localhost:1349/api/v1/tools/convert \
  -H "Authorization: Bearer si_your-api-key" \
  -F "[email protected]" \
  -F 'settings={"format": "png"}'

Example Response

json
{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.webp",
  "originalSize": 2450000,
  "processedSize": 680000
}

Notes

  • The output filename extension is automatically updated to match the target format.
  • SVG inputs are rasterized at 300 DPI before conversion.
  • PSD conversion requires ImageMagick to be installed on the server.
  • BMP, ICO, JP2, JXL, and QOI use specialized CLI encoders and bypass Sharp processing.
  • HEIC/HEIF encoding uses the system HEIC encoder library.
  • Input formats are broad: JPEG, PNG, WebP, AVIF, TIFF, GIF, HEIC, RAW (CR2, NEF, ARW, etc.), PSD, SVG, BMP, and more.