Skip to main content

Webhook AIDA

O Webhook é um Destino que permite ao AIDA chamar automaticamente um endpoint HTTPs sempre que um documento é processado por este fluxo. O AIDA realizará uma chamada HTTP POST com um payload JSON para o URL configurado.

Configuração

O comportamento do webhook é controlado pelos seguintes parâmetros na configuração do destino:

ParâmetroObrigatórioDescriçãoValor Padrão
URL do WebhookSimO URL do endpoint HTTPS que o AIDA irá chamar.-
Cabeçalho de AutorizaçãoNãoO valor para o cabeçalho HTTP Authorization. Por exemplo: Bearer seu-token-secreto.-
Ação do WebhookNãoUm valor de texto que será adicionado ao payload JSON no campo action. Pode ser usado para identificar o tipo de evento no lado do receptor.-
Modo de envio do documentoNãoDefine como o ficheiro PDF do documento é enviado.Incorporar um URL de download no payload
ExpiraçãoNãoExpiração do link para o download do documento.7 dias
Adicionar conteúdo do documentoNãoSe ativado, adiciona um campo content ao payload contendo o texto completo do documento, extraído pelo OCR.Desativado
Ignorar verificação de certificado SSL/TLSNãoUse com precaução. Se ativado, o AIDA não validará o certificado SSL do endpoint. Útil para testes com certificados autoassinados.Desativado

Cabeçalhos HTTP

O AIDA enviará os seguintes cabeçalhos com o pedido POST:

  • Content-Type: application/json
  • Accept: application/json
  • Authorization: O valor fornecido no parâmetro de configuração Cabeçalho de Autorização, se existir.

Payload JSON

O payload consiste numa série de pares chave-valor. Alguns são campos padrão fornecidos pelo AIDA, enquanto outros correspondem às propriedades extraídas do documento.

Campos Padrão

Estes campos são adicionados automaticamente pelo AIDA com base na configuração.

CampoTipoDescrição
actionstringO valor da configuração Ação do Webhook. Apenas presente se configurado.
documentURLstringUm link permanente para visualizar o documento na aplicação web do AIDA.
downloadURLstringUm link temporário e seguro para descarregar o ficheiro PDF do documento. Apenas presente se o Modo de envio do documento for download (padrão).
attachmentstringO conteúdo codificado em Base64 do ficheiro PDF do documento. Apenas presente se o Modo de envio do documento for incorporar o ficheiro.
contentstringO conteúdo de texto completo do documento. Apenas presente se Adicionar conteúdo do documento estiver ativado.

Propriedades do Documento

Estes campos correspondem aos dados extraídos do documento.

  • Chave: A chave JSON para cada propriedade é determinada pela sua configuração de "Mapeamento de Saída". Se esta não estiver definida, é usado o "Rótulo" da propriedade.
  • Tipos de Dados: As propriedades são automaticamente convertidas para o tipo JSON correto (ex: Número, Booleano, String) com base na sua configuração no AIDA. As datas são representadas como um timestamp UNIX em milissegundos.
  • Tabelas: As propriedades que fazem parte de uma tabela serão agrupadas num array JSON. A chave para este array é determinada pelo "Mapeamento de Saída" do grupo da tabela ou, se não estiver definido, pelo seu Nome.

Exemplo

Dado um tipo de documento com as seguintes propriedades:

Propriedades do Cabeçalho

  • Número da Fatura (Rótulo: Número da Fatura, Mapeamento de Saída: não configurado, Tipo: String)
  • Data da Fatura (Rótulo: Data da Fatura, Mapeamento de Saída: invoiceDate, Tipo: Date)
  • Valor Total (Rótulo: Valor Total, Mapeamento de Saída: total, Tipo: Currency)

Grupo de Propriedades de Tabela (Nome: Linhas da Fatura, Mapeamento de Saída: lines):

  • Descrição (Mapeamento de Saída: description, Tipo: String)
  • Quantidade (Mapeamento de Saída: qty, Tipo: Number)
  • Preço Unitário (Mapeamento de Saída: unitPrice, Tipo: Currency)

E a seguinte configuração de destino do AIDA:

  • URL do Webhook: https://api.mycompany.com/invoice-receiver
  • Ação do Webhook: NEW_INVOICE
  • Modo de envio do documento: download

O payload JSON resultante enviado para o endpoint seria assim:

{
"Número da Fatura": "INV-2025-042",
"invoiceDate": "2025-10-14",
"total": 122.00,
"lines": [
{
"description": "Produto A",
"qty": 2,
"unitPrice": 50.00
},
{
"description": "Serviço 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)"
}