Developer API

QuickPix image processing API

Upload files, start image processing jobs, poll task status, and download results from your own workflow. API access is available on Pro and Max plans.

Authentication

Use a paid-plan API key.

x-api-key: qp_live_your_api_key

API keys

Generate API keys from the dashboard. Send them with the x-api-key header for upload and processing requests.

Async processing

Image tasks are queued so large files and batch workflows can be handled reliably.

Plan limits

API access, monthly quota, batch size, storage, and retention follow the active paid plan.

Basic workflow

The API uses file ids and asynchronous task ids so the same flow works for small images, larger processing jobs, and direct-upload flows.

POST/api/upload

Upload through the API

Send multipart form-data with a file field. The response includes a fileId for processing endpoints.

POST/api/upload/presign

Use direct upload when needed

Create a short-lived R2 upload URL, then confirm with /api/upload/confirm after the PUT succeeds.

POST/api/process/compress

Start a processing job

Run compression, resize, crop, convert, rotate, flip, watermark, image-to-pdf, or presentation-to-images jobs.

GET/api/tasks/{taskId}

Check job status

Poll a task until it finishes, then use the returned output file id for download or preview.

GET/api/download/{fileId}

Download the result

Download processed output after the job completes.

Batch processing endpoints

Batch endpoints accept a fileIds array and return one queued task per source image. They follow the batch size, API quota, daily quota, and priority rules of the authenticated plan.

POST/api/process/batch/compress

Compress multiple uploaded images with shared quality, format, or target-size settings.

POST/api/process/batch/resize

Resize multiple images with one width, height, fit mode, and optional output format.

POST/api/process/batch/upscale

Upscale multiple images by 2x, 3x, 4x, or a shared target width or height.

POST/api/process/batch/convert

Convert multiple images to one target format with an optional shared quality value.

POST/api/process/batch/rotate

Rotate multiple images with one angle and background setting.

POST/api/process/batch/flip

Flip multiple images horizontally, vertically, or both directions.

POST/api/process/batch/watermark

Apply one text or logo watermark to multiple images with shared placement and style settings.

Example request

Upload a file first, then pass its fileId to a processing endpoint. The response contains a taskId that you can poll until complete.

# 1. Upload and capture the returned data.fileId
curl -X POST https://quickpix.shop/api/upload \
  -H "x-api-key: qp_live_your_api_key" \
  -F "file=@photo.png"

# 2. Start a conversion job with that fileId
curl -X POST https://quickpix.shop/api/process/convert \
  -H "content-type: application/json" \
  -H "x-api-key: qp_live_your_api_key" \
  -d '{
    "fileId": "file_id_from_upload",
    "format": "webp",
    "quality": 85
  }'