API Reference — Statistics
Endpoint untuk mengambil data metrik agregat per domain analitik — Face Recognition, People Analytics, Vehicle Analytics, Crowd Estimation, dan LPR.
← Kembali ke Statistics
Panduan operator: filter analitik, rentang waktu, stream, dan ekspor PDF.
Otentikasi
Cara memperoleh dan menggunakan Bearer token JWT.
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.
Pola Umum
Seluruh endpoint Statistics berbagi pola yang konsisten:
- Prefix:
GET /api/statistics/{sub-path} - Parameter wajib:
stream_id,start_date,end_date - Parameter opsional:
analytic_id(untuk FR/FRA/LPR),instance(mode Federation) - 404 dikembalikan bila tidak ada data untuk kombinasi stream + rentang tanggal yang diminta — bukan error, cukup tampilkan "Data tidak tersedia"
stream_id mendukung beberapa stream sekaligus dengan memisahkan ID menggunakan koma: stream-abc,stream-def. Response akan berisi agregasi dari seluruh stream yang diminta.
Face Recognition
FR — Face Recognition Dasar
Statistik pengenalan wajah tanpa atribut demografis. Cocok untuk analitik NFV4-FR.
Statistik Face Recognition (FR)
Authorization
bearerAuth In: header
Query Parameters
ID stream, pisahkan dengan koma untuk beberapa stream
Tanggal mulai (YYYY-MM-DD)
dateTanggal akhir (YYYY-MM-DD)
dateID instance pada mode Federation
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/fr?stream_id=stream-abc123%2Cstream-def456&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-07", "summary": { "known": 480, "unknown": 120, "total": 600, "total_detections": 850, "known_percentage": 80, "unknown_percentage": 20 }, "time_series_data": [ { "time_label": "09:00", "event_time": "2025-04-01T09:00:00+07:00", "known": 50, "unknown": 10, "total": 60, "total_detections": 80, "percent_of_total": 12.5, "change_from_previous": 5 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5, "known": 200, "unknown": 50, "total": 250, "total_detections": 320 } ], "peak_time_info": { "peak_time": "14:00", "peak_count": 132, "lowest_time": "03:00", "lowest_count": 2 }, "trends": { "overall_trend": "increasing", "average_per_interval": 45.3, "peak_to_average_ratio": 2.9 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}FRA — Face Recognition Analytics
Statistik pengenalan wajah dengan atribut demografis: jenis kelamin, usia, masker, kacamata, dan penutup kepala. Gunakan parameter analytic_id untuk membedakan varian FRA (NFV4-FRA, NFV4H-WZMND-FR, NFV4H-MOBLE-FR).
Statistik Face Recognition Analytics (FRA)
Authorization
bearerAuth In: header
Query Parameters
ID stream, pisahkan dengan koma untuk beberapa stream
datedateFilter berdasarkan tipe analitik, contoh: NFV4-FRA, NFV4H-WZMND-FR, NFV4H-MOBLE-FR
ID instance pada mode Federation
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/fra?stream_id=stream-abc123&start_date=2025-04-01&end_date=2025-04-30&analytic_id=NFV4-FRA"{ "message": "success", "data": { "time_range": "daily", "start_date": "2025-04-01", "end_date": "2025-04-30", "summary": { "known": 480, "unknown": 120, "total": 600, "total_detections": 850, "known_percentage": 80, "unknown_percentage": 20, "demographics": { "male_count": 300, "female_count": 180, "adult_count": 420, "child_count": 60, "mask_count": 45, "no_mask_count": 435, "glasses_count": 120, "no_glasses_count": 360, "head_covering_count": 30, "no_head_covering_count": 450, "male_percentage": 62.5, "female_percentage": 37.5, "adult_percentage": 87.5, "child_percentage": 12.5, "mask_percentage": 9.4, "no_mask_percentage": 90.6, "glasses_percentage": 25, "no_glasses_percentage": 75, "head_covering_percentage": 6.25 } }, "time_series_data": [ { "time_label": "09:00", "event_time": "2025-04-01T09:00:00+07:00", "known": 50, "unknown": 10, "total": 60, "total_detections": 80, "percent_of_total": 12.5, "change_from_previous": 5, "male_count": 30, "female_count": 20, "adult_count": 45, "child_count": 5, "mask_count": 3, "no_mask_count": 47, "glasses_count": 12, "no_glasses_count": 38, "head_covering_count": 2, "no_head_covering_count": 48 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5, "known": 200, "unknown": 50, "total": 250, "total_detections": 320 } ], "peak_time_info": { "peak_time": "14:00", "peak_count": 132, "lowest_time": "03:00", "lowest_count": 2 }, "trends": { "overall_trend": "increasing", "average_per_interval": 45.3, "peak_to_average_ratio": 2.9 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}License Plate Recognition
LPR2 — License Plate Recognition v2
Statistik pengenalan plat nomor kendaraan: volume plat dikenal/tidak dikenal, distribusi tipe kendaraan (car, motorcycle, truck), dan tren per interval. Mendukung filter analytic_id untuk membedakan LPR2 dan LPR3.
Statistik License Plate Recognition v2 (LPR2)
Authorization
bearerAuth In: header
Query Parameters
ID stream, pisahkan dengan koma untuk beberapa stream
datedateFilter tipe analitik LPR, contoh: NFV4-LPR2, NFV4-LPR3
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/lpr2?stream_id=stream-gate01%2Cstream-gate02&start_date=2025-04-01&end_date=2025-04-07&analytic_id=NFV4-LPR2"{ "ok": true, "message": "success", "data": { "time_range": "daily", "start_date": "2025-04-01", "end_date": "2025-04-07", "summary": { "total": 750, "known_plates": 500, "unknown_plates": 250, "known_percentage": 66.7, "unknown_percentage": 33.3, "vehicle_types": { "car": 400, "motorcycle": 250, "truck": 100 }, "vehicle_type_percentage": { "car": 53.3, "motorcycle": 33.3, "truck": 13.3 } }, "time_series_data": [ { "time_label": "2025-04-01", "event_time": "2019-08-24T14:15:22Z", "total": 120, "known_plates": 80, "unknown_plates": 40, "vehicle_types": { "car": 70, "motorcycle": 40, "truck": 10 }, "vehicle_type_percentage": { "car": 58.3, "motorcycle": 33.3, "truck": 8.3 }, "percent_of_total": 16, "change_from_previous": 8.5 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5, "total": 300, "known_plates": 200, "unknown_plates": 100 } ], "peak_time_info": { "peak_time": "14:00", "peak_count": 132, "lowest_time": "03:00", "lowest_count": 2 }, "trends": { "overall_trend": "stable", "average_per_interval": 107.1, "peak_to_average_ratio": 1.7 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Crowd Estimation
CE — Crowd Estimation
Statistik estimasi jumlah kerumunan: total event estimasi, rata-rata dan puncak kerumunan, distribusi per area, dan analisis periode tersibuk/tersepi.
Statistik Crowd Estimation (CE)
Authorization
bearerAuth In: header
Query Parameters
ID stream, pisahkan dengan koma untuk beberapa stream
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/ce?stream_id=stream-plaza01&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "summary": { "total_events": 2400, "average_estimation": 45.2, "peak_estimation": 120, "lowest_estimation": 5, "latest_estimation": 38, "total_areas_monitored": 3 }, "time_series_data": [ { "time_interval": "09:00", "data": { "total_events": 60, "average_estimation": 50, "peak_estimation": 80, "lowest_estimation": 10, "area_breakdown": [ { "area": "Area A", "average_estimation": 22.4, "peak_estimation": 60, "event_count": 800 } ] }, "percent_of_total": 2.5, "change_from_previous": 10 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5, "total_events": 800, "average_estimation": 42, "peak_estimation": 110, "areas": [ { "area": "Area A", "average_estimation": 20, "peak_estimation": 55, "latest_estimation": 18, "event_count": 400 } ] } ], "area_distribution": [ { "area": "Area A", "total_events": 1200, "average_estimation": 40, "peak_estimation": 100, "latest_estimation": 35, "streams_count": 2, "percent_of_total": 50 } ], "peak_time_info": { "peak_period": "12:00", "peak_estimation": 120, "peak_location": "Gedung A", "peak_area": "Area B", "average_during_peak": 95, "events_during_peak": 180 }, "trends": { "overall_trend": "stable", "trend_percentage": 2.5, "busiest_periods": [ { "period": "12:00-14:00", "average_estimation": 90, "description": "Jam makan siang" } ], "quietest_periods": [ { "period": "12:00-14:00", "average_estimation": 90, "description": "Jam makan siang" } ] }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}People Analytics
Tiga mode analisis tersedia: Counting (lalu lintas masuk/keluar), Dwelling (durasi tinggal), dan Density (kepadatan area). Tersedia untuk MPA (dasar) dan MPAA (dengan atribut demografis).
MPA — People Analytics Dasar
Statistik People Analytics — Counting (MPA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpa/counting?stream_id=stream-entry01&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "summary": { "in": 350, "out": 310, "total": 660, "net_flow": 40, "in_percentage": 53, "out_percentage": 47 }, "time_series_data": [ { "time_interval": "09:00", "person": { "in": 350, "out": 310, "total": 660, "net_flow": 40, "in_percentage": 53, "out_percentage": 47 }, "percent_of_total": 8.3, "change_from_previous": 5 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5, "total_count": 300, "directional_data": { "in": 350, "out": 310, "total": 660, "net_flow": 40, "in_percentage": 53, "out_percentage": 47 }, "peak_time_interval": "12:00", "peak_count": 45, "busiest_periods": [ "12:00", "17:00" ] } ], "peak_time_info": { "peak_time_interval": "12:00", "peak_traffic": { "in": 350, "out": 310, "total": 660, "net_flow": 40, "in_percentage": 53, "out_percentage": 47 }, "top_busy_periods": [ { "time_interval": "string", "count": 0 } ], "least_busy_periods": [ { "time_interval": "string", "count": 0 } ] }, "trends": { "average_traffic_per_interval": 55, "traffic_distribution": [ { "time_period": "string", "count": 0, "percentage": 0 } ], "directional_trend": { "dominant_direction": "in", "directional_ratio": 1.13 } }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik People Analytics — Dwelling (MPA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpa/dwelling?stream_id=stream-lobby01&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "summary": { "count": 420, "average_dwell_time": 185.5, "min_dwell_time": 10, "max_dwell_time": 900, "median_dwell_time": 120, "most_common_dwell_time": 60 }, "time_series_data": [ { "time_interval": "09:00", "count": 35, "average_dwell_time": 200, "median_dwell_time": 130, "most_common_dwell_time": 60, "min_dwell_time": 15, "max_dwell_time": 750, "change_from_previous": -5, "area_data": { "Area A": { "count": 20, "average_dwell_time": 180, "median_dwell_time": 120, "most_common_dwell_time": 60, "min_dwell_time": 15, "max_dwell_time": 750 } } } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_time_info": { "peak_time_interval": "12:00", "peak_count": 60, "peak_average_dwell_time": 250, "peak_median_dwell_time": 180, "top_busy_periods": [ {} ], "least_busy_periods": [ {} ] }, "trends": { "average_people_per_interval": 35, "average_dwell_time": 185.5, "min_dwell_time": 10, "max_dwell_time": 900, "median_dwell_time": 120, "most_common_dwell_time": 60, "occupancy_rate": 72.5, "long_stay_frequency": 15.2 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik People Analytics — Density (MPA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpa/density?stream_id=stream-hall01&start_date=2025-04-01&end_date=2025-04-01"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-01", "summary": { "count": 480, "average_density": 4.2 }, "time_series_data": [ { "time_interval": "09:00", "count": 40, "average_density": 4.5, "area_data": { "property1": { "count": 0, "average_density": 0 }, "property2": { "count": 0, "average_density": 0 } }, "percent_of_total": 8.3, "change_from_previous": 2 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_time_info": { "peak_time_interval": "12:00", "peak_count": 72, "peak_area": "Area B", "peak_percentage": 45, "off_peak_average": 3.2, "peak_to_off_peak_ratio": 2.25 }, "trends": { "low_density": 120, "medium_density": 200, "high_density": 160, "low_density_percent": 25, "medium_density_percent": 41.7, "high_density_percent": 33.3 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}MPAA — People Analytics Attributes
Versi MPA dengan distribusi atribut demografis penuh: jenis kelamin, usia, masker, kacamata, penutup kepala, warna pakaian atas dan bawah. Endpoint Dwelling juga mencakup analisis zona konversi (entered/looker/passerby).
Statistik People Analytics Attributes — Counting (MPAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpaa/counting?stream_id=stream-entrance01&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "summary": { "total": 580, "in": { "count": 310, "percentage": 53.4 }, "out": { "count": 270, "percentage": 46.6 }, "net_flow": 40, "combined_attributes": { "gender": { "male": 320, "female": 260 }, "age": { "adult": 520, "child": 60 }, "mask": { "mask": 45, "no_mask": 535 } } }, "time_series_data": [ {} ], "stream_distribution": [ {} ], "peak_time_info": {}, "trends": {}, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik People Analytics Attributes — Dwelling (MPAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpaa/dwelling?stream_id=stream-store01&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik People Analytics Attributes — Density (MPAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mpaa/density?stream_id=stream-concourse01&start_date=2025-04-01&end_date=2025-04-01"{ "ok": true, "message": "success"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Vehicle Analytics
Tiga mode analisis kendaraan: Counting (lalu lintas kendaraan masuk/keluar), Dwelling (durasi parkir), dan Density (kepadatan kendaraan). Tersedia pula Speed untuk analitik kecepatan. MVA adalah analitik dasar, MVAA menambahkan atribut tipe, warna, dan merek kendaraan.
MVA — Vehicle Analytics Dasar
Statistik Vehicle Analytics — Counting (MVA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mva/counting?stream_id=stream-gate-main&start_date=2025-04-01&end_date=2025-04-07"{ "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-01", "summary": { "in": { "count": 250, "percentage": 52.1 }, "out": { "count": 230, "percentage": 47.9 }, "total": 480, "net_flow": 20 }, "time_series_data": [ { "time_interval": "09:00", "vehicle": { "in": { "count": 0, "percentage": 0 }, "out": { "count": 0, "percentage": 0 }, "total": 0, "net_flow": 0, "in_percentage": 0, "out_percentage": 0 }, "percent_of_total": 8.3, "change_from_previous": 3.5 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_time_info": { "peak_time_interval": "08:00", "top_busy_periods": [ { "time_interval": "string", "count": 0 } ], "least_busy_periods": [ { "time_interval": "string", "count": 0 } ] }, "trends": { "average_traffic_per_interval": 40, "directional_trend": { "net_flow_trend": "positive", "dominant_direction": "in", "directional_ratio": 1.09 } }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik Vehicle Analytics — Dwelling (MVA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mva/dwelling?stream_id=stream-parking01&start_date=2025-04-01&end_date=2025-04-07"{ "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-01", "summary": { "count": 360, "average_dwell_time": 240, "min_dwell_time": 20, "max_dwell_time": 1800, "median_dwell_time": 180, "most_common_dwell_time": 120 }, "time_series_data": [ {} ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_time_info": { "peak_time_interval": "10:00", "peak_count": 55, "peak_average_dwell_time": 320, "top_busy_periods": [ {} ], "least_busy_periods": [ {} ] }, "trends": { "average_vehicles_per_interval": 30, "average_dwell_time": 240, "occupancy_rate": 68, "long_stay_frequency": 22.5 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik Vehicle Analytics — Density (MVA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mva/density?stream_id=stream-road01&start_date=2025-04-01&end_date=2025-04-01"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-01", "summary": { "count": 520, "vehicle_type_distribution": { "car": 300, "motorcycle": 150, "truck": 70 } }, "time_series": [ {} ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_info": { "peak_time_interval": "08:00", "peak_count": 80, "peak_area": "Gerbang Utama", "peak_vehicle_type": "car" }, "trends": { "low_density": 80, "medium_density": 180, "high_density": 260, "low_density_percent": 15.4, "medium_density_percent": 34.6, "high_density_percent": 50 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}MVAS — Vehicle Analytics Speed
Statistik kecepatan kendaraan: rata-rata, minimum, maksimum, dan distribusi kategori kecepatan (slow/medium/fast/very_fast).
Statistik Vehicle Analytics — Speed (MVAS)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mva/speed?stream_id=stream-highway01&start_date=2025-04-01&end_date=2025-04-01"{ "ok": true, "message": "success", "data": { "time_range": "hourly", "start_date": "2025-04-01", "end_date": "2025-04-01", "summary": { "total_count": 540, "avg_speed": 42.5, "min_speed": 5, "max_speed": 120, "speed_distribution": { "slow": { "count": 80, "label": "< 20 km/j", "percentage": 14.8 }, "medium": { "count": 200, "label": "20-60 km/j", "percentage": 37 }, "fast": { "count": 180, "label": "60-100 km/j", "percentage": 33.3 }, "very_fast": { "count": 80, "label": "> 100 km/j", "percentage": 14.8 } } }, "time_series_data": [ { "time_interval": "09:00", "count": 45, "avg_speed": 44, "min_speed": 8, "max_speed": 105 } ], "stream_distribution": [ { "stream_id": "stream-abc123", "stream_name": "Lobby Utama", "location": "Gedung A", "percent_of_total": 38.5 } ], "peak_time_info": { "peak_time_interval": "07:00", "peak_count": 85, "peak_avg_speed": 38.2, "top_busy_periods": [ {} ], "least_busy_periods": [ {} ] }, "trends": { "average_events_per_interval": 45, "overall_avg_speed": 42.5 }, "timestamp": "2019-08-24T14:15:22Z" }}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}MVAA — Vehicle Analytics Attributes
Versi MVA dengan distribusi atribut kendaraan lengkap: tipe (car, motorcycle, truck, bus), warna, dan merek.
Statistik Vehicle Analytics Attributes — Counting (MVAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mvaa/counting?stream_id=stream-gate-vip&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik Vehicle Analytics Attributes — Dwelling (MVAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mvaa/dwelling?stream_id=stream-parking-vip&start_date=2025-04-01&end_date=2025-04-07"{ "ok": true, "message": "success"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Statistik Vehicle Analytics Attributes — Density (MVAA)
Authorization
bearerAuth In: header
Query Parameters
datedateResponse Body
application/json
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/mvaa/density?stream_id=stream-road-attr01&start_date=2025-04-01&end_date=2025-04-01"{ "ok": true, "message": "success"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Ekspor PDF
Ekspor laporan PDF berjalan secara asinkron melalui tiga tahap: inisiasi job → polling status → unduh file.
Gunakan parameter lang untuk mengatur bahasa laporan (id = Bahasa Indonesia, en = English). Default timezone adalah Asia/Jakarta.
Alur Ekspor
- POST
/api/statistics/{category}/export— Inisiasi job, dapatkanjob_id - GET
/api/statistics/{category}/export/status/{job_id}— Poll hinggastatus=completed - GET
/api/statistics/{category}/export/download/{job_id}— Unduh file PDF
Inisiasi Ekspor PDF Statistik
Authorization
bearerAuth In: header
Path Parameters
Kategori statistik yang akan diekspor
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X POST "https://lenz.example.com/api/statistics/fr/export" \ -H "Content-Type: application/json" \ -d '{ "format": "pdf", "lang": "id", "timezone": "Asia/Jakarta", "start_date": "2025-04-01", "end_date": "2025-04-30", "stream_ids": [ "stream-abc123", "stream-def456" ] }'{ "job_id": "export-job-abc123", "status": "pending", "category": "fr", "estimated_time_seconds": 10}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Status Job Ekspor PDF
Authorization
bearerAuth In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/fr/export/status/export-job-abc123"{ "job_id": "export-job-abc123", "status": "completed", "progress": 100, "file_ready": true, "error_message": "string", "created_at": "2019-08-24T14:15:22Z", "completed_at": "2019-08-24T14:15:22Z"}{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Unduh File PDF Ekspor
Authorization
bearerAuth In: header
Path Parameters
Response Body
application/pdf
application/json
application/json
curl -X GET "https://lenz.example.com/api/statistics/fr/export/download/export-job-abc123""string"{ "ok": false, "message": "invalid request"}{ "ok": false, "message": "invalid request"}Nilai Kategori yang Didukung
| Kategori | Analitik |
|---|---|
fr | Face Recognition |
fra | Face Recognition Analytics |
lpr | License Plate Recognition |
ce | Crowd Estimation |
ppe | PPE Detection |
mpa-counting | People Analytics — Counting |
mpa-dwelling | People Analytics — Dwelling |
mpa-density | People Analytics — Density |
mpaa-counting | People Analytics Attributes — Counting |
mpaa-dwelling | People Analytics Attributes — Dwelling |
mpaa-density | People Analytics Attributes — Density |
mva-counting | Vehicle Analytics — Counting |
mva-dwelling | Vehicle Analytics — Dwelling |
mva-density | Vehicle Analytics — Density |
mvas-speed | Vehicle Analytics — Speed |
mvaa-counting | Vehicle Analytics Attributes — Counting |
mvaa-dwelling | Vehicle Analytics Attributes — Dwelling |
mvaa-density | Vehicle Analytics Attributes — Density |
Contoh Penggunaan
Statistik FR untuk 7 hari
curl -X GET \
"https://your-lenz-host/api/statistics/fr?stream_id=stream-abc123&start_date=2025-04-01&end_date=2025-04-07" \
-H "Authorization: Bearer <token>"Statistik MPA Counting multi-stream
curl -X GET \
"https://your-lenz-host/api/statistics/mpa/counting?stream_id=stream-entry01,stream-exit01&start_date=2025-04-01&end_date=2025-04-30" \
-H "Authorization: Bearer <token>"Inisiasi ekspor PDF (FR, Bahasa Indonesia)
curl -X POST \
"https://your-lenz-host/api/statistics/fr/export" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json" \
-d '{
"format": "pdf",
"lang": "id",
"timezone": "Asia/Jakarta",
"start_date": "2025-04-01",
"end_date": "2025-04-30",
"stream_ids": ["stream-abc123", "stream-def456"]
}'Respons contoh — inisiasi ekspor
{
"job_id": "export-job-abc123",
"status": "pending",
"category": "fr",
"estimated_time_seconds": 10
}Poll status sampai selesai
curl -X GET \
"https://your-lenz-host/api/statistics/fr/export/status/export-job-abc123" \
-H "Authorization: Bearer <token>"{
"job_id": "export-job-abc123",
"status": "completed",
"progress": 100,
"file_ready": true,
"created_at": "2025-04-30T10:00:00+07:00",
"completed_at": "2025-04-30T10:00:12+07:00"
}Mode Federation
Sertakan parameter instance untuk mengambil data dari instance tertentu:
curl -X GET \
"https://your-lenz-host/api/statistics/ce?stream_id=stream-plaza01&start_date=2025-04-01&end_date=2025-04-07&instance=instance-branch-002" \
-H "Authorization: Bearer <token>"Statistics
Analytics bisnis berbasis event — data pengenalan wajah, orang, kendaraan, plat nomor, dan estimasi kerumunan. Tersedia dalam tampilan real-time maupun historis dengan rentang waktu yang fleksibel.
Statistics: Face Recognition
Pantau performa pengenalan wajah — total deteksi, jumlah match, tingkat pengenalan, analisis demografis, distribusi per Stream, dan tren — langsung dari Lenz Dashboard.