Real-time license plate recognition and management
| Plate | List | Color | Owner | Actions |
|---|---|---|---|---|
| Select a camera and search | ||||
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/webhook | List all webhooks |
| POST | /api/webhook | Add a webhook (body: name, url, headers, isEnabled) |
| DELETE | /api/webhook/{id} | Remove a webhook |
| POST | /api/webhook/{id}/test | Send a test payload to the webhook |
| GET | /api/webhook/{id}/status | Get delivery statistics |
When a camera captures a license plate, the system automatically sends a JSON POST request to every enabled webhook URL.
webhooks.jsonQuick Test: Go to https://webhook.site, copy your unique URL, add it above, then click Test.
{
"eventId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"timestamp": "2026-01-28T10:15:30",
"licensePlate": "VPT9399",
"plateColor": "blue",
"confidenceLevel": 95,
"direction": "forward",
"vehicleType": "car",
"vehicleColor": "white",
"cameraIp": "192.168.0.212",
"imageUrls": [
"/images/a1b2c3d4/plate.jpg",
"/images/a1b2c3d4/vehicle.jpg"
],
"raw": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"receivedAt": "2026-01-28T10:15:30",
"ipAddress": "192.168.0.212",
"macAddress": "aa:bb:cc:dd:ee:ff",
"channelId": "1",
"eventDateTime": "2026-01-28T10:15:29",
"eventType": "ANPR",
"licensePlate": "VPT9399",
"plateColor": "blue",
"confidenceLevel": 95,
"vehicleType": "car",
"vehicleColor": "white",
"direction": "forward",
"speed": 0,
"lane": "1",
"pictures": [
{
"fileName": "plate.jpg",
"type": "licensePlatePicture",
"savedPath": "/images/a1b2c3d4/plate.jpg",
"size": 45321
}
]
}
}
curl -X POST http://localhost:5100/api/webhook \
-H "Content-Type: application/json" \
-d '{"name":"My Webhook","url":"https://webhook.site/xxx","headers":{"Authorization":"Bearer token123"},"isEnabled":true}'
curl http://localhost:5100/api/webhook
curl -X POST http://localhost:5100/api/webhook/{id}/test
curl -X DELETE http://localhost:5100/api/webhook/{id}