Saltar al contenido principal
PATCH
curl
rotate_secret_key rota solo el secreto de la aplicación, que firma las entregas al webhook_url heredado. Cada destino de webhook firma con su propio secret_shared_key, que esta llamada no modifica.
Los campos de retención corresponden a la misma política que configuras en Business Console → App Settings → Data retention. Lee Retención de datos antes de modificarlos, en particular la retención de plantillas biométricas. allowed_return_hosts se describe en Registra tu destino de retorno. biometric_consent_mode (auto, always o never) define cuándo el flujo de verificación solicita el consentimiento biométrico explícito antes de una captura facial. Consulta Consentimiento biométrico. Para consultar primero los valores actuales, llama a Obtener la configuración de webhooks.

Autorizaciones

x-api-key
string
header
requerido

La clave de API de tu aplicación, que encontrarás en Developers -> API keys en la Business Console. La clave principal tiene acceso completo. Una clave con nombre puede tener un alcance limitado: ninguno, lectura o escritura por recurso, limitada a algunos flujos o a sesiones aprobadas, a una lista de direcciones IP y a una fecha de caducidad. 401 significa que la clave es incorrecta, se revocó o expiró; 403 significa que no se envió ninguna clave, que la clave no tiene acceso a este recurso o acción, o que la solicitud provino de una dirección fuera de su lista de IP; 404 en una ruta de sesión significa que la sesión está fuera de los flujos o estados de la clave. Una clave sin acceso a contenido multimedia recibe las URL de imágenes, videos y PDF como null, y una clave sin permiso de escritura en sesiones recibe los enlaces y tokens de sesión como null. Consulta https://docs.didit.me/console/api-keys.

Cuerpo

application/json

Envía solo los campos que quieras cambiar. Los destinos no se gestionan aquí.

webhook_url
string<uri> | null

URL de webhook heredada a nivel de aplicación. Didit solo la usa mientras la aplicación no tiene ningún destino habilitado, y en ese caso solo para status.updated y data.updated. No crea un destino, y la siguiente creación, actualización o eliminación de un destino la reemplaza. Para recibir webhooks, crea un destino con POST /v3/webhook/destinations/.

Maximum string length: 2000
webhook_version
enum<string>

Versión del payload de la webhook_url heredada.

Opciones disponibles:
v1,
v2,
v3
rotate_secret_key
boolean
predeterminado:false

true sustituye de inmediato la secret_shared_key a nivel de aplicación por un nuevo valor aleatorio; el nuevo valor viene en la respuesta. Los secretos de los destinos no cambian. Cada llamada con true genera un secreto nuevo, por lo que no es idempotente.

capture_method
enum<string>

Configuración heredada de la aplicación. El flujo de verificación no la lee.

Opciones disponibles:
MOBILE,
MOBILE_AND_DESKTOP
data_retention_months
integer | null

Plazo de eliminación automática en meses (un mes equivale a 30 días), o null para no eliminar automáticamente. Un cambio también se aplica a las sesiones existentes: toda sesión de verificación de usuarios con una antigüedad mayor que el nuevo plazo se elimina automáticamente, y esa eliminación es irreversible.

Rango requerido: 1 <= x <= 120
face_retention_policy
enum<string>

Qué ocurre con el embedding facial de una sesión cuando se elimina la sesión. retain_until_user_deleted requiere face_retention_days en la misma solicitud o ya configurado. Un cambio se aplica a las eliminaciones de sesiones a partir de ese momento; no crea ni purga ninguna plantilla biométrica existente.

Opciones disponibles:
delete_with_session,
retain_until_user_deleted
face_retention_days
integer | null

Periodo de retención, en días, de las plantillas biométricas con retain_until_user_deleted.

Rango requerido: 1 <= x <= 3650

Cuándo el flujo alojado y los SDK nativos piden a la persona su consentimiento biométrico explícito antes de capturar el rostro. auto (predeterminado) lo pide solo donde aplica un disparador: un estado declarado, la IP de la persona o el emisor del documento de identidad está en Illinois, Texas o Colorado, o la persona parece estar en EE. UU. sin un estado conocido. always lo pide a toda persona cuyo flujo capture el rostro. never nunca muestra el paso, y tú mismo recoges el consentimiento antes del selfie. Cada cambio se registra en el registro de auditoría. Consulta Consentimiento biométrico.

Opciones disponibles:
auto,
always,
never
allowed_return_hosts
string[]

Reemplaza toda la lista de hosts de retorno de wallets de Digital ID. Solo nombres de host simples, como shop.example.com: sin esquema, puerto, ruta ni comodines. Los valores se convierten a minúsculas y se eliminan los duplicados. Envía [] para vaciar la lista.

Maximum array length: 20
Maximum string length: 253
allowed_domains
string[]

