API Reference — Audit Logs
Endpoint untuk mengambil daftar Audit Log dengan dukungan filter multi-dimensi, pagination, dan pengurutan.
← Kembali ke Audit Logs
Panduan penggunaan: filter, investigasi, dan troubleshooting.
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. Endpoint Audit Logs hanya dapat diakses oleh pengguna dengan permission AUDIT_LOG. Jika belum memiliki token, lihat halaman Otentikasi.
Daftar Audit Log
Mengambil daftar Audit Log dengan dukungan filter multi-dimensi, pagination, pengurutan berdasarkan waktu, dan dukungan timezone. Setiap entri log menyertakan detail lengkap permintaan beserta informasi pengguna yang terasosiasi.
Authorization
bearerAuth In: header
Query Parameters
Nomor halaman, dimulai dari 1
1Jumlah data per halaman
10Batas awal waktu log dalam format ISO 8601 (misal: 2026-04-30T00:00:00Z)
date-timeBatas akhir waktu log dalam format ISO 8601 (misal: 2026-04-30T23:59:59Z)
date-timeFilter berdasarkan metode HTTP yang digunakan
"GET" | "POST" | "PUT" | "PATCH" | "DELETE"Filter berdasarkan nama resource atau modul API yang diakses (misal: enrollment, stream, user)
Pencarian berdasarkan nama pengguna atau alamat email
Filter berdasarkan alamat IP asal permintaan
Filter berdasarkan User ID pengguna tertentu
Filter berdasarkan kode status HTTP respons (misal: 200, 401, 500)
Urutan data berdasarkan waktu pembuatan log: asc (terlama ke terbaru) atau desc (terbaru ke terlama)
"asc" | "desc"Timezone untuk interpretasi parameter waktu (misal: Asia/Jakarta, UTC). Default: UTC
Mode pengambilan data
ID instance pada deployment Federation Mode (misal: core atau ID node remote)
Response Body
application/json
application/json
application/json
curl -X GET "https://lenz.example.com/api/audit-logs?page=1&limit=10"{ "message": "success", "ok": true, "result": { "limit": 10, "current_page": 1, "total_data": 248, "total_page": 25, "audit_logs": [ { "id": 1042, "user_id": 7, "ip_address": "192.168.1.45", "method": "POST", "resource": "enrollment", "path": "/api/enrolled-faces", "status_code": 201, "request_time": "2026-04-30T08:22:11.504Z", "duration": 312, "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36", "content_type": "application/json", "created_at": "2026-04-30T08:22:11.800Z", "user": { "id": 7, "email": "admin@example.com", "username": "admin", "fullname": "System Administrator", "avatar": "", "role_id": "2" } }, { "id": 1041, "user_id": 3, "ip_address": "10.0.0.12", "method": "GET", "resource": "stream", "path": "/api/streams", "status_code": 200, "request_time": "2026-04-30T08:20:05.122Z", "duration": 87, "user_agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)", "content_type": "", "created_at": "2026-04-30T08:20:05.210Z", "user": { "id": 3, "email": "operator@example.com", "username": "operator01", "fullname": "Operator Satu", "avatar": "", "role_id": "3" } } ] }}{ "ok": false, "message": "unauthorized"}{ "ok": false, "message": "forbidden"}