Ringkasan Integrasi API: Dashboard Pengiriaman Surat Konfirmasi x ETLENAS
Dokumentasi API ini digunakan untuk integrasi antara sistem ETLENAS dengan
Dashboard Pengiriman Surat Konfirmasi ETLE Korlantas (Kirim Dokumen Polri). Melalui
integrasi ini, sistem ETLENAS dapat mengirim data pelanggaran secara otomatis, memvalidasi ID Region
Polres, serta melacak status dokumen.
Base URL API
Semua pemanggilan endpoint API diarahkan ke Base URL berikut:
https://api.dashboardkonfirmasi.org
PENTING: Untuk dapat melakukan integrasi, akun yang digunakan harus memiliki role
Integrator. Hubungi administrator sistem untuk mendapatkan kredensial
(username & password) dengan role tersebut sebelum memulai.
Mekanisme Autentikasi
Semua API (kecuali login) memerlukan autentikasi menggunakan Bearer Token yang dikirimkan
melalui header HTTP:
Authorization: Bearer {your_jwt_token_here}
Token diperoleh dari endpoint /user/login dan memiliki masa kedaluwarsa sesuai waktu yang
ditentukan pada response login.
1. Authentication (Login)
Digunakan untuk mendapatkan Bearer Token.
POST
/user/login
Request Body
| Field |
Tipe |
Wajib |
Keterangan |
Contoh |
username |
String |
Ya |
Username akun Integrator |
"admin_integrator" |
password |
String |
Ya |
Password akun Integrator |
"password123" |
Contoh Request Body
{
"username": "admin_integrator",
"password": "password123"
}
Responses
200 OK
(Success)
{
"code": 200,
"expire": "2026-12-12T10:30:00Z",
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
401
Unauthorized (Error)
{
"code": 401,
"message": "incorrect Username or Password"
}
2. Kirim Data Violation (Capture)
Mengirimkan data pelanggaran lalu lintas dari ETLENAS ke sistem Kirim Dokumen. Endpoint ini mendukung
pengiriman tunggal (single) maupun banyak (multiple) data sekaligus dalam satu request.
POST
/integrate/etlenas/capture
Request Body (Array of ViolationData)
| Field |
Tipe |
Wajib |
Keterangan |
Contoh |
plate_no |
String |
Ya |
Nomor plat kendaraan |
"B1234ABC" |
violation |
String |
Ya |
Jenis/deskripsi pelanggaran |
"Melanggar Rambu Lalu Lintas" |
location_description |
String |
Ya |
Lokasi kejadian pelanggaran |
"Jl. Sudirman KM 5" |
owner_name |
String |
Ya |
Nama pemilik kendaraan |
"Budi Santoso" |
owner_address |
String |
Ya |
Alamat pemilik kendaraan |
"Jl. Merdeka No. 123, Jakarta Pusat" |
phone_number |
String |
Tidak |
Nomor telepon pemilik (opsional) |
"081234567890" |
confirmation_code |
String |
Ya |
Kode konfirmasi unik surat konfirmasi |
"CONF-2026-001" |
date |
String |
Ya |
Tanggal & waktu kejadian (ISO 8601) |
"2026-06-21T10:30:00Z" |
id_region |
String |
Ya |
ID Region Polres tujuan |
"RES_KNDL054" |
ref_no |
String |
Ya |
Nomor referensi unik dari ETLENAS |
"ETLENAS-REF-001" |
Contoh Request Body
[
{
"plate_no": "B1234ABC",
"violation": "Melanggar Rambu Lalu Lintas",
"location_description": "Jl. Sudirman KM 5",
"owner_name": "Budi Santoso",
"owner_address": "Jl. Merdeka No. 123, Jakarta Pusat",
"phone_number": "081234567890",
"confirmation_code": "CONF-2026-001",
"date": "2026-06-21T10:30:00Z",
"id_region": "RES_KNDL054",
"ref_no": "ETLENAS-REF-001"
}
]
Responses
200 OK
(Success)
{
"message": "Documents received successfully",
"data": [
{
"plate_no": "B1234ABC",
"violation": "Melanggar Rambu Lalu Lintas",
"location_description": "Jl. Sudirman KM 5",
"owner_name": "Budi Santoso",
"owner_address": "Jl. Merdeka No. 123, Jakarta Pusat",
"phone_number": "081234567890",
"confirmation_code": "CONF-2026-001",
"date": "2026-06-21T10:30:00Z",
"id_region": "RES_KNDL054",
"ref_no": "ETLENAS-REF-001"
}
],
"count": 1
}
400 Bad
Request (Error)
{
"error": "Polres dengan ID Region 'RES_INVALID' tidak ditemukan",
"message": "Pastikan ID Region sudah benar dan terdaftar di sistem"
}
3. Check ID Region
Validasi apakah ID Region Polres tujuan valid dan aktif, serta mendapatkan sisa alokasi pengiriman (volume
remaining).
GET
/integrate/etlenas/check-region/{id_region}
Path Parameters
| Parameter |
Tipe |
Wajib |
Keterangan |
Contoh |
id_region |
String |
Ya |
ID Region Polres yang ingin dicek |
"RES_KNDL054" |
Responses
200 OK
(Success)
{
"valid": true,
"polres": {
"id": 1,
"name": "Polres Kendal",
"id_region": "RES_KNDL054",
"address": "Jl. Soekarno Hatta No. 1, Kendal",
"phone": "0294-381234",
"active": true,
"volume_remaining": 500,
"polda": {
"id": 1,
"name": "Polda Jawa Tengah"
}
},
"message": "ID Region valid dan siap menerima data"
}
404 Not
Found (Error)
{
"valid": false,
"message": "ID Region tidak ditemukan",
"id_region": "INVALID_ID",
"suggestion": "Pastikan ID Region sudah terdaftar di sistem"
}
4. Check Document Status (Tracking)
Melacak status terkini dokumen pengiriman yang telah dikirim ke sistem berdasarkan nomor referensi
(ref_no).
GET
/integrate/etlenas/document/{ref_no}
Path Parameters
| Parameter |
Tipe |
Wajib |
Keterangan |
Contoh |
ref_no |
String |
Ya |
Nomor referensi unik pelanggaran dari ETLENAS |
"ETLENAS-REF-001" |
Status Alur Dokumen
Nilai status dokumen pada response dapat berubah secara dinamis seiring jalannya proses pengiriman fisik
surat konfirmasi:
new
→
preprocess
→
process
→
assigned
→
pickup
→
delivered
/
returned
Responses
200 OK
(Success)
{
"found": true,
"document": {
"id": 123,
"ref_no": "ETLENAS-REF-001",
"plate_no": "B1234ABC",
"status": "new",
"violation": "Melanggar Rambu Lalu Lintas",
"recipient": "Budi Santoso",
"created_at": "2026-06-21T10:30:00Z",
"polres": {
"id": 1,
"name": "Polres Kendal"
}
},
"message": "Dokumen ditemukan"
}
404 Not
Found (Error)
{
"found": false,
"message": "Dokumen tidak ditemukan",
"ref_no": "INVALID-REF",
"suggestion": "Pastikan reference number sudah benar atau dokumen sudah dikirim"
}
Alur & Langkah Integrasi
Berikut adalah tahapan umum untuk menghubungkan sistem ETLENAS dengan sistem Kirim Dokumen:
1
Dapatkan Akses
Hubungi administrator sistem Kirim Dokumen untuk mendapatkan akun partner (username & password)
dengan role Integrator serta daftar id_region Polres tujuan.
2
Dapatkan Token Autentikasi (JWT)
Lakukan request ke endpoint POST /user/login dengan kredensial integrator Anda untuk
mendapatkan token Bearer JWT.
3
Validasi Wilayah (Opsional)
Validasi id_region target menggunakan endpoint
GET /integrate/etlenas/check-region/{id_region} untuk memastikan target aktif dan kuota
pengiriman mencukupi.
4
Kirim Data Pelanggaran
Kirim array JSON objek pelanggaran ke endpoint POST /integrate/etlenas/capture dengan
menyertakan token JWT pada header Authorization.
5
Pantau Status Pengiriman
Lacak status pengiriman fisik surat konfirmasi secara berkala dengan memanggil endpoint
GET /integrate/etlenas/document/{ref_no} menggunakan reference number unik Anda.