Developer API

The HILIA API exposes covert watermarking for automation — mark every image in your publishing pipeline, or scan incoming images for your marks. It's a paid API keyed separately from the web tool.

Authentication

Create and manage keys at hilia.tyo.com.au/keys (sign-in required). Send the key on every request, either way:

Authorization: Bearer <your-api-key>

or

X-Api-Key: <your-api-key>

Keys can carry a monthly quota; the keys page shows usage as calls used / quota. A revoked or unknown key gets 401; a key over quota gets 429.

Endpoints

All endpoints are POST under https://hilia.tyo.com.au/api/v1/ and accept multipart/form-data.

EndpointPurposeFields
/api/v1/wm/embedEmbed a text IDimage, key, text (≤32 bytes), strength (optional)
/api/v1/wm/extractRecover the text IDimage, key
/api/v1/wm/detectCheck for a mark, with confidenceimage, key

The key field here is your watermark key (the secret the mark is locked to) — distinct from the API key that authenticates the call.

Example

curl -X POST https://hilia.tyo.com.au/api/v1/wm/embed \
  -H "Authorization: Bearer $HILIA_API_KEY" \
  -F "[email protected]" \
  -F "key=$WATERMARK_KEY" \
  -F "text=order-8841" \
  -o product-shot-marked.jpg

Then, later, confirm an image carries your mark:

curl -X POST https://hilia.tyo.com.au/api/v1/wm/detect \
  -H "Authorization: Bearer $HILIA_API_KEY" \
  -F "[email protected]" \
  -F "key=$WATERMARK_KEY"

Responses

  • Embed returns the marked image bytes (same content type as the input).
  • Extract and Detect return JSON — the embedded text, or presence plus a confidence score.
  • Errors: 401 invalid key · 429 quota exceeded · 4xx from the service for bad inputs (unsupported format, oversized upload).
Tip

Semantics of the operations — strength, survivability, Embed vs Detect — are the same as in the web tool: see Covert watermarking.