RESTful API: comenzi de la serverul dumneavoastră către dispozitiv

Comenzile pe care serverul dumneavoastră le trimite unui dispozitiv prin Gateway, cu JSON de cerere și de răspuns pentru fiecare.

RESTful API Serverul dumneavoastră → Dispozitiv · Operațiunile 12–38

#12

LoadLog

RESTful APIServer → Dispozitiv

Preia de pe dispozitiv jurnalele de pontare dintr-un interval de timp. Interval maxim recomandat: 30 de zile.

Cerere — POST către endpoint-ul dumneavoastră RESTful
{
  "Load": {
    "PunchLog": {
      "Filter": {
        "StartTime": "2020-09-17 00:01:33 GMT +0530",
        "EndTime": "2020-09-17 22:01:33 GMT +0530"
      }
    }
  },
  "OperationID": "j95xfejt3vr1",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns — de la dispozitiv
{
  "Status": "done",
  "OperationID": "j95xfejt3vr1",
  "PunchLog": {
    "ReturnRowCount": "18",
    "Log": [
      { "Type": "CheckOut", "Temperature": 36.8, "InputType": "Face", "UserID": "2", "LogTime": "2020-09-17 16:53:43 GMT +0530", "FaceMask": false },
      { "Type": "CheckOut", "Temperature": 36.6, "InputType": "Palm", "UserID": "1", "LogTime": "2020-09-17 16:54:15 GMT +0530", "FaceMask": false },
      { "Type": "CheckIn",  "Temperature": 36.5, "InputType": "Fingerprint", "UserID": "3", "LogTime": "2020-09-17 09:01:44 GMT +0530", "FaceMask": false }
    ]
  }
}
#13

LoadDeviceInformation

RESTful APIServer → Dispozitiv

Preia de pe dispozitiv detaliile hardware, limitele de capacitate, numărul de utilizatori/șabloane înregistrate și datele licenței.

Cerere — POST către endpoint-ul dumneavoastră RESTful
{
  "Load": { "DeviceInformation": "All" },
  "OperationID": "j95xfejt3vr1",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-08-28 12:01:33 GMT +0530"
}
Răspuns — de la dispozitiv
{
  "Status": "done",
  "OperationID": "j95xfejt3vr1",
  "StatusCode": 0,
  "DeviceInformation": {
    "DeviceModel": "Hawking Plus (f38+)",
    "Manufacturer": "Dheeram Innovations",
    "MacAddress": "00-01-A9-16-27-AB",
    "StartDate": "03/04/2024",
    "EndDate": "03/04/2025",
    "LastConnectedTime": "13-11-2025 18:03:48 GMT +0530",
    "RegisteredUsers": "0",
    "RegisteredFaces": "0",
    "RegisteredFingerprints": "0",
    "MaximumFacesSupported": "5000",
    "MaximumFingerprintsSupported": "10000",
    "MaximumAttendanceLogsSupported": "500000"
  }
}
#14

AddUserWithCard

RESTful APIServer → Dispozitiv

Înregistrează un utilizator nou având ca unică credențială un număr de card/RFID.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "Card", "UserID": "100", "Data": "102836" }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#15

AddUserWithPassword

RESTful APIServer → Dispozitiv

Înregistrează un utilizator nou având ca unică credențială un PIN/o parolă numerică.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "Password", "UserID": "100", "Data": "123456" }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#16

AddUserWithFace

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu un șablon facial. Data este JPEG codificat Base64 sau binar specific dispozitivului. Size este lungimea în octeți.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "Face", "UserID": "100", "Size": "25072", "Index": "0", "Data": "/9j/4AAQSkZJRgABAQAAAQABAAD..." }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#17

AddUserWithFingerPrint

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu un singur șablon de amprentă. Index specifică locația degetului (0–9).

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "Fingerprint", "UserID": "100", "Size": "1176", "Index": "0", "Data": "TW9TUzIxAAAELC4ECAUHCc7Q..." }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#18

AddUserWithPalm

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu un șablon al venelor palmei. Data este binarul palmei codificat Base64.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "Palm", "UserID": "100", "Index": "0", "Data": "apUBEOAHv98IAAwAAc/qAgzWDlDL..." }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#19

AddUserWithUserPhoto

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu o fotografie de profil stocată pe dispozitiv. Data este JPEG codificat Base64.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [{ "Type": "UserPhoto", "UserID": "100", "Data": "/9j/4AAQSkZJRgABAQAAAQABAAD..." }]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#20

