Nodeflux Central
Tracking

API Reference — Tracking

Endpoint untuk Face Tracking (pelacakan pergerakan individu berdasarkan face_id) dan Plate Tracking (pelacakan kendaraan berdasarkan nomor plat LPR).

Semua endpoint memerlukan header Authorization: Bearer <token>. Basis URL mengikuti variabel lingkungan VITE_API_URL yang dikonfigurasi pada instalasi Lenz. Jika Anda belum punya Token, lihat halaman Otentikasi.


Face Tracking

Endpoint untuk mengambil seluruh riwayat deteksi wajah dari individu tertentu, lintas kamera, dalam rentang waktu yang ditentukan.

GET
/api/events/face-related

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Query Parameters

face_id*string

ID unik wajah individu yang ingin dilacak

timestamp_from?string

Batas awal rentang waktu pencarian (ISO 8601)

Formatdate-time
timestamp_to?string

Batas akhir rentang waktu pencarian (ISO 8601)

Formatdate-time
limit?integer

Jumlah maksimum event yang dikembalikan

Default20
timezone?string

Zona waktu untuk interpretasi timestamp (contoh: Asia/Jakarta)

disable_base64_image?boolean

Jika true, gambar dikembalikan sebagai URL (primary_image_url, secondary_image_url) bukan Base64 — menghemat ~99% ukuran payload

Defaultfalse
include_embeddings?boolean

Jika true, embedding vector disertakan dalam pipeline_data. Tidak diperlukan untuk tampilan UI biasa

Defaultfalse

Response Body

application/json

application/json

application/json

curl -X GET "https://lenz.example.com/api/events/face-related?face_id=abc123def456&timestamp_from=2025-04-01T00%3A00%3A00Z&timestamp_to=2025-04-30T23%3A59%3A59Z&limit=50&timezone=Asia%2FJakarta&disable_base64_image=true&include_embeddings=false"
{  "ok": true,  "message": "success",  "data": [    {      "id": 1001,      "analytic_id": "fr-analytic-01",      "stream_id": "stream-camera-lobby",      "stream_latitude": -6.2088,      "stream_longitude": 106.8456,      "primary_image_url": "https://lenz.example.com/images/primary/1001.jpg",      "secondary_image_url": "https://lenz.example.com/images/secondary/1001.jpg",      "label": "Budi Santoso",      "result": "abc123def456",      "location": "Lobby Utama",      "status": "KNOWN",      "logic": "MATCH",      "timestamp": "2025-04-15T08:23:11Z",      "confidence": 92,      "location_image": "https://lenz.example.com/images/location/1001.jpg",      "node_num": 1,      "instance": "instance-jakarta",      "pipeline_event_id": "evt-9876"    }  ]}
{  "ok": false,  "message": "face_id is required"}
{  "ok": false,  "message": "unauthorized"}

Plate Tracking

Dua endpoint bekerja secara berurutan: pertama cari nomor plat dengan wildcard, lalu ambil detail riwayat pergerakan kendaraan tersebut.

Alur tipikal Plate Tracking: panggil GET /api/events/search/plates dengan parameter q untuk menemukan plat yang cocok, kemudian gunakan plate_number dari hasil tersebut sebagai input untuk GET /api/events/plate-related.

GET
/api/events/search/plates

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Query Parameters

q?string

Kata kunci pencarian nomor plat. Mendukung wildcard (misalnya B 12*)

timestamp_from*string

Batas awal rentang waktu pencarian (ISO 8601)

Formatdate-time
timestamp_to*string

Batas akhir rentang waktu pencarian (ISO 8601)

Formatdate-time
limit?integer

Jumlah maksimum plat unik yang dikembalikan (default 20, maksimum 100)

Default20
Rangevalue <= 100
timezone?string

Zona waktu untuk interpretasi timestamp (contoh: Asia/Jakarta)

Response Body

application/json

application/json

application/json

curl -X GET "https://lenz.example.com/api/events/search/plates?q=B+1234&timestamp_from=2025-04-01T00%3A00%3A00Z&timestamp_to=2025-04-30T23%3A59%3A59Z&limit=20&timezone=Asia%2FJakarta"
{  "ok": true,  "message": "success",  "data": [    {      "plate_number": "B 1234 XYZ",      "first_seen": "2025-04-10T07:15:00Z",      "last_seen": "2025-04-15T18:42:00Z",      "detection_count": 7    },    {      "plate_number": "B 1234 ABC",      "first_seen": "2025-04-12T09:00:00Z",      "last_seen": "2025-04-12T09:00:00Z",      "detection_count": 1    }  ]}
{  "ok": false,  "message": "timestamp_from is required"}
{  "ok": false,  "message": "unauthorized"}
GET
/api/events/plate-related

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Query Parameters

plate_number*string

Nomor plat kendaraan yang ingin dilacak

timestamp_from*string

Batas awal rentang waktu pencarian (ISO 8601)

Formatdate-time
timestamp_to*string

Batas akhir rentang waktu pencarian (ISO 8601)

Formatdate-time
limit?integer

Jumlah maksimum event yang dikembalikan

Default10
timezone?string

Zona waktu untuk interpretasi timestamp (contoh: Asia/Jakarta)

disable_base64_image?boolean

Jika true (default), gambar dikembalikan sebagai URL bukan Base64 — menghemat ~99% ukuran payload

Defaulttrue

Response Body

application/json

application/json

application/json

curl -X GET "https://lenz.example.com/api/events/plate-related?plate_number=B+1234+XYZ&timestamp_from=2025-04-01T00%3A00%3A00Z&timestamp_to=2025-04-30T23%3A59%3A59Z&limit=10&timezone=Asia%2FJakarta&disable_base64_image=true"
{  "ok": true,  "message": "success",  "data": [    {      "id": 2001,      "analytic_id": "lpr-analytic-01",      "stream_id": "stream-camera-gerbang",      "stream_latitude": -6.2088,      "stream_longitude": 106.8456,      "primary_image_url": "https://lenz.example.com/images/primary/2001.jpg",      "secondary_image_url": "https://lenz.example.com/images/secondary/2001.jpg",      "label": "Kendaraan Dinas",      "result": "B 1234 XYZ",      "plate_number": "B 1234 XYZ",      "location": "Gerbang Utama",      "logic": "LPR",      "timestamp": "2025-04-15T09:10:05Z",      "confidence": 0.97,      "location_image": "https://lenz.example.com/images/location/2001.jpg",      "node_num": 2,      "instance": "instance-jakarta",      "pipeline_event_id": "evt-lpr-5432"    }  ]}
{  "ok": false,  "message": "plate_number is required"}
{  "ok": false,  "message": "unauthorized"}

On this page