Autentikasi API Kirem
Seluruh akses ke endpoint API Kirem dilindungi oleh mekanisme autentikasi berbasis Token API (API Key) dan validasi Daftar Putih IP (IP Whitelisting) untuk menjaga keamanan data tenant secara ketat.
🔑 1. Header Autentikasi
Setiap permintaan HTTP (HTTP Request) yang dikirim ke server Kirem wajib menyertakan header Authorization dengan format Bearer Token.
Format Header:
Authorization: Bearer <kirem_live_your_api_key_here>
Jagalah kerahasiaan API Key Anda. Siapa pun yang memiliki kunci ini dapat mengirimkan pesan dan mengelola saluran komunikasi atas nama akun Anda. Jika kunci Anda bocor, segera lakukan pencabutan (revoke) dan buat kunci baru di Dasbor Pengembang Kirem.
🛡️ 2. Pengamanan IP Whitelisting
Kirem mendukung pembatasan akses API berdasarkan IP pengirim (SSRF Prevention & Client IP Validation).
- Cara Kerja: Saat membuat atau mengedit API Key di dasbor pengembang, Anda dapat memasukkan daftar IP tunggal (misal:
198.51.100.42) atau rentang IP menggunakan notasi CIDR (misal:198.51.100.0/24). - Validasi: Setiap request yang masuk akan diperiksa IP asalnya. Jika IP asal pengirim tidak terdaftar dalam whitelist API Key yang digunakan, server akan menolak permintaan tersebut.
🚦 3. Kode Status Autentikasi (HTTP Status Codes)
Berikut adalah respons standard dari server terkait status autentikasi Anda:
A. 200 OK / 201 Created (Autentikasi Berhasil)
Permintaan Anda berhasil diautentikasi dan diproses oleh sistem.
B. 401 Unauthorized (Gagal Autentikasi)
Terjadi jika header Authorization tidak disertakan, tidak valid, atau telah kedaluwarsa.
{
"status": 401,
"message": "Missing or invalid API key",
"errors": {
"auth": "Provide a valid API Key in the Authorization header"
}
}
C. 403 Forbidden (Akses Ditolak)
Terjadi jika API Key valid tetapi request dikirim dari IP Address yang tidak terdaftar di daftar putih (IP Whitelist).
{
"status": 403,
"message": "IP address is not whitelisted",
"errors": {
"ip": "Client IP address does not match whitelisted IPs for this API key"
}
}