---
title: Obtener proceso
description: Recupere un proceso existente del contrato de API por su identificador. Se utiliza para reconsultas, ya que los resultados se devuelven de forma sincrónica en la creación.
canonical: https://developer.unico.io/es/dual-api/developers/api-reference/api/get-process
locale: es
generated_by: markdown-export
---

- [/es/](/es/)
- [Referencia de API](/es/dual-api/developers/api-reference/)
- [API](/es/dual-api/developers/api-reference/api/)
- Obtener proceso

**En esta páginaObtener procesoGETRecupere un proceso existente por su identificador. Según el contrato de la API, el resultado ya se devuelve de forma sincrónica al crear el proceso — utilice este endpoint para reconsultas, auditoría y soporte.

advertenciaAntes de recuperar el proceso, revise la configuración de nuestro webhook y las estrategias de fallback — [haga clic aquí](/es/developers/webhooks-and-events/setup).
### Endpoint​

EntornoURL**Producción**`GET https://api.id.unico.app/processes/v1/{processId}`**Sandbox**`GET https://api.id.uat.unico.app/processes/v1/{processId}`
### Solicitud​

Encabezados
EncabezadoValor`Authorization``Bearer <access_token>``APIKEY`Clave API provisionada.
Parámetros de ruta
ParámetroTipoRequeridoDescripción`processId`string (UUID)síIdentificador del proceso devuelto por [Crear proceso](/es/dual-api/developers/api-reference/api/post-processes).
### Ejemplo​

cURLNode.js```
curl -X GET https://api.id.unico.app/processes/v1/$PROCESS_ID \  -H "Authorization: Bearer $TOKEN" \  -H "APIKEY: $API_KEY"
```

