FAQ, SDK en kosten

Veelgestelde vragen van integrators, plus uitleg over hoe de SDK en de API-prijzen werken.

Veelgestelde vragen

Veelgestelde vragen over de integratie met de Cams Biometrics Web API 3.0.

Algemeen

V: Wat is de Cams Biometric Gateway en de bijbehorende Biometric API?
De Cams Biometric Gateway is een universeel cloudplatform met een Biometric API waarmee elke webapplicatie realtime kan communiceren met biometrische aanwezigheids- en toegangscontroleapparaten. Het ondersteunt 38 bewerkingen via Callback-API's (inkomend) en RESTful API's (uitgaand) — zonder apparaat-SDK of statisch IP-adres.
V: Heb ik een SDK nodig om te integreren?
Nee. Cams levert of vereist geen SDK. Alle communicatie verloopt via standaard HTTP/HTTPS POST-requests met JSON-payloads. Elke taal die HTTP-aanroepen kan doen, werkt.
V: Welke programmeertalen worden ondersteund?
Elke taal die HTTP POST met JSON kan verzenden en ontvangen — PHP, Python, Java, C#, Node.js, Go, Ruby en meer. Voor 7 talen bieden wij prompts voor AI-codegeneratoren.
V: Wat is de Cams Protocol Engine?
Het is de cloudmiddleware tussen de biometrische apparaten en uw server. Deze verzorgt protocolvertaling, datanormalisatie en offline caching en levert een consistente JSON-API, ongeacht het merk of model van het onderliggende apparaat.
V: Wat is de API Monitor?
De API Monitor is uw beheerportaal waarin u Callback-URL's configureert, AuthTokens beheert, Security Keys instelt, de apparaatstatus bekijkt en uw RESTful endpoint-URL en Service Tag ID's opvraagt.

Apparaatcompatibiliteit

V: Welke biometrische apparaten worden ondersteund?
Alle apparaten van Cams Biometrics (vermeld op camsbiometrics.com/product) ondersteunen de volledige API met Native Push. Apparaten die zijn geverifieerd op developer.camsbiometrics.com hebben eveneens volledige Native Push-ondersteuning.
V: Kunnen apparaten die niet van Cams zijn (ZkTeco, eSSL, BioMax, enz.) deze API gebruiken?
Ja, met een Protocol Update. Apparaten die niet van Cams zijn en niet geverifieerd zijn, werken via Hybrid Push. Sommige functies kunnen beperkt zijn, afhankelijk van de verbindingsmodus en de hardwaremogelijkheden.
V: Wat is het verschil tussen Native Push en Hybrid Push?
Native Push: Volledige API-ondersteuning zonder beperkingen — alle 38 bewerkingen werken. Beschikbaar voor Cams-apparaten en geverifieerde apparaten.
Hybrid Push: Voor apparaten die niet van Cams zijn of niet geverifieerd zijn. De beschikbare functies hangen af van de communicatiemodus (SDK, DB Pull of bestandsverwerking). Zie Verbindingsmodi.
V: Welke biometrische methoden worden ondersteund?
Vingerafdruk, gezichtsherkenning, handpalmaderen, RFID-/proximitykaart, numerieke PIN/wachtwoord, irisscan en meting van de lichaamstemperatuur (afhankelijk van het apparaat).
V: Sommige API-functies werken niet met mijn apparaat. Waarom?
Dat hangt af van (a) de verbindingsmodus — de modi DB Pull en bestandsverwerking ondersteunen alleen aanwezigheidspush en geen RESTful API's, en (b) hardwarebeperkingen — sommige apparaatmodellen ondersteunen bepaalde functies op firmwareniveau niet. Test met uw hardware en neem voor hulp contact op met Cams-support.

Callback-API (Apparaat → Server)

