Nodeflux Central
Plate Search

API Reference — Plate Search

Endpoint untuk mencari plat nomor kendaraan melalui event LPR dan integrasi data Korlantas/Polri.

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.


Pencarian Plat via Event LPR

Dua endpoint berikut bekerja pada data event License Plate Recognition (LPR) yang tersimpan di sistem Lenz — tidak bergantung pada layanan eksternal Polri.

Cari Plat Nomor (Agregasi)

Mencari plat nomor dalam riwayat event dan mengembalikan hasil yang dikelompokkan per plat (plate_number, first_seen, last_seen, detection_count). Mendukung wildcard * pada parameter q.

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"}

Riwayat Event per Plat Nomor

Mengambil daftar event LPR lengkap untuk satu nomor plat tertentu. Hasil melalui deduplikasi berbasis bucket 10 menit per stream. Gunakan disable_base64_image=true untuk mengurangi ukuran payload ~99%.

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"}

Lookup Kendaraan via Korlantas

Endpoint berikut meneruskan permintaan ke layanan Korlantas/Polri untuk mengambil data STNK dan data kependudukan pemilik dari Dukcapil.

Endpoint ini memerlukan izin RBAC plate_search pada role pengguna dan fitur PLATE_INVESTIGATION_ENABLED diaktifkan melalui Preferences → Feature. Hubungi administrator jika Anda mendapat respons 403 Forbidden.

POST
/api/gateway/v1/util/no-pol-korlantas

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://lenz.example.com/api/gateway/v1/util/no-pol-korlantas" \  -H "Content-Type: application/json" \  -d '{    "no_pol": "B 1234 XYZ",    "admin_id": "operator@example.com"  }'
[  {    "STATUS": "AKTIF",    "Merk": "TOYOTA",    "Type": "AVANZA 1.3 G M/T",    "TahunPembuatan": "2020",    "IsiCylinder": "1329",    "Warna": "PUTIH",    "JenisKendaraan": "MOBIL PENUMPANG",    "ModelKendaraan": "MINIBUS",    "KabKota": "JAKARTA SELATAN",    "Polda": "METRO JAYA",    "WarnaTNKB": "HITAM",    "NIK": "3174012345678901",    "NAMA_LGKP": "BUDI SANTOSO",    "TMPT_LHR": "JAKARTA",    "TGL_LHR": "15-06-1985",    "ALAMAT": "JL. SUDIRMAN NO. 1",    "PROP_NAME": "DKI JAKARTA",    "KAB_NAME": "JAKARTA SELATAN",    "KEC_NAME": "KEBAYORAN BARU",    "KEL_NAME": "SENAYAN",    "JENIS_KLMIN": "LAKI-LAKI",    "GOL_DARAH": "O",    "AGAMA": "ISLAM",    "STATUS_KAWIN": "KAWIN",    "JENIS_PKRJN": "SWASTA",    "PDDK_AKH": "S1",    "FOTO": "<base64-encoded-image>"  }]
{  "ok": false,  "message": "invalid request"}
{  "ok": false,  "message": "invalid request"}
{  "ok": false,  "message": "invalid request"}
{  "ok": false,  "message": "invalid request"}

On this page