Introducción

Esta documentación tiene como objetivo proporcionar toda la información que necesita para trabajar con nuestra API.

El límite de llamadas por cliente es de 60 peticiones por minuto.

Las respuestas son enviadas en formato JSON.

Autenticación

Para todas las peticiones es necesario agregar en la cabecera "Bearer {token}".

Para generar un token es necesario consumir el método de Login. Los tokens tienen la vigencia asignada al hacer un login definida en minutos.

Login

Iniciar sesión

POST
http://localhost
/api/login

El método de login requiere usuario y contraseña. Los accesos los encuentra dentro de su deployment en Control de Acceso -> Dispositivos en el botón "API".

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/login" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"usuario\": \"dwXdEgOSDd2Mc0DFsHzq\",
    \"password\": \"$L,0Z$13#-ARK%4V3M1$vQFE$4Yhiy\"
}"
Response sample:

Dispositivos

Crear

POST
http://localhost
/api/control-acceso/dispositivo/{numero_serie}
requires authentication

Permite dar de alta un nuevo dispositivo de acceso para hacer uso de la API.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/control-acceso/dispositivo/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nombre\": \"Acceso general\",
    \"password\": \"Pdlj4_4$sk2\"
}"
Response sample:
{
    "mensaje": "Se creó el dispositivo exitosamente"
}

Actualizar

PUT
http://localhost
/api/control-acceso/dispositivo/{numero_serie}
requires authentication

Actualiza datos del dispositivo.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/dispositivo/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"nombre\": \"Entrada principal\",
    \"numero_serie\": \"F0499483274\",
    \"password\": \"pas4f123$rf\"
}"
Response sample:
{
    "mensaje": "Dispositivo actualizado exitosamente"
}

Eliminar

DELETE
http://localhost
/api/control-acceso/dispositivo/{numero_serie}
requires authentication

Elimina dispositivo de acceso para uso en la API.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/dispositivo/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "mensaje": "Dispositivo eliminado exitosamente"
}

Capacidades

GET
http://localhost
/api/control-acceso/capacidades/{numero_serie}
requires authentication

Obtiene las capacidades del hardware del equipo de acceso.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/capacidades/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "soporta_tarjeta": true,
    "soporta_huella": true,
    "soporta_rostro": true,
    "modelo": "DS-K1T341CMFW",
    "firmware": "V3.3.8",
    "soporta_webhook": true,
    "soporta_fecha_hora": true,
    "soporta_apertura_puerta": true,
    "tipos_autenticacion_soportada": "cardAndPw,card,fp,fpAndPw,fpOrCard,fpAndCard,fpAndCardAndPw,faceOrFpOrCardOrPw,faceAndFp,faceAndPw,faceAndCard,face,faceAndFpAndCard,faceAndPwAndFp,fpOrface,cardOrFace,cardOrFaceOrFp",
    "soporta_password": true,
    "cantidad_puertas": 1,
    "limite_usuarios": 3000,
    "limite_tarjetas": 3000,
    "limite_rostros": 3000,
    "usuarios_registrados": 3,
    "soporta_captura_huella": true,
    "soporta_captura_rostro": true,
    "cantidad_rostros_registrados": 3,
    "soporta_deteccion_cubrebocas": true,
    "soporta_deteccion_casco": false,
    "soporta_deteccion_temperatura": false,
    "soporta_capturar_tarjeta": false,
    "cantidad_tarjetas_registradas": 0,
    "errores": []
}

Reiniciar

GET
http://localhost
/api/control-acceso/reiniciar/{numero_serie}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/reiniciar/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "mensaje": "El equipo ya está reiniciandose"
}

Obtener fecha y hora

GET
http://localhost
/api/control-acceso/fecha-hora/{numero_serie}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/fecha-hora/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "fecha_hora": "2023-08-05T11:09:36-06:00"
}

Configurar fecha y hora

PUT
http://localhost
/api/control-acceso/fecha-hora/{numero_serie}
requires authentication

Actualiza la fecha y hora del dispositivo.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/fecha-hora/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"fecha_hora\": \"2022-04-20T12:52:58-05:00\"
}"
Response sample:
{
    "mensaje": "Hora y fecha actualizada correctamente."
}

Estatus

GET
http://localhost
/api/control-acceso/estatus/{numero_serie}
requires authentication

Sirve para validar si un dispositivo se encuentra en línea.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/estatus/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "en_linea": true,
    "canales": 1
}

Servidor del dispositivo

GET
http://localhost
/api/control-acceso/servidor/{numero_serie}
requires authentication

Obtiene el servidor ISUP al que tiene que apuntar el dispositivo.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/servidor/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
      "g1.opendesk.mx"
  }

