EF

EdgeFlow

File optimization API

Docs

EdgeFlow API documentation

Authenticate with a bearer API key from a signed-in account, send multipart uploads to tool endpoints, and receive structured JSON responses.

Authentication

All developer API calls require Authorization: Bearer YOUR_API_KEY from an authenticated account. Signed-up users receive recurring monthly API credits, while public tool pages run through separate website routes and do not expose the developer API anonymously.

Error codes

  • UNAUTHORIZED for missing or invalid credentials
  • VALIDATION_ERROR for bad input or unsupported file types
  • RATE_LIMITED when daily or burst usage is exceeded
  • PROCESSING_ERROR when a conversion fails server-side

Plan limits

  • Free: authenticated API access with recurring monthly API credits and uploads up to 100 MB
  • Basic: mid-tier monthly API credits, higher daily usage limits, and uploads up to 1029 MB
  • Pro: highest monthly API credit allowances, highest daily usage limits, and uploads up to 5 GB
  • Anonymous pages: website-only usage with stricter conversion and file-size limits, but no developer API access

Response shape

{
  "success": true,
  "message": "Operation successful",
  "tool": "compress-image",
  "input": {
    "fileCount": 1,
    "files": [{ "fileName": "photo.jpg", "mimeType": "image/jpeg", "size": 482211 }],
    "options": { "quality": "80", "outputFormat": "webp" }
  },
  "output": {
    "fileId": "cjxyz123",
    "fileName": "photo-compressed.webp",
    "size": 82422,
    "mimeType": "image/webp",
    "outputCount": 1,
    "downloadUrl": "/api/download/cjxyz123"
  },
  "stats": {
    "percentSaved": 34.8,
    "outputSizeBytes": 82422
  }
}

PDF API

Organize

  • POST /api/pdf/merge
  • POST /api/pdf/split
  • POST /api/pdf/remove-pages
  • POST /api/pdf/extract-pages
  • POST /api/pdf/organize-pdf
  • POST /api/pdf/scan-to-pdf

Optimize

  • POST /api/pdf/optimize
  • POST /api/pdf/compress
  • POST /api/pdf/repair
  • POST /api/pdf/ocr

Convert to PDF

  • POST /api/pdf/jpg-to-pdf
  • POST /api/pdf/word-to-pdf
  • POST /api/pdf/powerpoint-to-pdf
  • POST /api/pdf/excel-to-pdf
  • POST /api/pdf/html-to-pdf

Convert from PDF

  • POST /api/pdf/pdf-to-jpg
  • POST /api/pdf/pdf-to-word
  • POST /api/pdf/pdf-to-powerpoint
  • POST /api/pdf/pdf-to-excel
  • POST /api/pdf/pdf-to-pdfa

Edit

  • POST /api/pdf/rotate
  • POST /api/pdf/page-numbers
  • POST /api/pdf/watermark
  • POST /api/pdf/crop
  • POST /api/pdf/edit

Security

  • POST /api/pdf/protect
  • POST /api/pdf/unlock
  • POST /api/pdf/sign
  • POST /api/pdf/redact
  • POST /api/pdf/compare

Intelligence

  • POST /api/pdf/summarize
  • POST /api/pdf/translate

POST /api/pdf/organize remains supported for backward compatibility with operation=remove, operation=extract, or the default reorder workflow.

Image API

Optimization

  • POST /api/image/compress

Editing

  • POST /api/image/resize
  • POST /api/image/crop
  • POST /api/image/rotate
  • POST /api/image/watermark

Enhancement

  • POST /api/image/upscale

Conversion

  • POST /api/image/convert
  • POST /api/image/webp
  • POST /api/image/convert-to-jpg
  • POST /api/image/png-to-jpg
  • POST /api/image/convert-from-jpg
  • POST /api/image/jpg-to-png
  • POST /api/image/image-to-pdf

System API

  • GET /api/health
  • GET /api/download/:fileId
  • POST /api/document/process

/api/health stays public for system checks. The developer tool aliases and document processing endpoints require authentication and consume monthly API credits.

JavaScript example

const response = await fetch("http://localhost:3000/api/image/compress", {
  method: "POST",
  headers: {
    Authorization: "Bearer YOUR_API_KEY"
  },
  body: formData
});

const data = await response.json();

curl example

curl -X POST http://localhost:3000/api/image/compress \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -F "file=@./photo.jpg" \
  -F "quality=80" \
  -F "outputFormat=webp"