Mensagens e replay
Toda chegada numa fonte vira uma Mensagem recebida, inclusive a que a verificação recusou. É o histórico que responde “o provedor mandou ou não mandou?”.
curl "https://api.notyfacil.com.br/v1/ingest/sources/src_01JB8Z2R4K7M1QX5VN3HT9WCDF/messages?limit=20" \ -H "Authorization: Bearer $NOTYFACIL_KEY"Da mais recente para a mais antiga, paginado por cursor. O filtro
verification restringe pelo resultado da verificação.
O resultado da verificação
Seção intitulada “O resultado da verificação”| No filtro | Na resposta | O que quer dizer |
|---|---|---|
verified |
Verified |
A assinatura do provedor conferiu. |
failed |
Failed |
A assinatura não conferiu. O provedor recebeu 401, e o corpo não foi guardado. |
not_configured |
NotConfigured |
A fonte não tem verificação (none). |
skipped |
Skipped |
Mensagem gerada por uma fonte agendada, que não tem assinatura para conferir. |
Uma sequência de Failed depois de uma troca no provedor quase sempre é segredo desatualizado na
fonte.
fanout e deliveries
Seção intitulada “fanout e deliveries”Cada mensagem traz dois números sobre o repasse, e eles respondem perguntas diferentes:
fanouté quantas Entregas foram criadas na chegada. Não muda nunca. Zero quer dizer que a fonte estava pausada, a quota tinha acabado ou não havia destino habilitado.deliveriesé onde as Entregas pararam, somando as criadas depois por replay:total,delivered,inFlight,failedecancelled.
Consultar uma mensagem
Seção intitulada “Consultar uma mensagem”curl https://api.notyfacil.com.br/v1/ingest/messages/in_01JB8Z0M5V3H7Q2KX9WRC4D6TN \ -H "Authorization: Bearer $NOTYFACIL_KEY"Traz o método, o Content-Type, os headers e o corpo como o provedor mandou. Os headers de
credencial (Authorization, Cookie, Proxy-Authorization e asaas-access-token) são removidos
antes de gravar. Em mensagem Failed, body vem nulo.
Para ver as Entregas da mensagem e as tentativas de cada uma:
curl https://api.notyfacil.com.br/v1/ingest/messages/in_01JB8Z0M5V3H7Q2KX9WRC4D6TN/deliveries \ -H "Authorization: Bearer $NOTYFACIL_KEY"
curl https://api.notyfacil.com.br/v1/deliveries/dlv_01JB8Z8N2X6Q4H1TVR9KM3WCDF/attempts \ -H "Authorization: Bearer $NOTYFACIL_KEY"As tentativas, o retry de uma Entrega e o ciclo de vida são os mesmos do envio.
curl -X POST https://api.notyfacil.com.br/v1/ingest/messages/in_01JB8Z0M5V3H7Q2KX9WRC4D6TN/replay \ -H "Authorization: Bearer $NOTYFACIL_KEY"{ "id": "in_01JB8Z0M5V3H7Q2KX9WRC4D6TN", "deliveries": 2 }Cria Entregas novas, com o mesmo corpo, para os destinos habilitados agora. É o que se usa depois de uma pausa da fonte, de um destino fora do ar, ou quando um destino novo precisa das mensagens antigas.
O replay sai com o mesmo Webhook-Id, então um receptor que deduplica ignora o que já processou.
Mensagem Failed não pode ser repassada: o corpo dela não foi guardado, e a resposta é 422.
Quando o provedor reenvia
Seção intitulada “Quando o provedor reenvia”Se o provedor manda de novo um evento que já chegou e identifica o evento, a fonte reconhece a repetição: responde com a mensagem da primeira vez e não cria entregas novas. Veja idempotência.
Referência: listar as mensagens de uma fonte