Skip to main content

Webhook de AIDA

Un Webhook es un Destino que permite a AIDA llamar automáticamente a un endpoint HTTPS cada vez que un documento es procesado por este flujo. AIDA realizará una llamada HTTP POST con un payload JSON a la URL configurada.

Configuración

El comportamiento del webhook se controla mediante los siguientes parámetros en la configuración del destino:

ParámetroRequeridoDescripciónValor por defecto
URL del WebhookLa URL del endpoint HTTPS al que AIDA llamará.-
Encabezado de autorizaciónNoEl valor para el encabezado HTTP Authorization. Por ejemplo: Bearer tu-token-secreto.-
Acción del WebhookNoUn valor de texto que se añadirá al payload JSON en el campo action. Puede usarse para identificar el tipo de evento en el lado receptor.-
Modo de envío del documentoNoDefine cómo se envía el archivo PDF del documento.Incrustar una URL de descarga en el payload
ExpiraciónNoExpiración del enlace para la descarga del documento.7 días
Añadir contenido del documentoNoSi se activa, añade un campo content al payload que contiene el texto completo del documento, extraído por el OCR.Desactivado
Ignorar verificación de certificado SSL/TLSNoUsar con precaución. Si se activa, AIDA no validará el certificado SSL del endpoint. Útil para pruebas con certificados autofirmados.Desactivado

Encabezados HTTP

AIDA enviará los siguientes encabezados con la petición POST:

  • Content-Type: application/json
  • Accept: application/json
  • Authorization: El valor proporcionado en el parámetro de configuración Encabezado de autorización, si existe.

Payload JSON

El payload consiste en una serie de pares clave-valor. Algunos son campos estándar proporcionados por AIDA, mientras que otros corresponden a las propiedades extraídas del documento.

Campos estándar

Estos campos son añadidos automáticamente por AIDA según la configuración.

CampoTipoDescripción
actionstringEl valor de la configuración Acción del Webhook. Solo presente si se ha configurado.
documentURLstringUn enlace permanente para ver el documento dentro de la aplicación web de AIDA.
downloadURLstringUn enlace temporal y seguro para descargar el archivo PDF del documento. Solo presente si el Modo de envío del documento es descarga (por defecto).
attachmentstringEl contenido en Base64 del archivo PDF del documento. Solo presente si el Modo de envío del documento es incrustar el archivo.
contentstringEl contenido de texto completo del documento. Solo presente si Añadir contenido del documento está activado.

Propiedades del documento

Estos campos corresponden a los datos extraídos del documento.

  • Clave: La clave JSON para cada propiedad se determina por su configuración de "Mapeo de salida". Si no está definido, se utiliza la Etiqueta de la propiedad.
  • Tipos de datos: Las propiedades se convierten automáticamente al tipo JSON correcto (ej. Número, Booleano, Cadena de texto) según su configuración en AIDA. Las fechas se representan como un timestamp UNIX en milisegundos.
  • Tablas: Las propiedades que forman parte de una tabla se agruparán en un array JSON. La clave de este array se determina por el "Mapeo de salida" del grupo de la tabla o, si no está definido, por su Nombre.

Ejemplo

Dado un tipo de documento con las siguientes propiedades:

Propiedades de cabecera

  • Número de factura (Etiqueta: Número de factura, Mapeo de salida: no configurado, Tipo: String)
  • Fecha de factura (Etiqueta: Fecha de factura, Mapeo de salida: invoiceDate, Tipo: Date)
  • Importe total (Etiqueta: Importe total, Mapeo de salida: total, Tipo: Currency)

Grupo de propiedades de tabla (Nombre: Líneas de factura, Mapeo de salida: lines):

  • Descripción (Mapeo de salida: description, Tipo: String)
  • Cantidad (Mapeo de salida: qty, Tipo: Number)
  • Precio unitario (Mapeo de salida: unitPrice, Tipo: Currency)

Y la siguiente configuración de destino de AIDA:

  • URL del Webhook: https://api.mycompany.com/invoice-receiver
  • Acción del Webhook: NEW_INVOICE
  • Modo de envío del documento: descarga

El payload JSON resultante enviado al endpoint sería así:

{
"Número de factura": "INV-2025-042",
"invoiceDate": 1760444679000,
"total": 122.00,
"lines": [
{
"description": "Producto A",
"qty": 2,
"unitPrice": 50.00
},
{
"description": "Servicio B",
"qty": 1,
"unitPrice": 22.00
}
],
"action": "NEW_INVOICE",
"documentURL": "[https://aida.mycompany.com/app/web/archive/12345](https://aida.mycompany.com/app/web/archive/12345)",
"downloadURL": "[https://api.aida.mycompany.com/asset/document/generated-auth-token](https://api.aida.mycompany.com/asset/document/generated-auth-token)"
}