AddUserWithCardAndPassword

RESTful APIServer → Dispozitiv

Înregistrează un utilizator atât cu un număr de card, cât și cu un PIN — două intrări în matricea Template.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",     "UserID": "100", "Data": "102836" },
      { "Type": "Password", "UserID": "100", "Data": "123456" }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#21

AddUserWithCardAndFingerPrint

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu un număr de card și un șablon de amprentă.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",        "UserID": "100", "Data": "102836" },
      { "Type": "Fingerprint", "UserID": "100", "Size": "1176", "Index": "0", "Data": "TW9TUzIxAAAELC4E..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#22

AddUserWithPalmAndFace

RESTful APIServer → Dispozitiv

Înregistrează un utilizator atât cu un șablon al venelor palmei, cât și cu unul facial.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Palm", "UserID": "100", "Index": "0", "Data": "apUBEOAHv98IAAwA..." },
      { "Type": "Face", "UserID": "100", "Size": "25072", "Index": "0", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#23

AddUserWithCard_FingerPrintAndFace

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu card, amprentă și față — trei șabloane.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",        "UserID": "100", "Data": "102836" },
      { "Type": "Fingerprint", "UserID": "100", "Size": "1176", "Index": "0", "Data": "TW9TUzIxAAAELC4E..." },
      { "Type": "Face",        "UserID": "100", "Size": "25072", "Index": "0", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#24

AddUserWithCard_PalmAndUserPhoto

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu card, venele palmei și fotografie de profil — trei șabloane.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",      "UserID": "100", "Data": "102836" },
      { "Type": "Palm",      "UserID": "100", "Index": "0", "Data": "apUBEOAHv98IAAwA..." },
      { "Type": "UserPhoto", "UserID": "100", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#25

AddUserWithCard_Password_FingerPrintAndFace

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu card, parolă, amprentă și față — patru șabloane.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",        "UserID": "100", "Data": "102836" },
      { "Type": "Password",    "UserID": "100", "Data": "123456" },
      { "Type": "Fingerprint", "UserID": "100", "Size": "1176", "Index": "0", "Data": "TW9TUzIxAAAELC4E..." },
      { "Type": "Face",        "UserID": "100", "Size": "25072", "Index": "0", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#26

AddUserWithCard_Password_PalmAndUserPhoto

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu card, parolă, venele palmei și fotografie de profil — patru șabloane.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",      "UserID": "100", "Data": "102836" },
      { "Type": "Password",  "UserID": "100", "Data": "123456" },
      { "Type": "Palm",      "UserID": "100", "Index": "0", "Data": "apUBEOAHv98IAAwA..." },
      { "Type": "UserPhoto", "UserID": "100", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#27

AddUserWithCard_FingerPrint_Password_Face_PalmAndUserPhoto

RESTful APIServer → Dispozitiv

Înregistrează un utilizator cu toate cele șase tipuri de credențiale — card, amprentă, parolă, față, palmă și fotografie de profil.

Cerere
{
  "Add": {
    "User": { "UserID": "100", "FirstName": "Manu", "LastName": "Mona", "UserType": "USER" },
    "Template": [
      { "Type": "Card",        "UserID": "100", "Data": "102836" },
      { "Type": "Password",    "UserID": "100", "Data": "123456" },
      { "Type": "Fingerprint", "UserID": "100", "Size": "1176", "Index": "0", "Data": "TW9TUzIxAAAELC4E..." },
      { "Type": "Face",        "UserID": "100", "Size": "25072", "Index": "0", "Data": "/9j/4AAQSkZJRgAB..." },
      { "Type": "Palm",        "UserID": "100", "Index": "0",    "Data": "apUBEOAHv98IAAwA..." },
      { "Type": "UserPhoto",   "UserID": "100", "Data": "/9j/4AAQSkZJRgAB..." }
    ]
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#28

AddUserWithoutTemplate

RESTful APIServer → Dispozitiv

Creează pe dispozitiv o înregistrare de utilizator fără date biometrice. Util pentru preînregistrare înainte de înrolarea separată a șabloanelor.

Cerere
{
  "Add": {
    "User": { "UserID": "1", "FirstName": "Manu", "LastName": "Mona", "UserType": "User" }
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#29

DeleteUser

RESTful APIServer → Dispozitiv

Șterge de pe dispozitiv un anumit utilizator și toate șabloanele sale biometrice.

Cerere
{
  "Delete": { "User": { "UserID": "User123" } },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-11 16:15:31 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#30

DeleteAllUser

RESTful APIServer → Dispozitiv

Șterge de pe dispozitiv toți utilizatorii și șabloanele lor biometrice. Ireversibil.

Distructiv. Toți utilizatorii înrolați și toate șabloanele vor fi șterse definitiv de pe dispozitiv.
Cerere
{
  "Delete": { "User": "All" },
  "OperationID": "j95xfejt3vr1",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "j95xfejt3vr1", "StatusCode": 0 }
#31

DeleteLogAll

RESTful APIServer → Dispozitiv

Șterge toate jurnalele de pontare de pe dispozitiv. Înregistrările utilizatorilor și șabloanele nu sunt afectate.

Cerere
{
  "Delete": { "Log": "All" },
  "OperationID": "j95xfejt3vr1",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "j95xfejt3vr1", "StatusCode": 0 }
#32

DeleteAttendancePhoto

RESTful APIServer → Dispozitiv

Șterge toate fotografiile de pontare stocate pe dispozitiv. Se aplică dispozitivelor cu capacitate de captură foto.

Cerere
{
  "Delete": { "PunchPhoto": "All" },
  "OperationID": "j95xfejt3vr1",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "j95xfejt3vr1", "StatusCode": 0 }
#33

ResendAttendance

RESTful APIServer → Dispozitiv

Comandă dispozitivului să retrimită către serverul dumneavoastră, prin Callback, jurnalele de pontaj dintr-un interval de timp. Util pentru recuperarea înregistrărilor ratate.

Cerere
{
  "OperationID": "j95xfejt3vr1",
  "Resend": {
    "PunchLog": {
      "Filter": {
        "StartTime": "2020-09-17 15:49:33 GMT +0530",
        "EndTime": "2020-09-17 16:20:33 GMT +0530"
      }
    }
  },
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "j95xfejt3vr1", "StatusCode": 0 }
#34

ResendAllUser

RESTful APIServer → Dispozitiv

Comandă dispozitivului să retrimită către serverul dumneavoastră, prin Callback, toate datele utilizatorilor înregistrați (profiluri și șabloane).

Cerere
{
  "OperationID": "j95xfejt3vr1",
  "Resend": { "User": "All" },
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 12:01:33 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "j95xfejt3vr1", "StatusCode": 0 }
#35

EnrollFingerPrint

RESTful APIServer → Dispozitiv

Declanșează pe dispozitiv o sesiune de înrolare a amprentei. Utilizatorul trebuie să fie prezent fizic la dispozitiv.

Cerere
{
  "Enroll": {
    "User": { "UserID": "3", "Type": "Fingerprint", "FirstName": "Rajesh", "LastName": "Ragavendhar" }
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2025-09-25 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#36

UpdateAccessTime

RESTful APIServer → Dispozitiv

Stabilește o fereastră de acces limitată în timp pentru un utilizator. Utilizatorul se poate autentifica doar în intervalul de început–sfârșit specificat.

Cerere
{
  "Update": {
    "AccessTime": { "UserID": "20", "Start": "2022-07-11 00:00:00", "End": "2022-07-11 23:59:59" }
  },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-11 16:39:29 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#37

EnableUser

RESTful APIServer → Dispozitiv

Reactivează un utilizator dezactivat anterior, restabilindu-i posibilitatea de a se autentifica pe dispozitiv.

Cerere
{
  "Update": { "User": { "UserID": "1", "Access": "enable" } },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }
#38

DisableUser

RESTful APIServer → Dispozitiv

Dezactivează un utilizator fără a-l șterge. Înregistrarea și șabloanele sunt păstrate, dar autentificarea este blocată până la reactivare.

Cerere
{
  "Update": { "User": { "UserID": "1", "Access": "disable" } },
  "OperationID": "1jxpjeoasu8wl",
  "AuthToken": "COJJ7eiiPBGUfmIQPvh2PJWWDLX7OuKs",
  "Time": "2020-09-17 11:09:09 GMT +0530"
}
Răspuns
{ "Status": "done", "OperationID": "1jxpjeoasu8wl", "StatusCode": 0 }