---
title: Errores y reintentos
description: Todas las respuestas de error de Human Plugin, cuáles se pueden reintentar con seguridad y cómo reintentar una creación.
canonical: https://developer.unico.io/es/human-plugin/api-reference/errors-and-retries
locale: es
generated_by: markdown-export
---

# Errores y reintentos

El envoltorio del error, la lista completa de respuestas y qué hacer ante cada una.

## Envoltorio

```json
{ "message": "MISSING_CLIENT_ID", "details": [] }
```

`message` identifica el error, y `details` suele estar vacío. Cuando un flujo rechaza una solicitud, por ejemplo por una imagen inválida, la respuesta mantiene este envoltorio con el motivo en `message` y `details`. Consulte [Rechazos](/es/human-plugin/api-reference/create-process#flow-refusals).

## Referencia

| Estado | `message` | Endpoint | ¿Reintentar? |
| --- | --- | --- | --- |
| 400 | `INVALID_REQUEST` | create | No. Corrija la solicitud |
| 400 | `REQUEST_TOO_LARGE` | create | No. Cuerpo superior a 2 MiB |
| 400 | `MISSING_<FIELD>` / `INVALID_<FIELD>` | create | No. `<FIELD>` es el campo en mayúsculas con guiones bajos, por ejemplo `MISSING_CREDENTIAL_VALUE` |
| 401 | Vacío (`""`) | create, selfie | No. Unico rechazó la clave de acceso. Revise `HUMAN_API_ACCESS_KEY` |
| 409 | `CORRELATION_ID_ALREADY_USED` | create | No. Otro proceso tiene ese `correlationId`. Use uno nuevo |
| 422 | `ATTRIBUTE_TYPE_NOT_SUPPORTED` | create | No. Use un código del catálogo |
| 4xx | El `message` del flujo | create | No. El proceso se almacena como fallido |
| 404 | `PROCESS_NOT_FOUND` | get, selfie | No |
| 404 | `SELFIE_NOT_FOUND` | selfie | No. El proceso no tiene selfie disponible |
| 4xx | El `message` del rechazo | selfie | No |
| 503 | `DATABASE_UNAVAILABLE` | todos | Create: vea más abajo. Get y selfie: sí |
| 502 | `UPSTREAM_UNAVAILABLE` | todos | Create: vea más abajo. Get y selfie: sí |
| 500 | `INTERNAL` | todos | Create: vea más abajo |

## Reintentar una creación

Cada creación aceptada inicia un proceso nuevo con un `id` nuevo, y cada `correlationId` puede usarse una sola vez: uno ya utilizado, por un proceso en cualquier estado, se rechaza con `409 CORRELATION_ID_ALREADY_USED`.

- **400, 409, 422 y otros rechazos:** corrija la solicitud antes de enviarla de nuevo.
- **503 `DATABASE_UNAVAILABLE`:** no se almacenó ni se procesó nada. Reintente con el mismo `correlationId`.
- **502 y 500:** la solicitud no fue confirmada. No reintente automáticamente. Para volver a intentarlo, envíe una nueva creación con un `correlationId` nuevo.

Enfoque recomendado para su back-end:

1. Registre cada intento antes de llamar a Human Plugin, con su `correlationId` como clave.
2. Ante un `502` o un `500`, decida según su regla de negocio si inicia un nuevo intento.
3. Mantenga vinculados en sus registros los intentos relacionados.

## Reintentar una lectura

`GET`, de un proceso o de su selfie, se puede reintentar con seguridad. Use backoff y deténgase ante un `404`.

## Límites de tasa

Human Plugin no tiene un limitador de tasa integrado. Aplique límites en su gateway si los necesita.