Cómo funciona la API
El funcionamiento general, no la lista exhaustiva de rutas: lo suficiente para saber en pocos minutos si Todis encaja con lo que necesitas.
En tres pasos
Te autenticas con el token recibido por email al registrarte.
Envías una prueba a Todis, directamente o mediante un flujo guiado con la cartera de tu usuario.
Recibes un resultado claro: verificado o no, con solo la información solicitada.
Autenticarte
Cada llamada usa el token recibido por email al registrarte, en la
cabecera Authorization: Bearer <token>. Un token
ausente, inválido o caducado siempre devuelve un error 401.
Dos formas de integrar
Según si ya tienes la prueba de tu usuario en mano, o prefieres que Todis gestione el intercambio con su cartera.
Verificación directa
Ya has recibido la prueba de tu usuario (SD-JWT VC o mdoc) por otro medio. Basta con una sola llamada HTTP para verificarla:
curl -X POST https://verify.todis.eu/verify/sd-jwt-vc \
-H "Authorization: Bearer TU_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"presentation": "<prueba recibida de la cartera>",
"country_code": "FR"
}'
country_code deja que Todis resuelva
automáticamente el emisor a través del registro oficial de la
UE. También puedes indicar directamente su clave pública con
issuer_public_key_pem si ya la conoces.
Flujo completo (OpenID4VP)
Pides a Todis que cree una sesión de verificación. Tu usuario escanea un código QR o abre su cartera, que envía su respuesta directamente a Todis. Después recuperas el resultado mediante el identificador de la sesión.
¡Es el método que más simplifica tu integración: tu aplicación nunca tiene que recibir ni interpretar la respuesta bruta de la cartera, recibe directamente un resultado ya verificado por Todis!
Quién decide qué se comparte
En una cartera europea, cada dato (la edad, un título, un estado) está protegido por separado con su propia prueba criptográfica. La cartera solo adjunta a su respuesta las pruebas de los datos que el usuario ha aceptado compartir: el resto permanece invisible, no solo oculto. Todis no puede técnicamente verlo, con o sin autorización.
Con el flujo completo, eres tú quien decide qué datos pedir,
mediante el campo claims de tu solicitud (por
ejemplo ["age_over_18"]). Todis transmite esta
petición a la cartera, que muestra al usuario una pantalla de
consentimiento con exactamente los datos solicitados antes de que
acepte. Con la verificación directa, este paso ya ha ocurrido antes de
que la prueba llegue a Todis: nos envías una prueba ya construida,
la verificamos y te devolvemos su contenido tal cual, sin añadir
ni quitar nada.
La respuesta
En ambos casos, la respuesta es simple: verificado o no, con solo la información realmente divulgada (ver arriba):
{
"verified": true,
"claims": { "age_over_18": true }
}
¿Necesitas el detalle completo?
Códigos de respuesta y casos de error: consulta la referencia técnica. Esquema exacto de peticiones/respuestas: todis.eu/es/docs (Swagger). ¿Sigues con una duda? contact@todis.eu.