Back

API Documentation

REST API for file conversion — simple authentication, predictable pricing.

Quick Start

Authentication

All requests require an API key in the Authorization header.

Authorization: Bearer YOUR_API_KEY
Get your API key →

Base URL

https://api.superconverter.io/v1

Example Request

curl -X POST "https://api.superconverter.io/v1/convert/heic-to-jpg" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "[email protected]" \
  -o output.jpg

Endpoints

Image Conversion

POST/convert/heic-to-jpg10 credits

Convert HEIC/HEIF images to JPG

params: file: HEIC/HEIF image
response: image/jpeg binary
POST/convert/webp10 credits

Convert images to/from WebP format

params: file: image, format: webp|jpg|png
response: image binary
POST/convert/resize10 credits

Resize images to specific dimensions

params: file: image, width: number, height: number, maintainAspect?: boolean
response: image binary
POST/convert/compress10 credits

Compress images with quality settings

params: file: image, quality: 1-100
response: image binary
POST/convert/svg-to-png10 credits

Convert SVG vectors to PNG raster

params: file: SVG, width?: number, height?: number
response: image/png binary
POST/convert/remove-background50 credits

AI-powered background removal

params: file: image (JPG/PNG/WebP)
response: image/png binary (transparent)

Documents

POST/convert/images-to-pdf20 credits

Combine multiple images into a PDF

params: files[]: images, pageSize?: A4|Letter|Auto
response: application/pdf binary
POST/convert/pdf-to-images20 credits

Convert PDF pages to images

params: file: PDF, format: jpg|png, quality?: 1-100
response: application/zip (images)
POST/convert/pdf-merge20 credits

Merge multiple PDFs into one

params: files[]: PDF files
response: application/pdf binary
POST/convert/pdf-split20 credits

Split PDF into multiple documents

params: file: PDF, pages: string (e.g., '1-3,5,7-9')
response: application/zip (PDFs)
POST/convert/pdf-compress20 credits

Compress PDF file size

params: file: PDF, quality?: low|medium|high
response: application/pdf binary
POST/convert/pdf-rotate10 credits

Rotate PDF pages

params: file: PDF, rotation: 90|180|270, pages?: string
response: application/pdf binary
POST/convert/pdf-to-text20 credits

Extract text content from PDF files

params: file: PDF
response: { text: string }
POST/convert/pdf-watermark20 credits

Add text or image watermark to PDF

params: file: PDF, text?: string, image?: file, opacity?: 0-1, position?: string
response: application/pdf binary
POST/convert/pdf-page-numbers20 credits

Add page numbers to PDF

params: file: PDF, format?: string, position?: string, startPage?: number
response: application/pdf binary
POST/convert/pdf-protect20 credits

Password protect a PDF

params: file: PDF, password: string
response: application/pdf binary (encrypted)
POST/convert/pdf-unlock20 credits

Remove password from PDF

params: file: PDF, password: string
response: application/pdf binary

Video

POST/convert/mp4-to-gif50 credits

Convert video to animated GIF

params: file: video, fps?: 10-30, width?: number, start?: seconds, duration?: seconds
response: image/gif binary
POST/convert/gif-to-mp450 credits

Convert GIF to MP4 video

params: file: GIF
response: video/mp4 binary
POST/convert/video-compress100 credits

Compress video file size

params: file: video, quality?: low|medium|high, format?: mp4|webm
response: video binary
POST/convert/video-crop100 credits

Crop video dimensions (TikTok, Reels, etc.)

params: file: video, width: number, height: number, x?: number, y?: number
response: video/mp4 binary
POST/convert/video-trim50 credits

Trim video start/end

params: file: video, start: seconds, end: seconds
response: video/mp4 binary
POST/convert/extract-audio50 credits

Extract audio track from video

params: file: video, format?: mp3|wav
response: audio binary

Audio

POST/convert/audio-convert30 credits

Convert between audio formats

params: file: audio, format: mp3|wav|flac|aac|ogg, bitrate?: number
response: audio binary
POST/convert/audio-trim30 credits

Trim audio clips

params: file: audio, start: seconds, end: seconds
response: audio binary

Text & OCR

POST/convert/ocr30 credits

Extract text from images (OCR)

params: file: image, language?: eng|nld|deu|fra|...
response: { text: string, confidence: number }
POST/convert/qr-generator10 credits

Generate QR codes

params: content: string, format?: png|svg, size?: number, color?: hex
response: image binary
POST/convert/qr-reader10 credits

Read QR codes from images

params: file: image
response: { content: string, format: string }
POST/convert/text-cleaner10 credits

Clean and format text

params: text: string, options?: { removeHtml, trimLines, normalizeSpaces }
response: { text: string }
POST/convert/markdown-to-html10 credits

Convert Markdown to HTML

params: text: string
response: { html: string }

Developer Tools

POST/convert/json-format10 credits

Format, validate and minify JSON

params: text: string, action: format|minify|validate
response: { result: string, valid: boolean }
POST/convert/csv-to-json10 credits

Convert CSV to JSON

params: file: CSV or text: string
response: { data: array }
POST/convert/json-to-csv10 credits

Convert JSON to CSV

