Verificar una credencial
Dos formas de preguntar si una credencial sirve: una para tu puerta, otra para el mundo.
Hay dos endpoints de verificación y contestan preguntas distintas. Usar el equivocado es el error de integración más común de esta plataforma.
POST/v1/verify
Tu propio lector, con tu llave. Queda asentado en la historia de la credencial.
GET/public/credentials/{code}
Cualquiera, sin llave. Lo que usa un tercero que comprueba un diploma.
En tu propia puerta
POST /v1/verify
curl -X POST https://api.nomi-tech.com/v1/verify \
-H "Authorization: Bearer nomi_sk_live_EXAMPLE" \
-H "Content-Type: application/json" \
-d '{ "code": "…", "location": "North gate" }'code es lo que haya leído el lector: la serie, el código público o la URL de verificación entera que lleva el QR de un certificado. Las tres están impresas en sitios distintos y un lector lee la que le pongan delante.
200 OK
{
"valid": false,
"reason": "revoked",
"state": "revoked",
"credential": { "id": "cred_…", "serial": "…", "issuedAt": "…", "expiresAt": "…" },
"subject": { "externalId": "crm_example_001", "displayName": "Alex Morgan" }
}Verificación pública
GET /public/credentials/{code} devuelve todo lo que un tercero necesita para decidir si creerle a una credencial y nada más: la organización que la emitió, si su dominio está verificado, el estado en palabras (valid, expired, revoked, suspended, not_yet_issued), el nombre de quien la recibió y qué obtuvo. Sin cuenta, sin llave. GET /public/verify?code=… da la misma respuesta para un código que alguien tecleó de un certificado impreso.