Puertas

Parámetros de puerta

PUT
http://localhost
/api/control-acceso/puerta-parametros/{numero_serie}
requires authentication

Permite asignar un nombre a la puerta y el tiempo de apertura del relevador.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/puerta-parametros/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"puerta\": 1,
    \"tiempo\": 5,
    \"nombre\": \"5\"
}"
Response sample:
{
    "mensaje": "Parámetros de puerta actualizados correctamente"
}

Comando a puerta

PUT
http://localhost
/api/control-acceso/puerta/{numero_serie}
requires authentication

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/puerta/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"puerta\": 1,
    \"comando\": \"abrir\"
}"
Response sample:
{
    "mensaje": "Comando de puerta ejecutado correctamente"
}

Eventos

Asignar webhook

PUT
http://localhost
/api/control-acceso/webhook/{numero_serie}
requires authentication

Al configurar este parámetro, el dispositivo de acceso comenzará a enviar todos los eventos en tiempo real de acceso. Es necesario revisar la documentación de Hikvision para validar como llega dicha información.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/webhook/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"https:\\/\\/miservidor.com\\/webhook\\/<id_dispositivo>\",
    \"puerto\": 443
}"
Response sample:
{
    "mensaje": "Se registró webhook correctamente."
}

Eliminar webhook

DELETE
http://localhost
/api/control-acceso/webhook/{numero_serie}
requires authentication

Desuscribe el dispositivo a cualquier webhook previamente configurado.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/webhook/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "mensaje": "Se desuscribió webhook exitosamente."
}

Obtener eventos

POST
http://localhost
/api/control-acceso/eventos/{numero_serie}
requires authentication

Obtiene los eventos del dispositivo en el rango de fechas establecido. El inicio y fin deben estar este formato: 2022-01-03T14:16:59-06:00. El idenficidaor ayuda a la indexación de búsqueda con paginación. La posición es la página de los eventos que regresa la consulta.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/control-acceso/eventos/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"inicio\": \"2023-08-01T14:16:59-06:00\",
    \"fin\": \"2023-08-02T14:16:59-06:00\",
    \"identificador_busqueda\": \"1612382692\",
    \"posicion\": \"0\"
}"
Response sample:
{
    "eventos": {
        "AcsEventSearchResult": {
            "MatchList": [
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "18",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Alfredo Jiménez",
                    "serialNo": 1086,
                    "time": "2023-08-02T11:10:28-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1087,
                    "time": "2023-08-02T11:10:28-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1088,
                    "time": "2023-08-02T11:10:33-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1089,
                    "time": "2023-08-02T11:11:03-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "11",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Héctor Jiménez",
                    "serialNo": 1090,
                    "time": "2023-08-02T11:12:34-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1091,
                    "time": "2023-08-02T11:12:34-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1092,
                    "time": "2023-08-02T11:12:39-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1093,
                    "time": "2023-08-02T11:13:09-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "17",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Pablo Sepulveda",
                    "serialNo": 1094,
                    "time": "2023-08-02T11:17:43-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1095,
                    "time": "2023-08-02T11:17:43-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "17",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Pablo Sepulveda",
                    "serialNo": 1096,
                    "time": "2023-08-02T11:17:45-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1097,
                    "time": "2023-08-02T11:17:50-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1098,
                    "time": "2023-08-02T11:18:20-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "17",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Pablo Sepulveda",
                    "serialNo": 1099,
                    "time": "2023-08-02T12:43:01-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1100,
                    "time": "2023-08-02T12:43:01-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1101,
                    "time": "2023-08-02T12:43:06-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1102,
                    "time": "2023-08-02T12:43:36-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "11",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Héctor Jiménez",
                    "serialNo": 1103,
                    "time": "2023-08-02T12:59:18-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1104,
                    "time": "2023-08-02T12:59:18-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1105,
                    "time": "2023-08-02T12:59:23-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1106,
                    "time": "2023-08-02T12:59:53-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "18",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Alfredo Jiménez",
                    "serialNo": 1107,
                    "time": "2023-08-02T13:04:50-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1108,
                    "time": "2023-08-02T13:04:50-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1109,
                    "time": "2023-08-02T13:04:55-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "11",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Héctor Jiménez",
                    "serialNo": 1110,
                    "time": "2023-08-02T13:05:18-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1111,
                    "time": "2023-08-02T13:05:18-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 22,
                    "serialNo": 1112,
                    "time": "2023-08-02T13:05:23-06:00",
                    "type": 0
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 28,
                    "serialNo": 1113,
                    "time": "2023-08-02T13:05:53-06:00",
                    "type": 0
                },
                {
                    "cardReaderNo": 1,
                    "cardType": 1,
                    "currentVerifyMode": "faceOrFpOrCardOrPw",
                    "doorNo": 1,
                    "employeeNoString": "17",
                    "major": 5,
                    "mask": "no",
                    "minor": 75,
                    "name": "Pablo Sepulveda",
                    "serialNo": 1114,
                    "time": "2023-08-02T13:42:28-06:00",
                    "type": 0,
                    "userType": "normal"
                },
                {
                    "currentVerifyMode": "invalid",
                    "doorNo": 1,
                    "major": 5,
                    "mask": "unknown",
                    "minor": 21,
                    "serialNo": 1115,
                    "time": "2023-08-02T13:42:28-06:00",
                    "type": 0
                }
            ],
            "numOfMatches": 30,
            "responseStatusStrg": "MORE",
            "searchID": "1612382692",
            "totalMatches": 41
        }
    }
}

