API REST
Integrasikan submit & verifikasi bukti matematis VerixID langsung dari sistem Anda. Satu base URL, dua endpoint inti — tanpa file yang pernah dikirim ke server kami.
Autentikasi
Base URL: https://api.verixid.com
VerixID adalah mathematical witness untuk file digital. API ini menerima fingerprint (SHA-256 hash) file, bukan file itu sendiri — file tidak pernah diupload ke server (zero-custody).
Semua endpoint mewajibkan API key, dikirim lewat header X-Secure-Key: <64-karakter-api-key>. Key didapat dari dashboard VerixID — generate sekali, ditampilkan sekali saat itu juga. Simpan dengan aman, jangan pernah tempel di chat, repo publik, atau log.
- · Format: 64 karakter alfanumerik (
A-Z,a-z,0-9), case-sensitive.
Mendaftarkan File
Mendaftarkan fingerprint file baru ke ledger.
Headers
Body
| Field | Wajib | Keterangan |
|---|---|---|
hash | Ya | SHA-256 hex, 64 karakter. Dihitung di sisi client — file tidak pernah dikirim. |
Response sukses — 201 Created
Simpan record_id — identifier publik untuk verifikasi. Ownership key
(kalau ada di response) simpan aman; itu bukti kepemilikan pribadi dan tidak bisa dipulihkan jika hilang.
Hash sudah pernah terdaftar
Verifikasi Record
Memverifikasi keberadaan record — bisa dipakai siapa saja yang punya record_id.
| Param | Wajib | Keterangan |
|---|---|---|
id | Ya | Format: vx + YYYYMM + 8 karakter hex. Contoh: vx202607a1b2c3d4. |
ownership_key | — | 64 karakter hex. Kalau valid, dapat proof kepemilikan. |
Mode 1 — tanpa ownership_key (public check)
hash_preview cuma 16 karakter pertama — mencegah brute-force identitas file dari publik.
Mode 2 — dengan ownership_key valid (proof kepemilikan)
hash_preview sekarang hash lengkap (64 karakter), plus ed25519_signature
(hex, 128 karakter — 64 byte) yang bisa diverifikasi independen memakai public key VerixID di
/.well-known/verixid-public-key.pem.
Record tidak ditemukan
Format Error
Semua error mengikuti struktur konsisten:
| code | Status | Kapan terjadi |
|---|---|---|
unauthorized | 401 | API key kosong, salah format, atau tidak terdaftar |
billing_expired | 402 | Akun suspend atau periode billing berakhir |
invalid_json | 400 | Body bukan JSON valid |
invalid_hash | 400 | hash bukan SHA-256 hex 64 karakter |
invalid_id | 400 | id bukan format record ID yang valid |
invalid_key / invalid_ownership_key | 400 | ownership_key bukan hex 64 karakter |
payload_too_large | 400 | Body request > 10 KB |
quota_exceeded | 429 | Kuota bulanan habis |
rate_limit_exceeded | 429 | Lebih dari 20 request/menit |
method_not_allowed | 405 | Method HTTP salah untuk endpoint tsb |
not_found | 404 | Path tidak dikenal |
upstream_error | 502 | Layanan internal bermasalah, coba lagi |
internal_error | 500 | Error tak terduga |
Contoh cURL
Submit
Verify (public)
Verify (dengan ownership proof)
Jangan tempel API key produksi di terminal history, chat, atau repo publik. Kalau tidak sengaja ter-expose, rotate key dari dashboard.
Yang Perlu Anda Tahu
- Zero-Custody
- File asli tidak pernah dikirim/disimpan, hanya SHA-256 fingerprint-nya.
- Verify, Don't Trust
- Hasil deterministik, bisa diverifikasi ulang secara independen (SHA-256 + Ed25519) tanpa perlu percaya ke VerixID.
- Append-Only
- Sekali submit, record tidak bisa dihapus/diubah. Uji coba dengan hash dummy tetap tercatat permanen di ledger.
- Bukan Ini
- Bukan e-signature, bukan blockchain, bukan KYC — murni bukti integritas & waktu keberadaan file.