```
import fetch from 'node-fetch';const res = await fetch(  `https://api.id.unico.app/processes/v1/${processId}`,  {    headers: {      Authorization: `Bearer ${accessToken}`,      APIKEY: apiKey    }  });const result = await res.json();
```

### Respuestas​

200 OK
El contrato es único — el campo `idCloud.result` contiene el veredicto consolidado de las capacidades utilizadas.
Unico consolida los resultados de las capacidades ejecutadas en un único `idCloud.result`, listo para decidir el siguiente paso de su flujo — sin necesidad de orquestar resultados individuales.
```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "idCloud": {    "result": "approved"  }}
```

CampoTipoDescripción`id`string (UUID)Identificador del proceso.`status`integer`1` (procesando), `2` (divergencia), `3` (finalizado con éxito), `4` (cancelado), `5` (error).
Valores de resultado posibles
idCloud.resultSignificadoAcción recomendadaapprovedPersona real e identidad validada.Continuar con el flujo.deniedIdentidad no validada, falló la verificación de vida o se identificó un riesgo extremo.Finalizar el flujo o redirigir a un flujo alternativo.critical-riskSe identificó un nivel de riesgo crítico.Finalizar el flujo o enviar a revisión manual.high-riskSe identificó un nivel de riesgo alto.Enviar a revisión manual o a un flujo alternativo.retryCaptura o score insuficiente para evaluar.Solicitar al usuario una nueva captura.inconclusiveEvidencia insuficiente para un veredicto.Enviar a revisión manual o a un flujo alternativo.
Los valores devueltos dependen de la receta configurada en su APIKey. Consulte [Flujos](/es/dual-api/developers/api-reference/api/flows) para conocer los valores de resultado que puede devolver cada receta.
Los clientes en Brasil pueden recibir la respuesta por capacidadLa estructura general de la respuesta se mantiene igual — el resultado único es el valor predeterminado.Las integraciones en Brasil pueden recibir los resultados abiertos por capacidad. Cada capacidad habilitada en la APIKey agrega su propio bloque a la respuesta — los campos de las capacidades deshabilitadas se omiten.```
{  "id": "80371b2a-3ac7-432e-866d-57fe37896ac6",  "status": 3,  "unicoId": {    "result": "yes"  },  "riskLevel": {    "result": "inconclusive"  },  "idFace": {    "personId": "a1b2c3d4e5f67890a1b2c3d4e5f67890a1b2c3d4e5f67890a1b2c3d4e5f67890",    "result": "FOUND"  },  "identityFraudsters": {    "result": "inconclusive"  },  "government": {    "serpro": 87  },  "liveness": 1,  "idAge": {    "result": "yes"  },  "cardholderVerification": {    "result": "approved"  }}
```

CampoTipoDescripción`unicoId.result`string`yes`, `no`, `inconclusive` — consulte [Verificación de Identidad](/es/capabilities/identity-verification).`riskLevel.result`string`not_approved`, `critical_risk`, `high_risk`, `inconclusive` — consulte [Clasificación de Riesgo de Fraude](/es/capabilities/fraud-risk-classification).`idFace.result`string`FOUND` — consulte Identificador Facial.`idFace.personId`stringIdentificador opaco estable para el rostro, devuelto junto con `idFace.result = FOUND`. Cuando no se puede identificar ningún rostro en la imagen, el proceso devuelve el error `20532` en lugar de un bloque `idFace`.`identityFraudsters.result`string**Obsoleto.** Utilice `riskLevel` en su lugar. Los clientes con integraciones en curso pueden seguir utilizándolo mientras coordinan la migración con el equipo de su proyecto.`government.serpro`integerPuntuación de similitud Serpro (0–100, -1, -2). Disponible solo en Brasil. Consulte [Retorno de Similitud Serpro](/es/capabilities/serpro-similarity-return).`liveness`integer`1` (aprobado), `2` (fallido) — consulte [Detección de Vida](/es/capabilities/liveness).`idAge.result`string`yes`, `no`, `inconclusive` — consulte [Verificación de Edad](/es/capabilities/age-verification). Disponible solo en Brasil.`score`integerPuntuación de riesgo probabilística. Presente cuando `unicoId.result = inconclusive` y la orquestación del score de riesgo está activa. Los valores positivos indican mayor probabilidad de ser el titular; los valores negativos indican mayor riesgo. Disponible solo en Brasil.`cardholderVerification.result`string`approved`, `unsure` — consulte [Cardholder Verification](/es/capabilities/cardholder-verification). Ausente mientras `status` aún no sea `3` (finalizado). Disponible solo en Brasil.
Los clientes en México pueden recibir el bloque de Verificación RENAPOLa respuesta mantiene la misma estructura y agrega el bloque idGov.Las integraciones en México con Verificación RENAPO habilitada reciben un bloque adicional idGov con el registro que RENAPO tiene para la CURP del usuario. Es una respuesta independiente del resultado de identidad.```
{  "id": "11111111-2222-3333-4444-555555555555",  "status": 3,  "idCloud": { "result": "approved" },  "idGov": {    "government_valid": true,    "curp": "PUEA880304MDFRJN04",    "government_name": "ANA PRUEBA EJEMPLO",    "date_of_birth": "1988-03-04",    "age": 38,    "gender": "F",    "deceased": false,    "is_mexican": true,    "citizenship": "MEXICO",    "state_of_birth": "Ciudad de México",    "state_iso": "MX-CMX",    "issuing_entity_code": "DF",    "municipality_registration": ""  }}
```

CampoTipoDescripción`idGov`objectRegistro de RENAPO para la CURP. Ausente cuando la capacidad no está habilitada. `{}` cuando RENAPO no respondió. Solo México. Consulte [Verificación RENAPO](/es/capabilities/renapo-verification).
### Cuándo usar este endpoint​

El contrato de la API devuelve los resultados de forma sincrónica, por lo que la mayoría de las integraciones no necesitan este endpoint. Utilícelo cuando:

Solo persistió el `processId` y necesita recuperar el resultado completo más adelante (auditoría, soporte).
Sospecha que la respuesta original se perdió en tránsito (error de red después de que la plataforma completó el trabajo).
Está creando una herramienta de back-office que revisa procesos históricos.

### Códigos de error​

400 Bad Request404 Not Found403 Forbidden410 Gone429 Too Many Requests500 Internal Server ErrorCódigoMensajeDescripción`20023`O parâmetro processId não foi informado.Falta el parámetro de ID del proceso.`20002`O parâmetro APIKey não foi informado.Falta el parámetro APIKEY en el encabezado de la solicitud.`20001`O parâmetro authtoken não foi informado.Falta el parámetro del token de integración en el encabezado de la solicitud.CódigoMensajeDescripción`50001`O processo informado não foi encontrado.El proceso no existe en la base de datos.CódigoMensajeDescripción`30017`User does not have permission to perform this action.JWT malformado o usuario sin permiso para realizar esta operación.`10502`O token informado está expirado.Cuando el token de acceso utilizado ha expirado.`10501`O token informado é inválido.El token de autenticación es inválido.`10201`O AppKey informado é inválido.El parámetro APIKEY no fue ingresado o no existe.El proceso existe pero resultó en un error. Devuelve solo `id` y `status: 5`.Se alcanzó el límite de tasa. Cuando su sistema recibe un error HTTP 429, debe implementar mecanismos para prevenir fallos en cascada y evitar empeorar la restricción.
**Mejores prácticas:**

**Período de enfriamiento (backoff):** Detenga o reduzca inmediatamente las solicitudes posteriores de su sistema. No reintente continuamente las solicitudes fallidas en un bucle cerrado.
**Cola y limitación (Queueing & throttling):** Almacene en búfer o ponga en cola las solicitudes salientes de su lado para controlar el flujo de tráfico antes de reenviarlas.
**Backoff exponencial con jitter:** Al reintentar, aumente el tiempo de espera exponencialmente entre intentos (por ejemplo, 1 s, 2 s, 4 s, 8 s) y agregue un pequeño retraso aleatorio ("jitter") para evitar un efecto de manada donde todas las solicitudes en cola reintentan en el mismo milisegundo exacto.

advertenciaEnviar solicitudes continuamente a un endpoint con límite de tasa sin aplicar backoff puede **prolongar el período de restricción** e impactar gravemente el rendimiento operativo de su sistema. Limitar adecuadamente las solicitudes de su lado garantiza una integración más fluida y resiliente.
Para conocer los límites predeterminados, aumentar solicitudes y obtener detalles adicionales, consulte [Límites de tasa](/es/dual-api/developers/api-reference/rate-limits).CódigoMensajeDescripción`99999`Internal failure! Try again laterCuando hay un error interno.
### Flujos​

Una receta es la combinación de capacidades (detección de vida, verificación de identidad, señales de riesgo, documentos...) configurada en la APIKey de su proyecto. Define lo que Unico ejecuta en cada proceso y cómo los resultados se consolidan en el único `result` — no necesita orquestar nada de su lado.
Unico mantiene un catálogo de recetas preestablecidas, nombradas y versionadas (por ejemplo, `byunico-idlive-idunico-oneresponse-std`). Algunas son exclusivas de Brasil, como las que incluyen Score, Serpro o verificación de edad.
¿Qué capacidades ejecuta su proceso?La combinación de capacidades — el flujo de su proyecto — se define en la configuración de su APIKey. Consulte las recetas preestablecidas o hable con su contacto de proyecto de Unico para personalizarla.Última actualización el 8 oct 2026**