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 onlyresponse=image— return anonymized image only (image/*)response=mixed— metadata + image in onemultipart/mixedresponse (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
| Field | Type | Required | Description |
|---|---|---|---|
X-API-Key | string | Yes | Your API key. |
Body (multipart/form-data)
| Field | Type | Required | Description |
|---|---|---|---|
image | file | Yes | Input 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.jpgimport 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.jpgAnonymize 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.jpgHow 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
stepsincludesanonymize) - 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.
| Status | Code | Description |
|---|---|---|
| 400 | VALIDATION_ERROR | Bad Request — invalid or missing image, or invalid parameters. |
| 401 | UNAUTHORIZED | Unauthorized — missing or invalid X-API-Key. |
| 402 | INSUFFICIENT_CREDITS | Payment Required — insufficient credits. Purchase more from Billing. |
| 415 | — | Unsupported Media Type — input is not a supported image. |
| 503 | — | Service Unavailable — anonymization models not configured. |