Referensi API
FinGuard menyediakan REST API dengan versioning untuk integrasi dengan sistem eksternal. API dapat diakses melalui endpoint https://api.finguard.id.
Autentikasi
Semua request API harus menyertakan token JWT pada header:
Authorization: Bearer <access_token>
Token akses berlaku selama 15 menit. Token refresh dapat digunakan untuk memperoleh token akses baru tanpa login ulang. Detail autentikasi tersedia di halaman Mulai Cepat.
Versioning
API menggunakan prefix versi pada URL. Versi saat ini:
/v1/
Setiap perubahan yang tidak kompatibel mundur (breaking change) diterbitkan di bawah prefix versi baru. Versi sebelumnya tetap tersedia selama masa transisi.
Status Codes
| Kode | Deskripsi |
|---|---|
| 200 | Request berhasil |
| 201 | Resource berhasil dibuat |
| 400 | Parameter request tidak valid |
| 401 | Token tidak valid atau kedaluwarsa |
| 403 | Tidak memiliki izin untuk resource |
| 404 | Resource tidak ditemukan |
| 429 | Rate limit terlampaui |
| 500 | Kesalahan server internal |
Rate Limiting
Default rate limit adalah 100 request per menit per API key. Header response menyertakan informasi kuota:
X-RateLimit-Limit: 100
X-RateLimit-Remaining: 87
X-RateLimit-Reset: 1626000000
Endpoint Utama
Dokumen
POST /v1/dossiers # Buat dossier baru
GET /v1/dossiers # List dossier
GET /v1/dossiers/:id # Detail dossier
PUT /v1/dossiers/:id # Update metadata dossier
DELETE /v1/dossiers/:id # Hapus dossier dan semua dokumen terkait
POST /v1/dossiers/:id/documents # Unggah dokumen ke dossier
GET /v1/dossiers/:id/documents # List dokumen dalam dossier
GET /v1/documents/:id # Detail dokumen
DELETE /v1/documents/:id # Hapus dokumen
Analisis
POST /v1/dossiers/:id/analyze # Jalankan analisis pada dossier
GET /v1/analyses/:id # Status dan hasil analisis
GET /v1/analyses/:id/results # Detail hasil analisis per dokumen
GET /v1/analyses/:id/findings # Daftar temuan (findings) terdeteksi
GET /v1/analyses/:id/report # Laporan ringkasan analisis
Rekonsiliasi dan Forensik
GET /v1/analyses/:id/reconciliation # Hasil rekonsiliasi antar dokumen
GET /v1/analyses/:id/forensics # Hasil pemeriksaan forensik dokumen
Tenant dan Akses
GET /v1/tenant # Informasi tenant saat ini
PUT /v1/tenant/settings # Update pengaturan tenant
GET /v1/tenant/members # List anggota tenant
POST /v1/tenant/members # Undang anggota baru
DELETE /v1/tenant/members/:id # Hapus anggota
Webhook
GET /v1/webhooks # List webhook terdaftar
POST /v1/webhooks # Daftarkan webhook baru
PUT /v1/webhooks/:id # Update konfigurasi webhook
DELETE /v1/webhooks/:id # Hapus webhook
Event webhook yang tersedia: analysis.completed, analysis.failed, document.uploaded, finding.flagged, report.generated.
Format Response
Semua response dalam format JSON:
{
"success": true,
"data": {
"id": "DOSSIER-2026-92041",
"status": "completed",
"created_at": "2026-06-13T10:30:00+07:00"
},
"meta": {
"api_version": "v1",
"request_id": "req_a1b2c3d4"
}
}
Response error:
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Field 'document_type' wajib diisi."
},
"meta": {
"api_version": "v1",
"request_id": "req_a1b2c3d4"
}
}