Add Image Watermark

0calls
5 credits / call

Add an invisible watermark to an image. You give it a picture and a marker to write in, and it hides that marker in the image's pixels — nothing changes to the eye, but even after the image is resized, recompressed, or passed around between platforms, you can still read the marker back with the read endpoint.

Overview

The watermark survives common resizing, compression, and re-encoding, so it usually stays intact after the image is shared to other platforms or re-saved. It's a good fit for marking where an image came from, tracking distribution channels, or leaving a proof of ownership without altering how the image looks.

Request body

Image source and watermark parameters. Provide one of file / url / image_base64; payload is required. Both multipart/form-data and application/json are supported.

file
fileoptional

The image file to watermark. PNG and JPEG are supported.

url
stringoptional

An image link that's publicly reachable.

image_base64
stringoptional

The image as Base64; the data: prefix is optional.

payload
stringrequired

The marker to write into the image; what goes in is up to you.

out_format
stringoptional

Output image format. Leave empty to match the input.

jpeg_quality
integeroptional

Image quality for JPEG output, 1 to 100.

ecc
stringoptional

Error-correction level. Advanced; leave empty to use the default.

model_type
stringoptional

Watermark profile. Advanced — trades robustness against quality; leave empty to use the default.

strength
numberoptional

Watermark strength. Advanced; leave empty to use the default.

Response

200 / OK

Embedded successfully; returns the watermarked image (Base64).

JSON

400 / Bad Request

Bad request, e.g. missing image source or missing payload.

JSON

413 /

Image too large, exceeding the server limit.

JSON

503 / Service Unavailable

The watermark service is temporarily unavailable.

JSON