Autentikasi, tarik data absensi, daftarkan sidik jari, dan buka pintu — dengan contoh salin-tempel dalam bahasa yang sudah Anda gunakan.
Panduan cepat
Buat akun di portal pengembang dan pasangkan perangkat Anda dengan nomor seri. Anda akan menerima AuthToken.
Sertakan AuthToken pada setiap panggilan. Token ini membatasi akses ke akun Anda dan perangkat tertentu.
Mulai dengan GetAttendanceByDate untuk memastikan data mengalir, lalu lanjutkan ke pendaftaran dan kontrol akses.
https://api.camsbiometrics.com/v3/
# Fetch attendance for a date range curl https://api.camsbiometrics.com/v3/attendance/getbyscandate \ -d "AuthToken=$API_KEY" \ -d "StartDate=2026-06-01" \ -d "EndDate=2026-06-21"
$ch = curl_init("https://api.camsbiometrics.com/v3/attendance/getbyscandate"); curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => [ "AuthToken" => $apiKey, "StartDate" => "2026-06-01", "EndDate" => "2026-06-21", ], ]); $data = json_decode(curl_exec($ch), true);
import requests r = requests.post( "https://api.camsbiometrics.com/v3/attendance/getbyscandate", data={ "AuthToken": api_key, "StartDate": "2026-06-01", "EndDate": "2026-06-21", }, ) logs = r.json()["Attendance"]
const res = await fetch( "https://api.camsbiometrics.com/v3/attendance/getbyscandate", { method: "POST", headers: { "Content-Type": "application/x-www-form-urlencoded" }, body: new URLSearchParams({ AuthToken: apiKey, StartDate: "2026-06-01", EndDate: "2026-06-21", }), } ); const { Attendance } = await res.json();
Pola yang sama berlaku untuk setiap operasi — cukup ubah path dan parameternya.
Resep umum
curl .../v3/user/add \ -d "AuthToken=$K" \ -d "DeviceSN=ZK6A2300583" \ -d "EmployeeCode=1042" \ -d "Name=Priya"
curl .../v3/access/opendoor \ -d "AuthToken=$K" \ -d "DeviceSN=ZK6A2300583" \ -d "DoorNo=1"
curl .../v3/callback/register \ -d "AuthToken=$K" \ -d "Url=https://app/hook" \ -d "Events=attendance.new"
Jangan pernah menyematkan AuthToken di kode sisi klien. Teruskan panggilan melalui backend Anda.
Gateway mencoba ulang hingga Anda mengembalikan 200. Hapus duplikat berdasarkan id event agar percobaan ulang aman.
Jika perangkat offline, Anda akan mendapat 409; perintah diantrekan. Lakukan polling GetCommandStatus.
Pengujian lokal
Komputer pengembangan Anda berada di balik firewall, sehingga gateway tidak dapat menjangkau localhost secara langsung. Ekspos dengan tunnel, arahkan Callback URL Anda ke alamat publik, lalu picu absen uji.
200# 1. install & authenticate ngrok ngrok config add-authtoken $TOKEN # 2. expose your local app (e.g. port 3000) ngrok http 3000 # Forwarding https://abc123.ngrok-free.app -> localhost:3000 # 3. set that HTTPS URL as your Callback URL
# Cams ngrok helper kit (Windows) # download: developer.camsbiometrics.com/setup/ngrok-helper-kit.rar # then: edit app.properties # add your ngrok authtoken run check_ngrok.bat
Hubungkan perangkat
Sebagian besar terminal absensi (ZKTeco, eSSL, dan yang kompatibel) menggunakan protokol ICLOCK / push. Isi kolom cloud server di perangkat dan perangkat akan mengalirkan absensi ke akun Anda — tanpa PC atau perangkat lunak lokal.
Sesuaikan IP / subnet / gateway / DNS perangkat dengan LAN Anda (atau gunakan DHCP) sebelum mengatur cloud server.
Pasangkan di portal pengembang dan lakukan panggilan langsung dalam hitungan menit.
Kami menggunakan cookie untuk mengukur lalu lintas dan meningkatkan BiometricAPI.com. Analitik tetap nonaktif sampai Anda menyetujui. Pelajari lebih lanjut.