Ana sayfa / Geliştiriciler

Bir öğleden sonrada geliştirin

Kimlik doğrulayın, devam kayıtlarını çekin, parmak izi kaydedin ve kapı açın — zaten kullandığınız dilde kopyala-yapıştır örneklerle.

Hızlı başlangıç

İlk çağrınıza üç adım

API anahtarı alın

Geliştirici portalında bir hesap oluşturun ve cihazınızı seri numarasıyla eşleştirin. Bir AuthToken alacaksınız.

Her isteği doğrulayın

Her çağrıyla birlikte AuthToken gönderin. Erişimi hesabınız ve ilgili cihazla sınırlar.

Bir endpoint çağırın

Verinin aktığını doğrulamak için GetAttendanceByDate ile başlayın, ardından kayıt ve erişim kontrolüne geçin.

Temel URL

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();

Aynı kalıp her işlem için geçerlidir — yalnızca yolu ve parametreleri değiştirin.

Yaygın tarifler

Kopyala, yapıştır, yayınla

POST

Kullanıcı kaydetme

curl .../v3/user/add \
 -d "AuthToken=$K" \
 -d "DeviceSN=ZK6A2300583" \
 -d "EmployeeCode=1042" \
 -d "Name=Priya"
POST

Kapı açma

curl .../v3/access/opendoor \
 -d "AuthToken=$K" \
 -d "DeviceSN=ZK6A2300583" \
 -d "DoorNo=1"
CALLBACK

Webhook kaydetme

curl .../v3/callback/register \
 -d "AuthToken=$K" \
 -d "Url=https://app/hook" \
 -d "Events=attendance.new"
🔒

Anahtarları sunucu tarafında tutun

İstemci tarafı koda asla bir AuthToken gömmeyin. Çağrıları arka ucunuz üzerinden yönlendirin.

🔄

Webhook'ları idempotent yapın

Gateway, siz 200 dönene kadar yeniden dener. Yeniden denemelerin güvenli olması için olay kimliğine göre mükerrer kayıtları ayıklayın.

⏳

Kuyruğa alınan komutları yönetin

Bir cihaz çevrimdışıysa 409 alırsınız; komut kuyruğa alınır. GetCommandStatus ile sorgulayın.

Yerel test

Callback URL'lerini kendi makinenizden test edin

Geliştirme makineniz bir güvenlik duvarının arkasında olduğundan gateway localhost adresine doğrudan ulaşamaz. Bir tünelle dışarı açın, Callback URL'nizi genel adrese yönlendirin ve test amaçlı bir giriş-çıkış tetikleyin.

  • Her zaman HTTPS callback URL'si kullanın
  • Tüm test oturumu boyunca tüneli açık tutun
  • Ücretsiz ngrok URL'leri yeniden başlatmada değişir — değiştiğinde callback'i güncelleyin
  • İşleyicinizi idempotent yapın — gateway, 200 alana kadar yeniden dener
# 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

Cihaz bağlama

Bir terminali gateway'e yönlendirin

Devam terminallerinin çoğu (ZKTeco, eSSL ve uyumlular) ICLOCK / push protokolünü konuşur. Cihazdaki bulut sunucu alanlarını ayarlayın; cihaz devam kayıtlarını hesabınıza aktarır — PC veya yerel yazılım gerekmez.

⚙
Cihazda: Menu → COMM → Cloud Server / ADMS yolunu izleyin, aşağıdaki sunucuyu girin, ardından ana ekranda sunucu bağlantısı simgesinin göründüğünü doğrulayın.

Cihaz sunucu ayarları

Sunucu IP'si
152.53.172.248
Port
8123 (geliştirici / test) · 80 (üretim)
Alan Adını Etkinleştir
KAPALI
Proxy Sunucusu
KAPALI
Protokol
ICLOCK / Push

Bulut sunucuyu ayarlamadan önce cihazın IP / alt ağ / gateway / DNS bilgilerini LAN'ınıza uyacak şekilde ayarlayın (veya DHCP kullanın).

Cihazınızın seri numarası elinizde mi?

Geliştirici portalında eşleştirin ve dakikalar içinde canlı bir çağrı yapın.