API Reference
One endpoint, one API key, 99 tools. Get a free key from your dashboard.
Authentication
Send your API key as the x-api-key header on every request. Keys look like eik_....
Endpoint
Replace {tool} with any tool key from the table below. Send the image as multipart/form-data under the field name image, matching the same fields the tool uses on the website (some tools accept extra fields such as a language or color option).
Example
curl -X POST https://web-tool-frontend.vercel.app/api/v1/upscale \ -H "x-api-key: eik_your_key_here" \ -F "image=@photo.jpg" \ -o upscaled.png
Other languages
The API is plain HTTP multipart/form-data, so any language that can make an HTTP request can call it, not just Node. Keep your x-api-key server-side; never ship it in client/browser/mobile code.
Node.js
const fs = require("fs");
async function upscale() {
const form = new FormData();
form.append("image", new Blob([fs.readFileSync("photo.jpg")]));
const res = await fetch("https://web-tool-frontend.vercel.app/api/v1/upscale", {
method: "POST",
headers: { "x-api-key": process.env.ERASERIMG_API_KEY },
body: form,
});
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
fs.writeFileSync("upscaled.png", Buffer.from(await res.arrayBuffer()));
}Python
import os, requests
api_key = os.environ["ERASERIMG_API_KEY"]
with open("photo.jpg", "rb") as f:
res = requests.post(
"https://web-tool-frontend.vercel.app/api/v1/upscale",
headers={"x-api-key": api_key},
files={"image": f},
)
res.raise_for_status()
with open("upscaled.png", "wb") as out:
out.write(res.content)PHP
<?php
$apiKey = getenv("ERASERIMG_API_KEY");
$ch = curl_init("https://web-tool-frontend.vercel.app/api/v1/upscale");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ["x-api-key: $apiKey"],
CURLOPT_POSTFIELDS => [
"image" => new CURLFile("photo.jpg"),
],
]);
$result = curl_exec($ch);
$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($status !== 200) {
throw new Exception("Request failed: $status");
}
file_put_contents("upscaled.png", $result);Rate limits
| Plan | Requests | Window | Validity | Price |
|---|---|---|---|---|
| Free | 40 | every 12h | no expiry | Free |
| Starter | 600 | every 24h | 7 days | $5 |
| Growth | 1200 | every 24h | 14 days | $10 |
| Pro | 2400 | every 24h | 30 days | $15 |
Every response includes X-RateLimit-Limit, X-RateLimit-Remaining, and X-RateLimit-Reset headers. Once a paid plan's validity period ends, the key automatically returns to the free tier until renewed.
Errors
| 401 | Missing or invalid API key |
| 403 | Tool not included in your current plan, see upgradeUrl in the response |
| 404 | Unknown tool key |
| 429 | Rate limit exceeded for your plan |
| 502 | Processing failed upstream |
Tool keys (99)
Core Tools
bg-removeFreebg-replaceProupscaleStarterfilterFreecartoonFreecompressFreeocrStarterdetectStarterpdfStarterpaletteFreeimage-to-svgFreeimage-to-faviconFreephoto-editorFreeqrFreebg-eraser-proGrowthEditing Essentials
face-blurFreeportraitStartercropFreeenhanceStarterhdrStarterdenoiseStartershadowStartercinematic-filterFreeLayout & Effects
collageProsketchProresizeFreewaveGrowthmemeFreeborderGrowthwatermarkStartercolortempStarterinfoFreediffStartersplitterStarterbatchStarterPrivacy & Canvas
watermark-rmFreeshapeProexpandProbggenGrowthexifStarterpixelateFreeperspectiveGrowthduotoneGrowthsparkleGrowthPortrait & Fun
id-photoGrowthascii-artProhistogramGrowthskin-smoothGrowthred-eyeGrowthCreative Effects
glitch-artGrowthvaporwave-filterGrowthneon-glowGrowthcomic-bookGrowthoil-paintingProwatercolorProvintage-retroPropop-artProtilt-shiftProlomo-cameraProcross-processProinfrared-effectProSocial & Content
social-media-packProyoutube-thumbnailPrologo-makerProstamp-sealProcertificate-genProinstagram-grid-splitProquote-cardPromoodboard-makerProFile & Format
gif-creatorFreegif-frame-extractPropng-optimizerProheic-to-jpgProraw-to-jpegProwebp-converterProsvg-to-pngProimage-to-base64ProUtility & Pro
bulk-bg-removerProecommerce-enhancerProimage-sharpen-proProcolor-blindness-simPropattern-generatorProgradient-generatorProcolor-mixer-harmonyProfont-previewPronoise-texture-genProFun & Viral
photo-mosaicPromirror-kaleidoscopePropixel-sort-glitchProdouble-exposureProhalftone-newspaperProdispersion-shatterProlight-leak-filmProfilm-strip-frameProAnalysis
color-analyzerFreeimage-similarityProbrightness-exposureProexif-viewer-detailedProaspect-ratio-calcPro