Pular para o conteúdo principal

Polling vs Webhook

Por que usar Webhooks para Envio e Análise de Documentos?

No processo, sua aplicação possui documentos/imagens para serem validadas, sua aplicação encaminha para a API da Acertpix, que executa as análises necessárias.

Existem duas maneiras de sua aplicação receber o status do processamento realizado pela Acertpix:

1. Polling

Após o envio de um documento, sua aplicação faz diversas requisições à API da Acertpix para checar o status da análise até receber uma confirmação. Contudo, essa prática apresenta desvantagens, pois o polling demanda recursos tanto de sua aplicação quanto do lado da Acertpix.

Pooling

2. Webhooks

Com Webhooks, o fluxo é otimizado: basta configurar uma URL que receberá o resultado da análise assim que a Acertpix finalizar. Dessa forma, quando a análise estiver pronta, sua aplicação será automaticamente informada pelo Webhook.

Esse método reduz significativamente o uso de recursos, pois elimina a necessidade de sua aplicação consultar repetidamente o status.

Webhook

Boas Práticas para Utilizar Webhooks

  • Desenvolva uma API para receber os Webhooks: Essa API deve ser capaz de processar o resultado da analise enviadas pelo Webhook.
  • Implemente regras de segurança: Configure autenticação no endpoint para garantir que apenas comunicações autorizadas sejam aceitas. A Acertpix permite a definição de uma autenticação por header para cada Webhook, garantindo segurança na comunicação.
  • Notificações de falhas: Se houver qualquer problema na comunicação com sua API, a fila de processamento é pausada, e você receberá uma notificação por e-mail.

Vantagens do Uso de Webhooks

Além da economia de recursos, os Webhooks garantem que sua aplicação receba o resultado da análise sempre que estiver pronto. Por polling vc só terá o resultado na próxima consultado executada pelo polling.

Conclusão

Utilizar Webhooks é a maneira mais prática e segura de receber o status dos documentos analisados na Acertpix. Esse modelo de notificação permite uma comunicação eficiente e evita o consumo desnecessário de recursos no seu sistema.