Vista Previa de Prueba Facial
Endpoint
POST https://api.verifik.co/v2/zelf-proof/preview
Examina una prueba facial de conocimiento cero para ver sus metadatos y configuración sin realizar verificación biométrica real. Esto es útil para inspeccionar el contenido de la prueba y configuraciones.
Encabezados
| Nombre | Valor |
|---|---|
| Content-Type | application/json |
| Authorization | Bearer <token> |
Parámetros
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
zelfProof | string | Sí | El token de prueba facial encriptada a examinar |
verifierKey | string | No | Clave de verificador para validación adicional |
Solicitud
- Node.js
- PHP
- Python
- Go
const fetch = require("node-fetch");
async function run() {
const res = await fetch("https://api.verifik.co/v2/zelf-proof/preview", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
},
body: JSON.stringify({
os: "DESKTOP",
zelfProof: "AudwN6Jmxms3tEOYQg5fyZCEYLwiDuFFheQfYTmKQCUAJ99y4MWI/7A6ouXW1VIR8fAVCL4rgbNKYR/cjZpS085JPq4vedbB08ZIansX2cW+XPyJjFKRnY5qxRgwUfyzLMrCpu83qdORwfdX3YOXo4Poff0eYNtqho3h+bJB1uaMvK9QHN8uYWR9rxafMqFtNWJWSuC/V3yKeG3eRYSaoNcW6mHycjQMxvVcpDn1fMWK+93/8h12/iyBBbwH3JSlki4LlgaOeP/S8o1CRSrFpmysSpJDoh+pesDIpuTxlK7WMeNvv33n+nj+1oUZ51ijyV/m9CMvY+VjvuMzAZJogHh+dNEi57YWAVZTBBiwu/M02mPXCQcSYNyNCD1EPyFcEEGqVXRZb5fghdi0qpxN57YZ3dspMlmXnlv0Bq6nbnO4/KmuWtZqx/1riFK3ejb+EJu23p281IeXxAMet1+rHgPgQZYs4j7CSIHeGnY9YL1A53Ozb2/bYddQoAdwRx6M6BdtLbUG4XbUB3uZT3azQvf86Um0SnWrsJ1GejiIrlAXliOKqLc/sHY8XNWaDen0WzPB1R5dFi7Sn+egQSf2TA1oN0AhCxlBcJ85yHSnIYMOfLk+NnLgt3ImOcku9dZIWkhpvAcvAPqNx5437kBmo9bWchzZ5idfNhtCpgCkRyz8/yImGYnQH5YFBrsap0/ZeW5ISVOCooxEXFonWrUTjO5hqm/lfWiw16Lq8uvOi8CszvwuSQUN4O7gCdzUzgLoeDBv8XHXRkrTuKkfSPB2slZ3J1xHysMLW/o2Hv6v6e99rDwaL7UaMa/zZ5o1zr87/sz9SBWpQ/t8vGHjk68KmvMnnk3vQOOcrogrDN5fwKPqSwEQp7WnvKhm8ShBYt+T"
}),
});
console.log(await res.json());
}
run();
<?php
$ch = curl_init("https://api.verifik.co/v2/zelf-proof/preview");
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Content-Type: application/json",
"Authorization: Bearer " . getenv("VERIFIK_TOKEN")
]);
$body = json_encode([
"os" => "DESKTOP",
"zelfProof" => "AudwN6Jmxms3tEOYQg5fyZCEYLwiDuFFheQfYTmKQCUAJ99y4MWI/7A6ouXW1VIR8fAVCL4rgbNKYR/cjZpS085JPq4vedbB08ZIansX2cW+XPyJjFKRnY5qxRgwUfyzLMrCpu83qdORwfdX3YOXo4Poff0eYNtqho3h+bJB1uaMvK9QHN8uYWR9rxafMqFtNWJWSuC/V3yKeG3eRYSaoNcW6mHycjQMxvVcpDn1fMWK+93/8h12/iyBBbwH3JSlki4LlgaOeP/S8o1CRSrFpmysSpJDoh+pesDIpuTxlK7WMeNvv33n+nj+1oUZ51ijyV/m9CMvY+VjvuMzAZJogHh+dNEi57YWAVZTBBiwu/M02mPXCQcSYNyNCD1EPyFcEEGqVXRZb5fghdi0qpxN57YZ3dspMlmXnlv0Bq6nbnO4/KmuWtZqx/1riFK3ejb+EJu23p281IeXxAMet1+rHgPgQZYs4j7CSIHeGnY9YL1A53Ozb2/bYddQoAdwRx6M6BdtLbUG4XbUB3uZT3azQvf86Um0SnWrsJ1GejiIrlAXliOKqLc/sHY8XNWaDen0WzPB1R5dFi7Sn+egQSf2TA1oN0AhCxlBcJ85yHSnIYMOfLk+NnLgt3ImOcku9dZIWkhpvAcvAPqNx5437kBmo9bWchzZ5idfNhtCpgCkRyz8/yImGYnQH5YFBrsap0/ZeW5ISVOCooxEXFonWrUTjO5hqm/lfWiw16Lq8uvOi8CszvwuSQUN4O7gCdzUzgLoeDBv8XHXRkrTuKkfSPB2slZ3J1xHysMLW/o2Hv6v6e99rDwaL7UaMa/zZ5o1zr87/sz9SBWpQ/t8vGHjk68KmvMnnk3vQOOcrogrDN5fwKPqSwEQp7WnvKhm8ShBYt+T"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
import os, requests
url = "https://api.verifik.co/v2/zelf-proof/preview"
headers = {
"Content-Type": "application/json",
"Authorization": f"Bearer {os.getenv('VERIFIK_TOKEN')}"
}
payload = {
"os": "DESKTOP",
"zelfProof": "AudwN6Jmxms3tEOYQg5fyZCEYLwiDuFFheQfYTmKQCUAJ99y4MWI/7A6ouXW1VIR8fAVCL4rgbNKYR/cjZpS085JPq4vedbB08ZIansX2cW+XPyJjFKRnY5qxRgwUfyzLMrCpu83qdORwfdX3YOXo4Poff0eYNtqho3h+bJB1uaMvK9QHN8uYWR9rxafMqFtNWJWSuC/V3yKeG3eRYSaoNcW6mHycjQMxvVcpDn1fMWK+93/8h12/iyBBbwH3JSlki4LlgaOeP/S8o1CRSrFpmysSpJDoh+pesDIpuTxlK7WMeNvv33n+nj+1oUZ51ijyV/m9CMvY+VjvuMzAZJogHh+dNEi57YWAVZTBBiwu/M02mPXCQcSYNyNCD1EPyFcEEGqVXRZb5fghdi0qpxN57YZ3dspMlmXnlv0Bq6nbnO4/KmuWtZqx/1riFK3ejb+EJu23p281IeXxAMet1+rHgPgQZYs4j7CSIHeGnY9YL1A53Ozb2/bYddQoAdwRx6M6BdtLbUG4XbUB3uZT3azQvf86Um0SnWrsJ1GejiIrlAXliOKqLc/sHY8XNWaDen0WzPB1R5dFi7Sn+egQSf2TA1oN0AhCxlBcJ85yHSnIYMOfLk+NnLgt3ImOcku9dZIWkhpvAcvAPqNx5437kBmo9bWchzZ5idfNhtCpgCkRyz8/yImGYnQH5YFBrsap0/ZeW5ISVOCooxEXFonWrUTjO5hqm/lfWiw16Lq8uvOi8CszvwuSQUN4O7gCdzUzgLoeDBv8XHXRkrTuKkfSPB2slZ3J1xHysMLW/o2Hv6v6e99rDwaL7UaMa/zZ5o1zr87/sz9SBWpQ/t8vGHjk68KmvMnnk3vQOOcrogrDN5fwKPqSwEQp7WnvKhm8ShBYt+T"
}
r = requests.post(url, json=payload, headers=headers)
print(r.json())
package main
import (
"bytes"
"encoding/json"
"fmt"
"net/http"
"os"
)
func main() {
payload := map[string]interface{}{
"os": "DESKTOP",
"zelfProof": "AudwN6Jmxms3tEOYQg5fyZCEYLwiDuFFheQfYTmKQCUAJ99y4MWI/7A6ouXW1VIR8fAVCL4rgbNKYR/cjZpS085JPq4vedbB08ZIansX2cW+XPyJjFKRnY5qxRgwUfyzLMrCpu83qdORwfdX3YOXo4Poff0eYNtqho3h+bJB1uaMvK9QHN8uYWR9rxafMqFtNWJWSuC/V3yKeG3eRYSaoNcW6mHycjQMxvVcpDn1fMWK+93/8h12/iyBBbwH3JSlki4LlgaOeP/S8o1CRSrFpmysSpJDoh+pesDIpuTxlK7WMeNvv33n+nj+1oUZ51ijyV/m9CMvY+VjvuMzAZJogHh+dNEi57YWAVZTBBiwu/M02mPXCQcSYNyNCD1EPyFcEEGqVXRZb5fghdi0qpxN57YZ3dspMlmXnlv0Bq6nbnO4/KmuWtZqx/1riFK3ejb+EJu23p281IeXxAMet1+rHgPgQZYs4j7CSIHeGnY9YL1A53Ozb2/bYddQoAdwRx6M6BdtLbUG4XbUB3uZT3azQvf86Um0SnWrsJ1GejiIrlAXliOKqLc/sHY8XNWaDen0WzPB1R5dFi7Sn+egQSf2TA1oN0AhCxlBcJ85yHSnIYMOfLk+NnLgt3ImOcku9dZIWkhpvAcvAPqNx5437kBmo9bWchzZ5idfNhtCpgCkRyz8/yImGYnQH5YFBrsap0/ZeW5ISVOCooxEXFonWrUTjO5hqm/lfWiw16Lq8uvOi8CszvwuSQUN4O7gCdzUzgLoeDBv8XHXRkrTuKkfSPB2slZ3J1xHysMLW/o2Hv6v6e99rDwaL7UaMa/zZ5o1zr87/sz9SBWpQ/t8vGHjk68KmvMnnk3vQOOcrogrDN5fwKPqSwEQp7WnvKhm8ShBYt+T",
}
b, _ := json.Marshal(payload)
req, _ := http.NewRequest("POST", "https://api.verifik.co/v2/zelf-proof/preview", bytes.NewBuffer(b))
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer "+os.Getenv("VERIFIK_TOKEN"))
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
var out map[string]interface{}
json.NewDecoder(resp.Body).Decode(&out)
fmt.Println(out)
}
Respuesta
- 200
- 401
- 403
- 409
- 500
{
"data": {
"passwordLayer": "WithPassword",
"publicData": {
"a": "1",
"vida": "true",
"b": "2"
},
"requireLiveness": true
}
}
{
"message": "Authentication required",
"code": "UNAUTHORIZED"
}
{
"message": "Access Forbidden",
"code": "FORBIDDEN"
}
{
"message": "\"zelfProof\" is required",
"code": "MissingParameter"
}
{
"message": "internal_error",
"code": "ERROR"
}
Notas
- El campo
passwordLayerindica si la prueba está protegida con contraseña (WithPasswordoWithoutPassword) publicDatacontiene los datos públicos que se almacenaron con la prueba (esto es visible para cualquiera con la prueba)requireLivenessindica si se requería detección de vitalidad cuando se creó la prueba- Este endpoint no realiza verificación biométrica - solo examina los metadatos de la prueba
- No se cobran créditos por operaciones de vista previa
- El parámetro
oses requerido pero no afecta la funcionalidad de vista previa - Esto es útil para depuración, inspección y comprensión de la configuración de la prueba antes de intentar verificación
- Los metadatos privados no se exponen en modo vista previa por razones de seguridad