Lewati ke konten utama

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

KodeDeskripsi
200Request berhasil
201Resource berhasil dibuat
400Parameter request tidak valid
401Token tidak valid atau kedaluwarsa
403Tidak memiliki izin untuk resource
404Resource tidak ditemukan
429Rate limit terlampaui
500Kesalahan 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"
}
}