FEATUREmark-*Same credit cost as the host endpoint (Transform / Grid) · no extra charge
// PRODUCT · MARK

Mark.

One overlay engine. Eight parameters. Same on /transform and /grid — opacity, fit, alignment, tiling and percentage-based sizing.

quick start
# Brand a hero · bottom-right · 120px mark · 16px pad
curl 'https://demo.imgapis.com/unsplash/photo-1506905925346-21bda4d32df4?\
w=1200&mark=https%3A%2F%2Fdash.imgapis.com%2Fimages%2Ficon.png\
&mark-w=120&mark-align=center&mark-pad=16'
Live preview of Mark
Live preview · streamed from demo.imgapis.com
// LIVE SAMPLES

One engine. Many placements.

Same mark engine applied at different scales, alignments, opacities. The mark URL is fixed; everything else is a query param.

// NOTE

Per-source marks, locked in.

Opt in to per-source watermarking: bind a mark preset (your logo, signature, or stamp) to specific source keys via autoApplySources, and every transform from those sources ships with the mark applied automatically. Callers can’t turn it off, swap it, or override it from the URL — the ?mark= parameter is silently ignored once a source has an auto-apply binding, so the brand follows the asset, not the request. See Security for the full auto-apply policy.
Bottom-right · 120px mark · 16px pad
Bottom-right · 120px mark · 16px pad
mark=dash.imgapis.com/images/icon.png
w=800mark-w=120mark-align=bottom,rightmark-pad=16
Tiled across both axes · 15% opacity
Tiled across both axes · 15% opacity
mark=dash.imgapis.com/images/icon.png
w=800mark-w=80mark-repeat=truemark-opacity=0.15
Top-left · 80% opacity · 24px pad
Top-left · 80% opacity · 24px pad
mark=dash.imgapis.com/images/icon.png
w=800mark-w=140mark-align=top,leftmark-pad=24mark-opacity=0.8
// PARAMETERS

Every mark-* param.

Eight mark-* params. Same engine on /transform and /grid — set once, apply everywhere.

// parameters9fields
markOptional
stringType
Default

Mark image URL. Triggers overlay when present.

mark-wOptional
string-or-percentType
15%Default

Mark width. Pixels (e.g. 100) or percentage of source width (e.g. 50%).

mark-hOptional
string-or-percentType
Default

Mark height. Pixels or percentage of source height. Aspect ratio is preserved from mark-w when omitted.

mark-sizeOptional
string-or-percentType
Default

Shortcut that sets both mark-w and mark-h. Explicit mark-w/mark-h override.

mark-fitOptional
enumType
containDefault

How the mark fits into mark-w × mark-h.

containcovercroppadscale-downsqueeze
mark-alignOptional
csvType
top,leftDefault

Comma-separated anchor: one horizontal token (left/right) plus one vertical token (top/bottom).

bottomleftrighttop
mark-padOptional
string-or-percentType
2%Default

Offset from the aligned edge(s). Pixels or percentage of the smaller source dimension.

mark-opacityOptional
number (0–1)Type
1Default

Mark opacity (0 = transparent, 1 = opaque).

mark-repeatOptional
enumType
Default

Tile the mark across the canvas. true = both axes, x = horizontal only, y = vertical only.

truexy
// COOL USAGES

Branding without a build step.

// 01

Brand every free-tier upload

Auto-apply your mark to free-tier outputs via autoApplySources — the URL parameter is ignored and callers cannot strip it. Branding follows the asset, not the customer.

// 02

Attribution on third-party sources

Configure per-source marks for licensed photography providers. Every image from a given source ships with the right attribution overlay — no manual review.

// 03

Diagonal tile to discourage scraping

mark-repeat=true&mark-opacity=0.15 tiles the mark across the canvas at low opacity. Preview-only galleries are unattractive to scrape, comfortable to browse.

// 04

White-label per customer

Register a mark preset per workspace; reference it by name. Same image URL, different brand per customer — perfect for agencies and white-label platforms.