Personas

Crear

POST
http://localhost
/api/control-acceso/persona/{numero_serie}
requires authentication

Crea una nueva persona para posteriormente poder asignarle biométricos.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/control-acceso/persona/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"P034\",
    \"nombre\": \"Pedro Perez\",
    \"tipo\": \"visitor\",
    \"limiteVisitas\": \"1\",
    \"password\": \"8472\",
    \"tipoAutenticacion\": \"face\",
    \"puertas\": \"1\",
    \"inicio\": \"2021-12-01T01:00:00\",
    \"fin\": \"2030-12-31T23:59:59\"
}"
Response sample:
{
    "mensaje": "Se registró la persona en el dispositivo exitosamente"
}

Actualizar

PUT
http://localhost
/api/control-acceso/persona/{numero_serie}
requires authentication

Actualiza una persona previamente creada, el id debe estar previamente registrado.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/persona/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"P034\",
    \"nombre\": \"Pedro Perez\",
    \"tipo\": \"visitor\",
    \"limiteVisitas\": \"1\",
    \"password\": \"8472\",
    \"tipoAutenticacion\": \"face\",
    \"puertas\": \"1\",
    \"inicio\": \"2021-12-01T01:00:00\",
    \"fin\": \"2030-12-31T23:59:59\"
}"
Response sample:
{
    "mensaje": "Se actualizó la persona en el dispositivo exitosamente"
}

Eliminar

DELETE
http://localhost
/api/control-acceso/persona/{numero_serie}
requires authentication

Elimina una persona por id.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/persona/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"id\": \"P034\"
}"
Response sample:
{
    "mensaje": "Se eliminó la persona en el dispositivo exitosamente"
}

Tarjetas

Obtener

GET
http://localhost
/api/control-acceso/tarjeta/{numero_serie}
requires authentication

Obtiene la útlima tarjeta con registro fallido del biométrico para posteriormente enrolarla.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274
Request sample:
curl --request GET \
    --get "http://localhost/api/control-acceso/tarjeta/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
Response sample:
{
    "numero_tarjeta": "3558887621"
}

Asignar

PUT
http://localhost
/api/control-acceso/tarjeta/{numero_serie}
requires authentication

Asigna una tarjeta a una persona previamente registrada.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/tarjeta/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"persona_id\": \"P034\",
    \"tarjeta\": \"3558887621\"
}"
Response sample:
{
    "mensaje": "Se asignó la tarjeta exitosamente"
}

Eliminar

DELETE
http://localhost
/api/control-acceso/tarjeta/{numero_serie}
requires authentication

Elimina una tarjeta del biométrico.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/tarjeta/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"tarjeta\": \"3558887621\"
}"
Response sample:
{
    "mensaje": "Se eliminó la tarjeta exitosamente"
}

Huellas

Obtener

POST
http://localhost
/api/control-acceso/huella/{numero_serie}
requires authentication

Pone el biométrico en modo enrolamiento para obtener el binario de la huella.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/control-acceso/huella/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"dedo\": 1
}"
Response sample:
{
    "dedo": 1,
    "huella": "MzAxGzZNFViwBU6FJVicfEr9JiicZV6NJjiU3oRtJjjI6M+JJWjkePKlJXjYbeb1Jkjcaw6BJjjM2x5ZJXjQgj4ZJTisg0pBJDiID1fNJEiIgnYRJTi0fHxFJCisCawVJTjIegWmFUjc6CT5Fji4ZSo9Fxig3kJ1FxiYYUpFFyig2b55J0jgaeJBJ0jg4N3dJyjwbPmhFkiYZf91JiiQ4wm+JmjIcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYhMAoROHAt0E6I92ITV3A95QHxMkoA18XBUBU9ABfOwqRnNzD3o6H3OBrgV4jzYhMUYCZY8qEkF1DIJKXmCAuQAFtRURwdwKg0JJgxLhFWkhEjES6Adr/BQBXeQTYXxDdWEhGGUOSDJS6hbgcDkCJEAZ40ckELSIEt7uSjI34QsPawogcwYacAAAAAAAxHM=",
    "calidad": 98
}