params: text: string (JSON array)
response: text/csv
POST/convert/base6410 credits

Encode/decode Base64

params: text?: string, file?: binary, action: encode|decode
response: { result: string }
POST/convert/minify-js10 credits

Minify JavaScript code

params: text: string
response: { result: string, savings: string }
POST/convert/minify-css10 credits

Minify CSS stylesheets

params: text: string
response: { result: string, savings: string }
POST/convert/hash-generator10 credits

Generate MD5, SHA-256, SHA-512 hashes

params: text?: string, file?: binary, algorithm: md5|sha256|sha512
response: { hash: string, algorithm: string }

AI Tools

POST/convert/sentiment-analysis25 credits

Analyze text sentiment & emotion

params: text: string
response: { sentiment: positive|negative|neutral, score: number, emotions: object }
POST/convert/image-describe50 credits

Generate image descriptions (alt-text)

params: file: image
response: { description: string, tags: string[], confidence: number }
POST/convert/invoice-scanner100 credits

Extract structured data from invoices

params: file: image or PDF
response: { vendor: string, total: number, items: array, date: string, ... }
POST/convert/handwriting-ocr75 credits

Convert handwritten notes to text

params: file: image
response: { text: string, confidence: number }

Archive

POST/convert/create-zip10 credits

Create ZIP archive from files

params: files[]: any files
response: application/zip binary
POST/convert/extract-zip10 credits

Extract files from ZIP archive

params: file: ZIP
response: application/zip binary (or file list)

Response Format

Success

// Binary file response
Content-Type: image/jpeg
Content-Disposition: attachment

// Or JSON for text operations
{
  "success": true,
  "data": "result here",
  "credits_used": 10
}

Error

{
  "error": "Error message",
  "code": "INVALID_FILE",
  "status": 400
}

Webhooks & Async

For large files or long-running operations, use async processing with webhooks. Send an X-Webhook-URL header to receive results when ready.

1. Submit request with webhook

curl -X POST "https://api.superconverter.io/v1/convert/video-compress" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Webhook-URL: https://your-server.com/webhook" \
  -F "[email protected]" \
  -F "quality=medium"

2. Immediate response (job queued)

{
  "job_id": "job_abc123xyz",
  "status": "processing",
  "webhook_url": "https://your-server.com/webhook",
  "estimated_time": 45
}

3. Webhook callback (when complete)

// POST to your webhook URL when complete
{
  "job_id": "job_abc123xyz",
  "status": "completed",
  "result_url": "https://api.superconverter.io/results/abc123xyz",
  "expires_at": "2024-01-15T12:00:00Z",
  "credits_used": 100
}

Alternative: Poll job status

// Alternative: Poll job status
GET https://api.superconverter.io/v1/jobs/job_abc123xyz

{
  "job_id": "job_abc123xyz",
  "status": "completed", // pending | processing | completed | failed
  "result_url": "https://api.superconverter.io/results/abc123xyz",
  "progress": 100
}

Note: Result files expire after 1 hour. Download or process them promptly.

Batch Operations

Process multiple files in a single request. Reduces overhead and simplifies bulk conversions.

Batch request

curl -X POST "https://api.superconverter.io/v1/batch/convert" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: multipart/form-data" \
  -F "operation=heic-to-jpg" \
  -F "files[][email protected]" \
  -F "files[][email protected]" \
  -F "files[][email protected]"

Batch response

{
  "batch_id": "batch_xyz789",
  "total_files": 3,
  "results": [
    { "index": 0, "status": "completed", "url": "https://..." },
    { "index": 1, "status": "completed", "url": "https://..." },
    { "index": 2, "status": "completed", "url": "https://..." }
  ],
  "credits_used": 30
}

Limits

// Batch limits
- Max 20 files per request
- Total size max 100MB (paid) / 50MB (free)
- All files must use same operation
- Results available for 1 hour

Error Codes

CodeStatus
INVALID_FILE400
FILE_TOO_LARGE413
INVALID_API_KEY401
INSUFFICIENT_CREDITS402
RATE_LIMIT_EXCEEDED429
PROCESSING_FAILED500
INVALID_PARAMS400
UNSUPPORTED_FORMAT400
TIMEOUT504
WEBHOOK_FAILED502

Error response format

{
  "error": "File format not supported",
  "code": "INVALID_FILE",
  "status": 400,
  "details": {
    "received": "application/octet-stream",
    "expected": ["image/heic", "image/heif"]
  }
}

Automation Integrations

n8n / Zapier / Make

Get all available tools as JSON for your automation workflows.

GET https://api.superconverter.io/tools

Returns: tool IDs, input/output formats, API endpoints, categories.

n8n GuideComing soonZapier GuideComing soonMake GuideComing soon

n8n HTTP Request Example

// 1. HTTP Request node - Get available tools
GET https://api.superconverter.io/tools

// 2. HTTP Request node - Convert file
POST https://api.superconverter.io/v1/heic-to-jpg
Headers: Authorization: Bearer YOUR_API_KEY
Body: Form-Data with file

// Response: Converted file (binary)

Rate Limits

TierRequests/minMax file size
Free1010 MB
Paid100100 MB

Ready to integrate?