Overview
The REST API uses HTTPS and JSON responses. Image uploads use multipart/form-data.
Each successful paid removal uses one credit from the same balance shown on the website. Result URLs are private signed links that expire after one hour.
Base URL
https://aiwatermarkremover.com/v1
Maximum file
5 MB
Formats
PNG, JPG, WebP, HEIC
API keys
Send your key in the Authorization header. Keep it server-side and never commit it to source control or expose it in browser code.
Sign in to create and manage API keys.
Sign in with GoogleAuthorization: Bearer aiwm_live_your_api_key
Quickstart
The rights confirmation is required on every request. The request remains open while the model processes the image, so use a client timeout of at least 120 seconds.
curl --request POST 'https://aiwatermarkremover.com/v1/remove-watermark' \
--header 'Authorization: Bearer aiwm_live_your_api_key' \
--form 'image=@./photo.jpg' \
--form 'rights_confirmed=true'
import { openAsBlob } from 'node:fs';
const form = new FormData();
form.set('image', await openAsBlob('./photo.jpg'));
form.set('rights_confirmed', 'true');
const response = await fetch('https://aiwatermarkremover.com/v1/remove-watermark', {
method: 'POST',
headers: { Authorization: `Bearer ${process.env.AIWM_API_KEY}` },
body: form,
signal: AbortSignal.timeout(120_000),
});
const result = await response.json();
/v1/remove-watermark
Removes an authorized watermark, text overlay, logo, stamp, or sticker from one image.
| Field | Type | Required | Description |
|---|---|---|---|
| image | binary | Yes | PNG, JPG, WebP, or HEIC up to 5MB. |
| rights_confirmed | boolean | Yes | Must be true when you own or have permission to edit the image. |
Account
GET/v1/me returns the authenticated account, balance, and subscription state.
Successful response
{
"data": {
"processedUrl": "https://...signed-result-url...",
"processedUrlExpiresIn": 3600,
"credits": 42,
"creditsDeducted": true,
"weeklyUsageCount": 18,
"remainingWeeklyUses": 282,
"weeklyLimit": 300
}
}
Errors
| Status | Code | Meaning |
|---|---|---|
| 400 | rights_confirmation_required | Permission was not confirmed. |
| 401 | invalid_api_key | The key is missing, invalid, or revoked. |
| 402 | insufficient_credits | No free use or paid credits remain. |
| 413 | image_too_large | The upload exceeds 5MB. |
| 429 | weekly_limit_exceeded | The account reached 300 weekly generations. |
| 500 | internal_error | The request could not be completed. |
Remote MCP server
Add the URL below in Claude under Settings → Connectors → Add custom connector. Claude will open a secure OAuth window so you can sign in and approve access.
https://aiwatermarkremover.com/mcp
get_account
Reads credits and weekly usage without changing anything.
remove_watermark
Processes one authorized image and may consume one credit.
Acceptable use
Only process images you own or have explicit permission to modify. Removing ownership marks or copyright notices without authorization is prohibited. See the Acceptable Use Policy and Privacy Policy.