rodolphot
TL;DR: Webhook sendo bloqueada pelo Bot Fight Mode do Cloudflare
----
Boa tarde, pessoal. Desculpe se esse não é o melhor local para enviar minha mensagem mas não encontrei um que tratasse apenas de webhooks.
Vamos lá: Quando faço uma chamada na API da Efí solicitando o pagamento tudo funciona corretamente, o problema não está aí. Acontece que estou informando uma 'notification_url' que usa o Cloudflare (tanto o WAF como o 'Bot Fight Mode' do Cloudflare).
No WAF tenho regras para liberar qualquer requisição no caminho que informei lá na 'notification_url', digamos, "dominio.com.br/webhooks/efi". A regra do WAF funciona (Recebo outros webhooks similares sem problema)... porém as requisições vindas da Efí são sempre identificadas/filtradas no "Bot Fight Mode", o que ocorre antes de sequer chegarem aos meus filtros do WAF... e, sendo assim, as requisições estão sendo sempre descartadas.
Note que não uso o "Super Bot Fight Mode" que, nesse caso, seria sim possível criar uma regra no WAF que pule o "Super Bot Fight Mode", mas não do "Bot Fight Mode". (Há, inclusive, um aviso em destaque no local onde você habilita o Bot Fight Mode: "Note: Other security products cannot be used to skip Bot Fight Mode.") (Pelo que li isso pode mudar no futuro.... mas infelizmente tenho esse problema hoje).
Uma "solução" que encontrei (mas sequer testei pois não é possível pra mim) é desabilitar o Bot Fight Mode.... infelizmente isso não é uma solução.
Parece existir meios de mitigar isso, inclusive a Efí cadastrando o bot com a Cloudflare deve ser o bastante (https://radar.cloudflare.com/traffic/verified-bots). Vocês podem pensar nisso?
Eu que estou fazendo algo errado? Não devo ser o único passando por isso mas não encontrei nada a respeito..