API de callback : événements en temps réel du terminal vers votre serveur

Tous les événements qu’un terminal envoie à votre URL de callback, avec le JSON reçu par votre serveur et la réponse qu’il doit renvoyer.

API de callback Terminal → Votre serveur · Opérations 1–11

#01

ManuallyUserDeleted

API de callbackTerminal → Serveur

Déclenché lorsqu’un utilisateur est supprimé manuellement directement sur le terminal. Contient l’UserID et l’heure de suppression.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "OperationID": "oy1kjign3sm7",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 07:42:02 GMT +0000",
    "UserDeleted": {
      "UserID": "1",
      "OperationTime": "2020-09-17 13:12:02 GMT +0530"
    }
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#02

ManuallyDateModified

API de callbackTerminal → Serveur

Déclenché lorsque la date/heure du terminal est modifiée manuellement. Indique la nouvelle valeur définie.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "OperationID": "1aci5f5o6kbi1",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 07:52:31 GMT +0000",
    "DateModified": {
      "ModifiedTo": "2020-09-17 10:22:24 GMT +0530",
      "OperationTime": "2020-09-17 13:22:31 GMT +0530"
    }
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#03

ManuallyUserUpdatedWithoutTemplate

API de callbackTerminal → Serveur

Profil utilisateur (nom/type) mis à jour sur le terminal — sans changement biométrique. Le tableau Template est vide.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "UserID": "1",
      "FirstName": "jency",
      "LastName": "mary",
      "UserType": "User",
      "OperationTime": "2020-09-16 18:45:34 GMT +0530",
      "Template": []
    },
    "LabelName": "Burj Khalifa",
    "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "1vsyboxnuuorq",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-16 13:15:33 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#04

ManuallyUserUpdatedWithCard

API de callbackTerminal → Serveur

Utilisateur mis à jour sur le terminal avec un modèle de carte/RFID. Data contient le numéro de carte.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "UserID": "8", "FirstName": "", "LastName": "", "UserType": "User",
      "OperationTime": "2020-09-17 15:33:38 GMT +0530",
      "Template": [{ "Type": "Card", "UserID": "8", "Data": "9804445" }]
    },
    "LabelName": "Burj Khalifa",
    "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "oldcu1ekxdbz",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 10:03:38 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#05

ManuallyUserUpdatedWithPassword

API de callbackTerminal → Serveur

Utilisateur mis à jour sur le terminal avec un code PIN/mot de passe. Data est la chaîne du code PIN numérique.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "UserID": "8", "FirstName": "", "LastName": "", "UserType": "User",
      "OperationTime": "2020-09-17 15:33:38 GMT +0530",
      "Template": [{ "Type": "Password", "UserID": "8", "Data": "124445" }]
    },
    "LabelName": "Burj Khalifa", "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "oldcu1ekxdbz",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 10:03:38 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#06

ManuallyUserUpdatedWithFingerPrint

API de callbackTerminal → Serveur

Utilisateur mis à jour avec une empreinte digitale. Index = emplacement du doigt 0–9, Size = longueur en octets, Data = binaire Base64.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "OperationTime": "2020-09-17 12:48:28 GMT +0530",
      "Template": [{
        "Type": "Fingerprint", "UserID": "2",
        "Size": "1176", "Index": "6",
        "Data": "SjNTUzIxAAADcHcECAUHCc7Q..."
      }]
    },
    "LabelName": "Burj Khalifa", "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "vq01h140jswo",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 13:15:31 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#07

ManuallyUserUpdatedWithFace

API de callbackTerminal → Serveur

Utilisateur mis à jour avec un modèle de visage. Data est un JPEG encodé en Base64 ou un binaire de visage propriétaire (selon le terminal).

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "OperationTime": "2020-09-17 19:04:55 GMT +0530",
      "Template": [{
        "Type": "Face", "UserID": "2",
        "Size": "28112", "Index": "0",
        "Data": "/9j/4AAQSkZJRgABAQAAAQABAAD..."
      }]
    },
    "LabelName": "Burj Khalifa", "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "5qwmu986vm7c",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 13:15:31 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#08

ManuallyUserUpdatedWithPalm

API de callbackTerminal → Serveur

Utilisateur mis à jour avec un modèle des veines de la paume. Data est le binaire de paume encodé en Base64.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "OperationTime": "2020-09-17 19:10:12 GMT +0530",
      "Template": [{
        "Type": "Palm", "UserID": "2", "Index": "0",
        "Data": "apUBEOAHv98IAAwAAc/qAgzWDlDL..."
      }]
    },
    "LabelName": "Burj Khalifa", "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "p3rm9kqx1yz0",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 13:40:12 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#09

ManuallyUserUpdatedWithUserPhoto

API de callbackTerminal → Serveur

Utilisateur mis à jour avec une photo de profil. Data est un JPEG encodé en Base64.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "UserUpdated": {
      "UserID": "5", "FirstName": "Alex", "LastName": "Thomas",
      "UserType": "User",
      "OperationTime": "2020-09-17 20:00:00 GMT +0530",
      "Template": [{ "Type": "UserPhoto", "UserID": "5", "Data": "/9j/4AAQSkZJRgABAQAAAQABAAD..." }]
    },
    "LabelName": "Burj Khalifa", "SerialNumber": "ZHM11xxxxxxxx",
    "OperationID": "up9h2bxk7q11",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 14:30:00 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#10

RealTimeAttendancePhoto

API de callbackTerminal → Serveur

Événement de pointage en temps réel avec instantané capturé (pour les terminaux avec capture photo). LogPhoto est un JPEG encodé en Base64.

Requête — envoyée à votre serveur
{
  "RealTime": {
    "Log": {
      "UserID": "3",
      "LogPhoto": "/9j/4AAQSkZJRgABAQAAAQABAAD...",
      "LogTime": "2020-09-17 07:48:30 GMT +0530"
    },
    "OperationID": "x58636uon24u",
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 04:19:18 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }
#11

RealTimePunchLog

API de callbackTerminal → Serveur

Événement de présence principal en temps réel — déclenché à chaque pointage. Inclut le type, le mode de saisie, la température et l’état du masque facial.

Type : CheckIn · CheckOut · BreakOut · BreakIn · OverTimeIn · OverTimeOut · MealIn · MealOut  |  InputType : Fingerprint · Face · Palm · Card · Password
Requête — envoyée à votre serveur
{
  "RealTime": {
    "OperationID": "9nu1wak5616p",
    "LabelName": "Burj Khalifa",
    "SerialNumber": "ZHM11xxxxxxxx",
    "PunchLog": {
      "Type": "CheckOut",
      "Temperature": "36.8",
      "FaceMask": false,
      "InputType": "Fingerprint",
      "UserId": "2",
      "LogTime": "2020-09-17 07:48:22 GMT +0530"
    },
    "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
    "Time": "2020-09-17 04:19:03 GMT +0000"
  }
}
Réponse — que votre serveur doit renvoyer
{ "status": "done" }