V: Wat is de Callback-API?
De Callback-API levert realtime events van biometrische apparaten aan uw server. Wanneer er een registratie plaatsvindt of een gebruiker op het apparaat wordt gewijzigd, POST de Cams Protocol Engine onmiddellijk een JSON-payload naar uw geconfigureerde Callback-URL.
V: Wat moet mijn server teruggeven?
Geef altijd {"status":"done"} terug met HTTP-status 200 — ook als uw interne verwerking mislukt. Blokkeer de Cams Protocol Engine nooit. Zet zware verwerking in een wachtrij voor asynchrone uitvoering.
V: Wat gebeurt er als mijn server offline is op het moment van een registratie?
De Biometric Gateway cachet alle events en levert ze automatisch zodra uw server weer online is. Er gaan geen gegevens verloren.
V: Hoe ga ik om met dubbele registraties?
Implementeer duplicaatdetectie op uw server met de combinatie UserID + LogTime. Dezelfde registratie kan opnieuw worden verzonden bij offlineherstel of netwerkherhalingen.
V: Welke registratietypen worden ondersteund?
CheckIn, CheckOut, BreakOut, BreakIn, OverTimeIn, OverTimeOut, MealIn, MealOut. Het veld InputType toont de gebruikte biometrische methode: Fingerprint, Face, Palm, Card of Password.
V: Hoe werken gebruikerstemplates in Callbacks?
Wanneer een gebruiker op het apparaat wordt bijgewerkt (bewerkingen #3–#9), kunnen templates één voor één of in groepen binnenkomen, verspreid over meerdere callbacks. Elke callback bevat alleen de gewijzigde templates — niet de volledige set. Uw server moet samenvoegen/upserten met Type + Index als unieke sleutel. Overschrijf nooit alle templates bij één callback.
V: Kan ik aanwezigheidsfoto's ontvangen?
Ja. Bewerking #10 RealTimeAttendancePhoto levert een Base64-gecodeerde JPEG-opname die op het moment van registratie is gemaakt. Dit staat los van de callback voor het registratielog (#11) en is beschikbaar op apparaten met camera.
V: Bevat de Callback temperatuur en mondmaskerdetectie?
Ja, als het apparaat dit ondersteunt. Het object PunchLog bevat Temperature (gemeten lichaamstemperatuur) en FaceMask (boolean — of een mondmasker is gedetecteerd).

RESTful API (Server → Apparaat)

V: Wat is de RESTful API?
Met de RESTful API kan uw server opdrachten naar biometrische apparaten sturen — gebruikers toevoegen/verwijderen, logs laden, biometrie inschrijven en toegang beheren. U POST JSON naar de endpoint-URL in uw API Monitor-account.
V: Waar vind ik mijn RESTful endpoint-URL?
Log in op uw API Monitor-account. Uw RESTful endpoint-URL en Service Tag ID's (stgid) staan daar vermeld.
V: Wat is de latentie van RESTful-opdrachten?
Ongeveer 15 seconden. De Biometric Gateway zet uw opdracht in de wachtrij en levert deze aan het apparaat zodra het de volgende keer verbinding maakt (bij online apparaten bijna continu).
V: Wat is het maximale datumbereik voor LoadLog?
Aanbevolen maximum is 30 dagen per request. Voor grotere bereiken doet u meerdere requests met opeenvolgende tijdvensters.
V: Kan ik een gebruiker met meerdere biometrische templates in één keer toevoegen?
Ja. De Template-array accepteert meerdere items. Bewerking #27 voegt bijvoorbeeld een gebruiker toe met kaart + vingerafdruk + wachtwoord + gezicht + handpalm + gebruikersfoto in één request.
V: Wat gebeurt er als het apparaat offline is wanneer ik een RESTful-opdracht stuur?
De Biometric Gateway zet de opdracht in de wachtrij en levert deze automatisch af zodra het apparaat weer verbinding maakt. U ontvangt statuscode 5 (Device Offline) als het apparaat niet binnen het tijdvenster reageert.
V: Hoe controleer ik het resultaat van een opdracht?
RESTful-responses bevatten een veld StatusCode. Code 0 betekent geslaagd. Zie Responsestatuscodes voor de volledige lijst met foutcodes en hun betekenis.
V: Kan ik vingerafdrukinschrijving op afstand starten?
Ja. Bewerking #35 EnrollFingerPrint start een inschrijfsessie op het apparaat. De gebruiker moet echter fysiek bij het apparaat aanwezig zijn om zijn vinger te scannen.

Beveiliging & netwerk

V: Kan ik HTTPS voor callbacks gebruiken?
Ja. HTTPS met een geldig SSL-certificaat op poort 443 wordt volledig ondersteund en is aanbevolen voor productie.
V: Is versleuteling verplicht?
Nee. AES-256-versleuteling is optioneel. Om dit in te schakelen configureert u een Security Key in de API Monitor. Zodra dit is ingeschakeld, worden alle JSON-payloads versleuteld/ontsleuteld met AES/ECB/PKCS5PADDING en Base64-codering.
V: Hoe valideer ik dat een callback echt van Cams afkomstig is?
Elke callback bevat een veld AuthToken. Vergelijk dit met het token dat in uw API Monitor is geconfigureerd. Weiger elk request met een afwijkend token.
V: Welke poorten moet ik openen?
Poort 80 (HTTP) of 443 (HTTPS) voor productie. Poort 8123 is alleen beschikbaar voor tests. Zie Ondersteunde poorten.
V: Hoe test ik lokaal zonder uitrol op een server?
Gebruik een openbaar IP-adres met portforwarding of een tunneltool zoals ngrok. Zie Lokaal testen voor een stapsgewijze handleiding.

Gegevens & ontwerpoverwegingen

V: Welk gegevensformaat gebruikt de API?
Alle requests en responses zijn onbewerkte JSON met UTF-8-codering. Gebruik de header Content-Type: application/json. Geen formuliercodering.
V: Welk tijdstempelformaat wordt gebruikt?
YYYY-MM-DD HH:mm:ss GMT +OFFSET (bijv. 2020-09-17 07:48:22 GMT +0530). Het veld Time is in UTC; tijdstempels van het apparaat zelf (zoals LogTime, OperationTime) kunnen een andere tijdzoneverschuiving gebruiken.
V: Hoe ga ik om met offline registraties en achteraf aangeleverde gegevens?
Ontwerp uw applicatie zo dat deze registraties accepteert die niet in chronologische volgorde binnenkomen. Als een apparaat offline was, pusht het de gecachete registraties zodra de verbinding is hersteld. Mogelijk moet u de aanwezigheidsstatus achteraf bijwerken (bijv. een gebruiker die als "afwezig" werd getoond, wijzigen in "aanwezig").
V: Hoe bepaal ik IN/OUT als een gebruiker meerdere apparaten heeft?
Sorteer alle registraties van een gebruiker over alle apparaten heen op LogTime en pas vervolgens uw bedrijfslogica toe. Vertrouw niet uitsluitend op het veld Type (CheckIn/CheckOut) van één apparaat als de gebruiker op verschillende apparaten registreert.
V: Wat is de OperationID en hoe moet ik deze gebruiken?
Een unieke string-identificatie voor elke bewerking. Bij inkomende callbacks wordt deze gegenereerd door de Biometric Gateway. Voor uitgaande RESTful requests genereert u zelf een unieke waarde per request (UUID of op tijdstempel gebaseerd). De response geeft deze terug, zodat u request/response-paren kunt koppelen.
V: Hoe worden biometrische templates opgeslagen en verzonden?
Biometrische gegevens (vingerafdruk, gezicht, handpalm, gebruikersfoto) zijn Base64-gecodeerd in het veld Data van het Template-object. Vingerafdruk- en gezichtstemplates bevatten bovendien Size (lengte in bytes) en Index (slotnummer). Kaartnummers en PIN's zijn gewone strings.

Prijzen & licenties

V: Hoe wordt de API gelicentieerd?
Per biometrisch apparaat. In het eerste jaar zijn API-activering + jaarlicentie vereist. In de volgende jaren is alleen verlenging van de jaarlicentie nodig. Zie API-kosten voor de prijzen.
V: Wat gebeurt er als mijn API-licentie verloopt?
De API-communicatie voor dat apparaat stopt totdat de licentie is verlengd. Uw bestaande gegevens blijven ongewijzigd, maar er worden geen nieuwe callbacks of RESTful-opdrachten meer verwerkt.
V: Is er een on-premise optie?
Ja. De Protocol Engine Lite kan op uw eigen server (Windows/Linux) worden geïnstalleerd voor omgevingen met alleen LAN of voor zelfhosting. Neem voor details contact op via sales@camsbiometrics.com.

SDK voor biometrische aanwezigheid

Cams biedt geen traditionele SDK. Alle bewerkingen gebruiken standaard HTTP Callback- en RESTful API's — er hoeft geen bibliotheek te worden geïnstalleerd.

Geen SDK nodig. De communicatie verloopt volledig via de Cams Protocol Engine met Callback-URL's en RESTful HTTP-endpoints.

Dit maakt integratie met elk webplatform eenvoudig:

OpenERPERPNextZoho PeopleSAPTallyHRAPPOdooMaatwerk-webapps

API-kosten

API-licenties worden per biometrisch apparaat gefactureerd. Eerste jaar = activering + licentie; volgende jaren = alleen licentieverlenging.

DienstUSDOpmerkingen
Native Push — Cams- & geverifieerde apparaten
API-activering$120Eenmalig per apparaat.
Jaarlijkse API-licentie$60 – $120Jaarlijkse verlenging vereist.
Protocol Update (niet-Cams)$120 – $280Eenmalig. Schakelt het Cams-protocol in op apparaten die niet van Cams zijn.
Hybrid Push — ZKTeco, eSSL & alle merken van derden
API-activering$150Eenmalig per apparaat.
Jaarlijkse API-licentie$90 – $150Jaarlijkse verlenging vereist.
Hybrid Connector (niet-geverifieerd)$150 – $300Eenmalig. Vereist voor niet-geverifieerde apparaten die Hybrid Push gebruiken.
Hardware & overig
Hardware$220 – $720Varieert per model.
Protocol Engine Lite (on-premise) — Voor omgevingen met alleen LAN of zelfhosting. Kosten: $500–$10,000. Neem voor details contact op met sales.