Actualizar Persona
https://api.apptenticate.com/api/v3/biometrics/recognizer/persons/<id>/
Esta operación permite actualizar los campos “citizen_id”, “name”, “image” o “is_blocked” de una Persona dentro del proyecto asignado para el servicio Recognizer. Como el método es PATCH se pueden omitir los campos que no se quieren modificar
Datos de la petición
| Campo | Tipo | Descripción |
|---|---|---|
| id | integer | identificador único dentro de Recognizer, este es el que te permite obtener, actualizar o eliminar a la persona. No confundir con citizen_id |
| citizen_id | string | Cédula de identidad o algún identificador único de la persona |
| name | string | Nombre de la persona |
| image | file | Imagen selfie de la persona. Cualquier formato de imagen válido. Menor a 2MB |
| is_blocked | bool | Indica si la persona está bloqueada o no |
Ejemplo de petición
- Shell
- Node
- Python
Request
curl --location --request PATCH 'https://api.apptenticate.com/api/v3/biometrics/recognizer/persons/<id>/' \
--header 'Authorization: Bearer <jwt_token>' \
--form 'citizen_id="<cédula>"' \
--form 'name="<nombre>"' \
--form 'image=@"<ruta_archivo>"' \
Instalación
npm install axios form-data
Request
const axios = require('axios')
const FormData = require('form-data')
const fs = require('fs')
let data = new FormData()
data.append('citizen_id', '<cédula>')
data.append('name', '<nombre>')
data.append('image', fs.createReadStream('<ruta_archivo>'))
let config = {
method: 'post',
maxBodyLength: Infinity,
url: 'https://api.apptenticate.com/api/v3/biometrics/recognizer/persons/',
headers: {
Authorization: 'Bearer <jwt_token>',
...data.getHeaders()
},
data: data
}
axios
.request(config)
.then((response) => {
console.log(JSON.stringify(response.data))
})
.catch((error) => {
console.log(error)
})
Instalación
python -m pip install requests
Request
import requests
url = "https://api.apptenticate.com/api/v3/biometrics/recognizer/persons/"
payload = {'citizen_id': '<cédula>',
'name': '<nombre>'}
files=[
('image',('<nombre_archivo>',open('<ruta_archivo>','rb'),'image/jpeg'))
]
headers = {
'Authorization': 'Bearer <jwt_token>'
}
response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.text)
Datos de la respuesta
Si la persona es creada con éxito, el servicio retornará un objeto JSON con la siguiente estructura:
| Campo | Tipo | Descripción |
|---|---|---|
| id | file | identificador único dentro de Recognizer, este es el que te permite actualizar o eliminar la persona |
| citizen_id | string | Cédula de identidad o algún identificador único de la persona |
| name | string | Nombre de la persona |
| image | string | URL de la imagen de la persona |
| is_blocked | bool | Indica si la persona está bloqueada o no |
| created_at | string | Fecha de creación de la persona |
| agreed_terms | bool | Indica si la persona aceptó los términos y condiciones del servicio Recognizer |
Ejemplo de respuesta exitosa
status_code: 201
{
"id": 47662684,
"citizen_id": "<cédula>",
"name": "<nombre>",
"image": "<image_url>",
"is_blocked": false,
"created_at": "2023-11-13T10:20:46.865685-05:00",
"agreed_terms": false
}
Ejemplo de respuesta con rechazo
status_code: 400
{
"error": "Ya existe una persona registrada con esa identificación",
"error_code": 903
}
Códigos de rechazo
En caso de que la petición no sea exitosa, se enviará un código de rechazo en la respuesta. Los códigos de rechazo posibles son:
| Código | Mensaje |
|---|---|
901 | Imagen demasiado grande. Tamaño máximo permitido: 2MB |
902 | No existe persona registrada con esa identificación |
903 | Ya existe una persona registrada con esa identificación |
904 | No se detectaron rostros en la imagen |
905 | Más de un rostro detectado, solo se permiten imágenes con un rostro |