Reemplaza toda la lista de orígenes permitidos. Son los orígenes (por ejemplo, https://app.example.com; http solo para localhost) en los que se puede integrar el flujo de verificación alojado y a los que puede devolver al usuario con un callback de sesión. Las llamadas de servidor a servidor no se ven afectadas. Una lista vacía significa que no hay ninguna restricción. Didit guarda cada origen en minúsculas y sin el puerto predeterminado. Una entrada no válida falla con 400 en allowed_domains. Envía [] para eliminar la restricción.

Maximum array length: 50
Maximum string length: 300
Ejemplo:

Respuesta

La configuración completa después de la actualización, con la misma forma que GET /v3/webhook/. Si rotaste el secreto, guarda el nuevo secret_shared_key antes de descartar la respuesta.

Configuración de webhooks a nivel de aplicación, política de retención y hosts de retorno de la wallet de Digital ID, con todos los destinos de webhook.

webhook_url
string<uri> | null
requerido

URL de webhook a nivel de aplicación (heredada). Didit envía a ella solo mientras la aplicación no tiene ningún destino de webhook habilitado, y en ese caso solo status.updated y data.updated. Cada vez que se crea, actualiza o elimina un destino, se establece en la URL del destino habilitado más antiguo, o en null si no hay ninguno habilitado.

webhook_version
enum<string>
requerido

Versión del payload de la webhook_url heredada. Cada destino tiene su propia webhook_version.

Opciones disponibles:
v1,
v2,
v3
secret_shared_key
string
requerido

Secreto de firma a nivel de aplicación (token de 43 caracteres seguro para URL). Solo firma las entregas al webhook_url heredado; cada destino firma con su propio secret_shared_key. Quien llama con una clave de API siempre lo recibe completo; los usuarios de la consola sin read:webhooks reciben una cadena vacía.

capture_method
enum<string>
requerido

Configuración heredada de la aplicación. El flujo de verificación no la lee: las opciones de captura se configuran por flujo.

Opciones disponibles:
MOBILE,
MOBILE_AND_DESKTOP
data_retention_months
integer | null
requerido

Plazo de eliminación automática. Las sesiones de verificación de usuarios creadas hace más de este número de meses (un mes equivale a 30 días) se eliminan automáticamente, y esa eliminación es irreversible. null significa que las sesiones nunca se eliminan automáticamente. Consulta Retención de datos.

Rango requerido: 1 <= x <= 120
face_retention_policy
enum<string>
requerido

Qué ocurre con el embedding facial de una sesión cuando se elimina la sesión. delete_with_session (valor predeterminado) lo elimina junto con la sesión. retain_until_user_deleted es la retención de plantillas biométricas opcional: una plantilla biométrica sin imágenes vinculada al User se gestiona por separado hasta que finaliza su periodo de retención, se elimina el User o la purgas.

Opciones disponibles:
delete_with_session,
retain_until_user_deleted
face_retention_days
integer | null
requerido

Periodo de retención, en días, de las plantillas biométricas con retain_until_user_deleted. Obligatorio cuando se define esa política.

Rango requerido: 1 <= x <= 3650
available_events
object[]
requerido

Todos los tipos de evento a los que se puede suscribir un destino, con una etiqueta visible.

allowed_return_hosts
string[]
requerido

Nombres de host (coincidencia exacta, solo HTTPS) a los que una verificación independiente de wallet de Digital ID puede devolver al usuario con su return_url. Tu dominio de marca blanca también está siempre permitido. Consulta Registra tu destino de retorno.

Maximum array length: 20
Maximum string length: 253
endpoints
object[]
requerido

Todos los destinos de webhook de la aplicación, del más antiguo al más reciente, cada uno con su secreto de firma. Aquí solo se pueden leer: gestiona los destinos con los endpoints /v3/webhook/destinations/.

Cuándo el flujo alojado y los SDK nativos piden a la persona su consentimiento biométrico explícito antes de capturar el rostro. auto (predeterminado) lo pide solo donde aplica un disparador: un estado declarado, la IP de la persona o el emisor del documento de identidad está en Illinois, Texas o Colorado, o la persona parece estar en EE. UU. sin un estado conocido. always lo pide a toda persona cuyo flujo capture el rostro. never nunca muestra el paso, y tú mismo recoges el consentimiento antes del selfie. Cada cambio se registra en el registro de auditoría. Consulta Consentimiento biométrico.

Opciones disponibles:
auto,
always,
never
allowed_domains
string[]

Orígenes (por ejemplo https://app.example.com; http solo para localhost) en los que puede incrustarse el flujo de verificación alojado y a los que puede devolver al usuario con un callback de sesión. Las llamadas de servidor a servidor no se ven afectadas. Una lista vacía significa que no hay restricción. Didit almacena cada origen en minúsculas y sin puerto predeterminado. Una entrada no válida falla con 400 en allowed_domains.

Maximum array length: 50
Maximum string length: 300
Ejemplo:
Última modificación el 1 de noviembre de 2026