Authentifizieren, Anwesenheit abrufen, einen Fingerabdruck registrieren und eine Tür öffnen – mit Copy-and-paste-Beispielen in der Sprache, die Sie bereits nutzen.
Schnellstart
Erstellen Sie im Entwicklerportal ein Konto und koppeln Sie Ihr Gerät per Seriennummer. Sie erhalten einen AuthToken.
Übergeben Sie AuthToken bei jedem Aufruf. Er begrenzt den Zugriff auf Ihr Konto und das jeweilige Gerät.
Beginnen Sie mit GetAttendanceByDate, um zu bestätigen, dass Daten fließen, und fahren Sie dann mit Registrierung und Zutrittskontrolle fort.
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();
Dasselbe Muster gilt für jede Operation – ändern Sie einfach Pfad und Parameter.
Häufige Rezepte
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"
Betten Sie niemals einen AuthToken in clientseitigen Code ein. Leiten Sie Aufrufe über Ihr Backend weiter.
Das Gateway wiederholt den Versand, bis Sie 200 zurückgeben. Entfernen Sie Duplikate anhand der Ereignis-ID, damit Wiederholungen unbedenklich sind.
Ist ein Gerät offline, erhalten Sie 409; der Befehl wird in die Warteschlange gestellt. Fragen Sie GetCommandStatus ab.
Lokales Testen
Ihr Entwicklungsrechner liegt hinter einer Firewall, daher kann das Gateway localhost nicht direkt erreichen. Machen Sie ihn über einen Tunnel verfügbar, richten Sie Ihre Callback-URL auf die öffentliche Adresse und lösen Sie eine Teststempelung aus.
200 erhält# 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
Gerät verbinden
Die meisten Zeiterfassungsterminals (ZKTeco, eSSL und kompatible) sprechen das ICLOCK-/Push-Protokoll. Tragen Sie die Cloud-Server-Felder am Gerät ein, und es streamt die Anwesenheit in Ihr Konto – ohne PC oder lokale Software.
Passen Sie IP / Subnetz / Gateway / DNS des Geräts an Ihr LAN an (oder nutzen Sie DHCP), bevor Sie den Cloud-Server eintragen.
Koppeln Sie es im Entwicklerportal und führen Sie in Minuten einen Live-Aufruf aus.
Wir verwenden Cookies, um den Datenverkehr zu messen und BiometricAPI.com zu verbessern. Analysen bleiben deaktiviert, bis Sie zustimmen. Mehr erfahren.