होम / डेवलपर्स

एक दोपहर में बनाएँ

ऑथेंटिकेट करें, उपस्थिति खींचें, फ़िंगरप्रिंट एनरोल करें और दरवाज़ा खोलें — उसी भाषा में कॉपी-पेस्ट उदाहरणों के साथ, जो आप पहले से इस्तेमाल करते हैं।

क्विकस्टार्ट

पहली कॉल तक तीन चरण

API की पाएँ

डेवलपर पोर्टल पर अकाउंट बनाएँ और अपने डिवाइस को सीरियल नंबर से पेयर करें। आपको एक AuthToken मिलेगी।

हर रिक्वेस्ट को ऑथेंटिकेट करें

हर कॉल के साथ AuthToken भेजें। यह एक्सेस को आपके अकाउंट और विशिष्ट डिवाइस तक सीमित करता है।

endpoint कॉल करें

डेटा आ रहा है, यह पुष्टि करने के लिए GetAttendanceByDate से शुरू करें, फिर एनरोलमेंट और एक्सेस कंट्रोल की ओर बढ़ें।

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

यही पैटर्न हर ऑपरेशन पर लागू होता है — बस पाथ और पैरामीटर बदलें।

आम रेसिपी

कॉपी करें, पेस्ट करें, शिप करें

POST

यूज़र एनरोल करें

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

दरवाज़ा खोलें

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

webhook रजिस्टर करें

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

कीज़ सर्वर-साइड रखें

AuthToken को कभी क्लाइंट-साइड कोड में एम्बेड न करें। कॉल अपने बैकएंड के ज़रिए प्रॉक्सी करें।

🔄

webhooks को आइडेम्पोटेंट बनाएँ

जब तक आप 200 नहीं लौटाते, गेटवे रीट्राई करता रहता है। इवेंट id पर डी-डुप्लिकेट करें ताकि रीट्राई सुरक्षित रहें।

⏳

क्यू में रखे कमांड संभालें

यदि डिवाइस ऑफ़लाइन है तो आपको 409 मिलेगा; कमांड क्यू में रहता है। GetCommandStatus पोल करें।

लोकल टेस्टिंग

अपनी मशीन से callback URL टेस्ट करें

आपकी डेव मशीन फ़ायरवॉल के पीछे है, इसलिए गेटवे सीधे localhost तक नहीं पहुँच सकता। इसे टनल से एक्सपोज़ करें, अपने Callback URL को पब्लिक पते पर पॉइंट करें और टेस्ट पंच ट्रिगर करें।

  • हमेशा HTTPS callback URL का उपयोग करें
  • पूरे टेस्ट सेशन में टनल चालू रखें
  • मुफ़्त ngrok URL रीस्टार्ट पर बदल जाते हैं — बदलने पर callback अपडेट करें
  • अपने हैंडलर को आइडेम्पोटेंट बनाएँ — जब तक गेटवे को 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

डिवाइस कनेक्ट करें

टर्मिनल को गेटवे की ओर पॉइंट करें

ज़्यादातर उपस्थिति टर्मिनल (ZKTeco, eSSL और संगत) ICLOCK / push प्रोटोकॉल बोलते हैं। डिवाइस पर क्लाउड-सर्वर फ़ील्ड सेट करें और वह उपस्थिति आपके अकाउंट में स्ट्रीम करने लगता है — किसी PC या लोकल सॉफ़्टवेयर की ज़रूरत नहीं।

⚙
डिवाइस पर: Menu → COMM → Cloud Server / ADMS, नीचे दिया सर्वर दर्ज करें, फिर पुष्टि करें कि होम स्क्रीन पर सर्वर-कनेक्शन आइकन दिख रहा है।

डिवाइस सर्वर सेटिंग्स

सर्वर IP
152.53.172.248
पोर्ट
8123 (डेवलपर / टेस्टिंग) · 80 (प्रोडक्शन)
Enable Domain Name
OFF
प्रॉक्सी सर्वर
OFF
प्रोटोकॉल
ICLOCK / Push

क्लाउड सर्वर सेट करने से पहले डिवाइस का IP / सबनेट / गेटवे / DNS अपने LAN से मिलाएँ (या DHCP इस्तेमाल करें)।

क्या आपके पास डिवाइस का सीरियल है?

इसे डेवलपर पोर्टल पर पेयर करें और मिनटों में लाइव कॉल करें।