Saltar al contenido principal

POST /credentials/validate

Valida los datos de recipientes sin emitir credenciales (dry run). Útil para detectar errores antes de la emisión real.

Request

POST /api/v1/credentials/validate

Headers

HeaderRequeridoDescripción
X-API-KeySiTu API key
Content-TypeSiapplication/json

Body

{
"template_id": "550e8400-e29b-41d4-a716-446655440000",
"recipients": [
{
"email": "[email protected]",
"recipient_name": "Juan Perez",
"result_value": "A"
},
{
"email": "[email protected]",
"recipient_name": "",
"result_value": "Z"
}
]
}

Response

{
"template_id": "550e8400-e29b-41d4-a716-446655440000",
"total": 2,
"valid": 1,
"warnings": 0,
"errors": 1,
"recipients": [
{
"row": 1,
"email": "[email protected]",
"status": "valid",
"errors": [],
"warnings": []
},
{
"row": 2,
"email": "[email protected]",
"status": "error",
"errors": [
"Calificación inválida. Valores permitidos: A, B, C, D, F"
],
"warnings": [
"Did you mean gmail.com?"
]
}
]
}

Status por recipiente

StatusSignificado
validTodos los datos son correctos
warningDatos válidos pero con advertencias (ej: posible typo en email)
errorDatos inválidos, no se podrá emitir

Validaciones realizadas

  • Email: Sintaxis, registros MX del dominio, detección de typos comunes (gmial.com -> gmail.com)
  • Duplicados: Emails repetidos en el mismo batch
  • Campos requeridos: Según la configuración del template
  • Valores permitidos: Para calificaciones con valores predefinidos
  • Créditos: No exceden los disponibles en el template

Ejemplo

curl -X POST "https://app.unicreda.com/api/v1/credentials/validate" \
-H "X-API-Key: uc_live_tu_key_aqui" \
-H "Content-Type: application/json" \
-d '{
"template_id": "550e8400-e29b-41d4-a716-446655440000",
"recipients": [
{"email": "[email protected]", "recipient_name": "Test", "result_value": "A"}
]
}'