A production REST API that erases watermarks, brand logos, copyright overlays, and any unwanted object from images — returning a clean, naturally inpainted result. One HTTP call. $0.0125 per image. No mask required: describe what to remove in plain text and the AI handles the rest. 5,000 free credits (7-day trial), no credit card.
Most watermark removal tools require you to manually draw a mask before they can erase anything. PixelAPI's remove-watermark endpoint accepts a plain-language description of the watermark — "the semi-transparent logo in the bottom-right corner" — and automatically locates, removes, and fills the region with realistic background content. The result looks natural, not patched.
The same endpoint also removes logos, date stamps, social-media handles, text overlays, people, objects, and anything else that shouldn't be in the final image. One endpoint, one price, zero manual editing required.
Sign up, copy your API key from the dashboard, and POST your image with a description of what to remove. The endpoint returns a generation id; poll until status=completed, then download the cleaned image.
curl -X POST https://api.pixelapi.dev/v1/image/remove-object \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@photo.jpg" \
-F "prompt=the watermark"
# Response: {"generation_id": "uuid", "status": "queued", ...}
# Poll until completed
curl https://api.pixelapi.dev/v1/image/UUID \
-H "Authorization: Bearer YOUR_API_KEY"
# Response: {"status": "completed", "output_url": "https://..."}
pip install pixelapi
---
from pixelapi import PixelAPI
client = PixelAPI(api_key="YOUR_API_KEY")
result = client.remove_object(image="photo.jpg", prompt="the watermark")
result.save("photo_clean.jpg")
npm install pixelapi
---
import { PixelAPI } from "pixelapi";
const client = new PixelAPI({ apiKey: process.env.PIXELAPI_KEY });
const result = await client.removeObject({
image: "./photo.jpg",
prompt: "the watermark",
});
await result.save("photo_clean.jpg");
composer require pixelapi/pixelapi
---
<?php
use PixelAPI\Client;
$client = new Client(getenv("PIXELAPI_KEY"));
$result = $client->removeObject([
"image" => "photo.jpg",
"prompt" => "the watermark",
]);
file_put_contents("photo_clean.jpg", $result->getBody());
gem install pixelapi
---
require "pixelapi"
client = PixelAPI::Client.new(api_key: ENV["PIXELAPI_KEY"])
result = client.remove_object(image: "photo.jpg", prompt: "the watermark")
File.binwrite("photo_clean.jpg", result.body)
go get github.com/pixelapi/pixelapi-go
---
import "github.com/pixelapi/pixelapi-go"
client := pixelapi.New("YOUR_API_KEY")
result, err := client.RemoveObject("photo.jpg", "the watermark")
if err != nil { panic(err) }
result.Save("photo_clean.jpg")
For watermarks in unusual positions or with complex shapes, supply a binary mask alongside the image. White pixels in the mask mark the area to erase; black pixels are preserved. Mask mode gives you exact control without relying on text detection.
curl -X POST https://api.pixelapi.dev/v1/image/remove-object \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "image=@product.jpg" \ -F "mask=@watermark_mask.png" # mask: white = remove, black = keep
| Provider | Free tier | Per-image API cost | Prompt-based removal |
|---|---|---|---|
| PixelAPI | 5,000 credits (7-day trial), no card | $0.0125 | ✓ Prompt + mask |
| cleanup.pictures | Limited free tier | Usage-based — see cleanup.pictures/pricing | Brush mask only |
| Magic Eraser | Limited free tier | No public API price — see magiceraser.io | Brush mask only |
| Snapedit | Credit-based from $6/mo | Credit-based — see developer.snapedit.app | Auto-detect only |
| watermarkremover.io | Limited free tier | Contact sales — see watermarkremover.io/pricing | Auto-detect only |
| Picsart Inpaint API | 5 credits on signup | Credit-based — see picsart.io/pricing | Mask required |
Pricing verified from each rival's public pricing page October 2026. Rivals that do not publish per-call API pricing are listed with a link to their pricing page. PixelAPI pricing sourced from pixelapi.dev/pricing.
The watermark region is filled with realistic background content — not a blurred patch or solid color. Works across uniform backgrounds, complex textures, gradients, and natural scenes.
Submit a JPEG, get a JPEG back. Submit a PNG, get a PNG back. No unwanted format conversion. Resolution is preserved at full input quality.
Describe the watermark in plain English for hands-free removal, or provide a binary mask image for pixel-exact control. Both modes cost the same: $0.0125 per image.
Every result passes through an output QC layer. If the cleaned image would be corrupted or the inpaint quality falls below threshold, the job is rejected and credits are auto-refunded. You never pay for a failed result.
The remove-object endpoint handles all of the following — just describe what to remove in the prompt field:
PixelAPI is intended for cleaning up images you own or have licensed. Do not use it to remove watermarks from content you do not have rights to.
The remove-watermark (remove-object) endpoint is used in these production workflows. Each links to a setup guide:
Strip agency watermarks from stock photos used in product listings at scale.
Clean MLS listing photos — remove stamps, logos, and distracting overlays before publishing.
Batch-remove preview watermarks from client galleries ahead of delivery.
Clean reposted images — remove handles and credit overlays before repurposing content.
Remove competitor branding from supplier product photos before uploading to your storefront.
Strip sample watermarks from manufacturer imagery before publishing lookbooks.
More use-case guides: all industries →
Auto-clean product images on upload via Shopify webhook.
No-code watermark removal triggered from any Zapier event.
Drag-and-drop watermark removal in Make scenarios.
CMS auto-clean for product detail pages in Webflow.
Bulk-process WooCommerce catalog images on product import.
HTTP POST from any language or platform. No SDK required.
Prompt-based removal vs brush-only. REST API with transparent per-call pricing vs usage-based opaque billing.
Full REST API vs consumer web tool. Programmatic access + SDKs vs no public API.
Flat $0.0125 / image vs opaque credit tiers. Prompt + mask modes vs mask-only.
7-day free trial with 5,000 credits vs limited monthly free credits. Full API access from day one.
20 requests/minute on the free trial, 60 on Starter, 120 on Pro and 300 on Scale, plus 3/10/20/50 parallel jobs respectively (see pixelapi.dev/docs/parallel-processing.html). Exceeding the limit returns HTTP 429 with a Retry-After header. Recommended: exponential backoff starting at 2 s, doubling on each retry up to 30 s. The Python and Node SDKs handle this automatically.
# Python SDK auto-retries 429 with backoff from pixelapi import PixelAPI client = PixelAPI(api_key="...", max_retries=4) result = client.remove_object(image="bulk.jpg", prompt="the watermark") # auto-retries on 429 with exponential backoff
Other error codes:
400 Bad Request — image too large, unsupported format, or all-black mask supplied401 Unauthorized — missing or invalid API key402 Payment Required — trial ended or credits exhausted; subscribe at /pricing429 Too Many Requests — rate limit hit; retry after the Retry-After value500 Internal Server Error — transient failure; retry with backoffPOST your image to https://api.pixelapi.dev/v1/image/remove-object with your API key and a prompt describing the watermark (e.g. "the watermark", "the logo in the bottom-right corner"). The endpoint returns a generation_id; poll GET /v1/image/{id} until status=completed, then download the cleaned image from output_url. See the Quick Start section above for code in 6 languages.
$0.0125 per image (12.5 credits × $0.001/credit). New accounts receive 5,000 free credits on a 7-day trial — no credit card required. That's enough for 400 watermark removal jobs before you pay anything.
Both modes are supported. Pass a text prompt describing the watermark and the API locates and removes it automatically. Or provide a binary mask image (white = area to erase) for pixel-precise control. The prompt-only path handles the majority of watermarks without any extra tooling.
Most images complete in 5–15 seconds end-to-end. There are no cold-start delays — capacity stays warm 24/7 so your first request is as fast as your thousandth. Bulk concurrent jobs are processed in parallel up to your plan's concurrency limit.
Yes. The same endpoint removes any overlaid element — watermarks, brand logos, copyright text, date/time stamps, social media handles, and semi-transparent credit overlays. Just describe what you want removed in the prompt parameter.
The API returns the cleaned image in the same format as the input — JPEG or PNG. The removed area is filled with realistic background content generated by the AI inpainting model, so the result looks natural rather than leaving a blank patch.
Yes — pip install pixelapi. Official SDKs are also available for Node.js (npm install pixelapi), PHP (Composer), Ruby (Gem), and Go (go get). All SDKs handle authentication, polling, retry-on-429, and binary file saving automatically.
20 requests/minute and 3 parallel jobs on the free trial. Starter: 60 req/min, 10 parallel. Pro: 120 req/min, 20 parallel. Scale: 300 req/min, 50 parallel. Higher limits are available for batch workloads — email support@pixelapi.dev with your expected volume.
Yes. Send concurrent requests up to your plan's parallel job limit (3–50). For thousands of images, collect generation IDs in a first pass, then poll for completion in a second pass. The Python SDK includes a batch_remove_object helper.
Every output passes through an automatic quality check layer. If the cleaned image would be corrupted or quality falls below threshold, the job is marked failed and credits are auto-refunded — you never pay for a broken result. For persistent watermarks, try supplying a mask alongside the prompt for more precise targeting.
Yes. PixelAPI is a registered Indian business. We issue GST invoices — 18% IGST for international clients, CGST/SGST for domestic. Invoice download is built into the dashboard under Billing.