API Reference — Assignment
Endpoint untuk mengelola Assignment analitik ke stream — template konfigurasi analitik, preset konfigurasi, dan drawing preset ROI.
← Kembali ke Assignment
Panduan operator: tambah, perbarui, hapus penugasan analitik, konfigurasi ROI, dan preset.
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.
Endpoint Pipeline CRUD (GET/POST/PUT/DELETE /api/visionaire/pipeline/:nodeId/:streamId/:analyticId) dan daftar analitik (/api/visionaire/analytic_list) didokumentasikan di halaman Video Analysis, karena path tersebut digunakan bersama antara stream langsung dan analisis video.
Template Konfigurasi
Endpoint untuk mengambil skema konfigurasi analitik dalam dua format: JSON mentah (v1) dan form terstruktur (v2). Digunakan oleh UI saat pengguna mengaktifkan konfigurasi kustom pada halaman Assignment.
Authorization
bearerAuth In: header
Path Parameters
ID analitik.
Query Parameters
ID instance pada mode federation (opsional).
Response Body
application/json
curl -X GET "https://lenz.example.com/api/visionaire/config/pipeline/NFV4-MPA"{ "code": 200, "config": { "object_confidence_threshold": 0.5, "dump_ignore_iou_threshold": 0.3, "dumping_sampling_time": 5, "enable_visual_label": true }}Authorization
bearerAuth In: header
Path Parameters
ID analitik.
Query Parameters
ID instance pada mode federation (opsional).
Response Body
application/json
curl -X GET "https://lenz.example.com/api/visionaire/v2/config/pipeline/NFV4-MPA"{ "code": 200, "message": "success", "analytic_id": "NFV4-MPA", "configs": [ { "name": "object_confidence_threshold", "type": "float", "desc": "Threshold kepercayaan deteksi objek", "group": "detection", "value": 0.5, "required": false, "min": 0, "max": 1, "step": 0.05 } ], "sub_analytics": []}Preset Konfigurasi
Endpoint untuk mengambil preset konfigurasi analitik yang disiapkan oleh administrator. Preset berisi nilai parameter yang sudah dioptimalkan untuk skenario tertentu dan dapat dimuat langsung ke form konfigurasi.
Authorization
bearerAuth In: header
Path Parameters
ID analitik.
Query Parameters
ID instance pada mode federation (opsional).
Response Body
application/json
curl -X GET "https://lenz.example.com/api/visionaire/config/preset/NFV4-FR"{ "code": 200, "analytic_id": "NFV4-FR", "result": [ { "name": "Threshold Ketat", "description": "Konfigurasi dengan threshold tinggi untuk mengurangi false positive.", "config": { "object_confidence_threshold": 0.8 } }, { "name": "Threshold Longgar", "description": "Konfigurasi dengan threshold rendah untuk area berkecepatan tinggi.", "config": { "object_confidence_threshold": 0.3 } } ]}Drawing Preset
Endpoint untuk menyimpan dan memuat preset konfigurasi ROI (drawing preset). Drawing preset memungkinkan pengguna menyimpan posisi garis dan poligon yang sudah digambar agar dapat digunakan ulang pada stream lain dengan sudut kamera serupa.
Authorization
bearerAuth In: header
Query Parameters
ID analitik untuk memfilter preset.
Logika spesifik untuk memfilter lebih lanjut (counting, dwelling, dll.) — opsional.
Response Body
application/json
curl -X GET "https://lenz.example.com/api/streams/drawing-presets?analytic_id=NFV4-MPA&logic=counting"{ "ok": true, "message": "success", "data": [ { "id": "preset-uuid-001", "name": "Garis Pintu Utama", "analytic_id": "NFV4-MPA", "logic": "counting", "shapes": [ { "type": "line", "id": "shape-01", "name": "Line A", "points": [ { "x": 0.2, "y": 0.5 }, { "x": 0.8, "y": 0.5 } ], "direction": "both", "color": "#3b82f6" } ], "created_by": 1, "created_at": "2025-03-10T08:00:00Z", "updated_at": null } ]}Authorization
bearerAuth In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://lenz.example.com/api/streams/drawing-presets" \ -H "Content-Type: application/json" \ -d '{ "name": "Garis Pintu Utama", "analytic_id": "NFV4-MPA", "logic": "counting", "shapes": [ { "type": "line", "id": "shape-01", "name": "Line A", "points": [ { "x": 0.2, "y": 0.5 }, { "x": 0.8, "y": 0.5 } ], "direction": "both", "color": "#3b82f6" } ] }'{ "ok": true, "message": "success", "data": { "id": "preset-uuid-002", "name": "Garis Pintu Utama", "analytic_id": "NFV4-MPA", "logic": "counting", "shapes": [], "created_by": 1, "created_at": "2025-06-01T09:00:00Z", "updated_at": null }}Authorization
bearerAuth In: header
Path Parameters
UUID drawing preset.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Nama baru untuk preset.
Response Body
application/json
curl -X PUT "https://lenz.example.com/api/streams/drawing-presets/preset-uuid-001" \ -H "Content-Type: application/json" \ -d '{ "name": "Garis Pintu Utama — Revisi" }'{ "ok": true, "message": "success", "data": { "id": "preset-uuid-001", "name": "Garis Pintu Utama — Revisi", "analytic_id": "NFV4-MPA", "logic": "counting", "shapes": [], "created_by": 1, "created_at": "2025-03-10T08:00:00Z", "updated_at": "2025-06-01T10:00:00Z" }}Authorization
bearerAuth In: header
Path Parameters
UUID drawing preset.
Response Body
application/json
curl -X DELETE "https://lenz.example.com/api/streams/drawing-presets/preset-uuid-001"{ "ok": true, "message": "success"}Assignment
Konfigurasi dan tugaskan analitik AI ke video stream tertentu — mulai dari pemilihan analitik, penggambaran Region of Interest, hingga penyimpanan konfigurasi Pipeline.
Live Events
Feed event real-time dari kamera yang terdeteksi sistem — pengenalan wajah, plat nomor, orang terdeteksi, dan lainnya. Diperbarui secara langsung melalui WebSocket.