Vehicore
Reference

Anonymization

Blur license plates and/or faces in images.

How it works: You send an image (multipart) and your X-API-Key; the service blurs license plates and/or faces and returns the anonymized image or metadata.

VehiCore provides image anonymization endpoints to protect privacy by blurring:

  • License plates
  • Faces
  • Both in one pass

All endpoints require X-API-Key and accept multipart/form-data with an image file. To get a key, register and purchase at vehicore.pro/api-keys.


Response modes

By default, anonymization endpoints return multipart/mixed (metadata + image). For simpler integrations, choose a response mode:

  • response=json — return JSON metadata only
  • response=image — return anonymized image only (image/*)
  • response=mixed — metadata + image in one multipart/mixed response (default)

Optional tuning parameters:

  • padding — override padding ratio (typical range: 0.10..0.30)
  • shrink — override shrink ratio (typical range: 0..0.40)
  • blur — override blur sigma (typical range: 1..80)

Anonymize license plates

POST /api/anonymize

Request

Headers

FieldTypeRequiredDescription
X-API-KeystringYesYour API key.

Body (multipart/form-data)

FieldTypeRequiredDescription
imagefileYesInput image.

Example request

curl -X POST "https://api.vehicore.pro/api/anonymize?response=json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "image=@/path/to/image.jpg"
curl -X POST "https://api.vehicore.pro/api/anonymize?response=image" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "image=@/path/to/image.jpg" \
  --output anonymized.jpg
import fs from 'node:fs';

const formData = new FormData();
const buf = fs.readFileSync('/path/to/image.jpg');
formData.append('image', new Blob([buf], { type: 'image/jpeg' }), 'image.jpg');

const response = await fetch('https://api.vehicore.pro/api/anonymize?response=json', {
  method: 'POST',
  headers: { 'X-API-Key': process.env.VEHICORE_API_KEY },
  body: formData,
});

const data = await response.json();

Anonymize faces

POST /api/anonymize/face

Same request/response behavior as plate anonymization, but targets faces.

Example:

curl -X POST "https://api.vehicore.pro/api/anonymize/face?response=image" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "image=@/path/to/image.jpg" \
  --output anonymized-face.jpg

Anonymize plates + faces (one pass)

POST /api/anonymize/all

Example:

curl -X POST "https://api.vehicore.pro/api/anonymize/all?response=image" \
  -H "X-API-Key: YOUR_API_KEY" \
  -F "image=@/path/to/image.jpg" \
  --output anonymized-all.jpg

How this relates to claims (“claim anonymization”)

When you call Claim Standardization (POST /api/claim/standardize), the pipeline can run anonymization as the first step:

  • faces + plates are anonymized (when steps includes anonymize)
  • the anonymized photos are used for downstream OCR/damage/structuring steps

See the Claim Standardization reference page for the steps parameter and examples.


Possible errors

All error responses use the shape { "message": "Human-readable text", "code": "OPTIONAL_CODE" }. See Error responses for details.

StatusCodeDescription
400VALIDATION_ERRORBad Request — invalid or missing image, or invalid parameters.
401UNAUTHORIZEDUnauthorized — missing or invalid X-API-Key.
402INSUFFICIENT_CREDITSPayment Required — insufficient credits. Purchase more from Billing.
415Unsupported Media Type — input is not a supported image.
503Service Unavailable — anonymization models not configured.

On this page