Asignar

PUT
http://localhost
/api/control-acceso/huella/{numero_serie}
requires authentication

Asigna una huella previamente capturada a una persona.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/huella/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"dedo\": 1,
    \"persona_id\": \"P034\",
    \"huella\": \"MzAxGzZNFViwBU6FJVicfEr9JiicZV6NJjiU3oRtJjjI6M+JJWjkePKlJXjYbeb1Jkjcaw6BJjjM2x5ZJXjQgj4ZJTisg0pBJDiID1fNJEiIgnYRJTi0fHxFJCisCawVJTjIegWmFUjc6CT5Fji4ZSo9Fxig3kJ1FxiYYUpFFyig2b55J0jgaeJBJ0jg4N3dJyjwbPmhFkiYZf91JiiQ4wm+JmjIcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAYhMAoROHAt0E6I92ITV3A95QHxMkoA18XBUBU9ABfOwqRnNzD3o6H3OBrgV4jzYhMUYCZY8qEkF1DIJKXmCAuQAFtRURwdwKg0JJgxLhFWkhEjES6Adr\\/BQBXeQTYXxDdWEhGGUOSDJS6hbgcDkCJEAZ40ckELSIEt7uSjI34QsPawogcwYacAAAAAAAxHM=\"
}"
Response sample:
{
    "mensaje": "Se asignó la huella digital exitosamente"
}

Eliminar

DELETE
http://localhost
/api/control-acceso/huella/{numero_serie}
requires authentication

Elimina una huella previamente asignada a una persona.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/huella/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"dedo\": 1,
    \"persona_id\": \"P034\"
}"
Response sample:
{
    "mensaje": "Se eliminó la huella digital exitosamente."
}

Rostros

Asignar

POST
http://localhost
/api/control-acceso/rostro/{numero_serie}
requires authentication

Asigna un archivo de imagen con el rostro a una persona.

Headers

Content-Type
Example:
multipart/form-data
Accept
Example:
multipart/form-data

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request POST \
    "http://localhost/api/control-acceso/rostro/F0499483274" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: multipart/form-data" \
    --form "persona_id=P034"\
    --form "rostro=@/private/var/folders/f8/17k4lngd5n97r9nh902qd6yh0000gn/T/phpkGDImX" 
Response sample:
{
    "mensaje": "Se registró el rostro exitosamente"
}

Eliminar

DELETE
http://localhost
/api/control-acceso/rostro/{numero_serie}
requires authentication

Elimina el rostro previamente asignado a una persona.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request DELETE \
    "http://localhost/api/control-acceso/rostro/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"persona_id\": \"P034\"
}"
Response sample:
{
    "mensaje": "Se eliminó el rostro exitosamente."
}

Políticas

Cubrebocas

PUT
http://localhost
/api/control-acceso/cubrebocas/{numero_serie}
requires authentication

Asigna las políticas de detección de cubrebocas si el dispositivo lo soporta.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/cubrebocas/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"solicitar\": true,
    \"politica\": \"SOLO_ADVERTIR\"
}"
Response sample:
{
    "mensaje": "Se actualizó la política de cubrebocas exitosamente."
}

Casco

PUT
http://localhost
/api/control-acceso/casco/{numero_serie}
requires authentication

Asigna las políticas de detección de casco si el dispositivo lo soporta.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/casco/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"solicitar\": true,
    \"politica\": \"SOLO_ADVERTIR\"
}"
Response sample:
{
    "mensaje": "Se actualizó la política de casco exitosamente."
}

Temperatura

PUT
http://localhost
/api/control-acceso/temperatura/{numero_serie}
requires authentication

Asigna las políticas de detección de temperatura si el dispositivo lo soporta.

Headers

Content-Type
Example:
application/json
Accept
Example:
application/json

URL Parameters

numero_serie
string
required
Example:
F0499483274

Body Parameters

Request sample:
curl --request PUT \
    "http://localhost/api/control-acceso/temperatura/F0499483274" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"medir_temperatura\": true,
    \"apertura_puerta_temperatura_anormal\": true,
    \"apertura_puerta_sin_registro_persona\": true,
    \"temperatura_minima\": \"35\",
    \"temperatura_maxima\": \"38.5\"
}"
Response sample:
{
    "mensaje": "Se actualizó la política de temperatura exitosamente."
}