Esse artigo irá lhe ensinar como:

• Consultar os gatilhos de uma fatura.
• Disparar novamente um gatilho específico.
• Reenviar todos os gatilhos em um intervalo de tempo.

 

Case de uso
"Cliente informa que sofreu uma instabilidade, ou problemas internos em seu servidor responsável por uma API que recebe os gatilhos da Iugu, como ele deve consultar os gatilhos enviados nesse período?"

 

Diagrama de integração Modelomceclip0.png

 

 

CONSULTAR TODOS OS GATILHOS DE UMA FATURA

 

Para realizar essa consulta é necessário ter o invoice_id que deseja consultar os logs, essa propriedade é retornada ao realizar uma cobrança direta/criar fatura, você pode armazenar esse id do lado sua aplicação, ou consultar em nossa api “Listar Faturas”. Essa api Retorna uma lista das faturas em sua conta ordenadas pela data de criação, da mais à menos recente.

Por padrão, este endpoint retorna no máximo 100 registros. O campo "totalItems" contém sempre a quantidade total de faturas cadastradas, independentemente dos parâmetros de pesquisa utilizados, e o resultado da pesquisa fica sempre dentro de "items".


Modelo de request

curl --location --request GET 'https://api.iugu.com/v1/invoices?limit=50&api_token={chaveapi}' \

--header 'Accept: application/json' \

--header 'Cookie: __cfruid=ca1be8a3bc81800098d0c3711c4f38bddca4926f-1626092966'

 

Modelo de response

mceclip1.png

Obs.: Se você for consultar as faturas na iugu, a propriedade que deve usar para a próxima request é a id.

Com o id deve ser realizado uma request na api “Listar Logs”, ela irá retornar todos os gatilhos enviados para uma determinada cobrança.

 

Modelo de request
curl --location --request GET 'https://api.iugu.com/v1/web_hook_logs/FEDCE596BC95427BB8A9A6CC9E0429B4?api_token=37cf2eb22831602b3b6d01dba297e9e9' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: __cfruid=ca1be8a3bc81800098d0c3711c4f38bddca4926f-1626092966' \
--data-raw ''

 

Modelo de retorno

mceclip2.png

 

DISPARAR NOVAMENTE UM GATILHO ESPECÍFICO


Api “Listar Logs”, retorna o id do gatilho, com esse id é necessário realizar um GET na api “Disparar log novamente”, essa requisição irá retornar as informação do gatilho desejado e reenviar ele para o webhook cadastrado na plataforma.

 

Modelo de request
curl --location --request GET 'https://api.iugu.com/v1/web_hook_logs/141519C9CF0446F79BACD1D89BF5679F/retry?api_token={chaveapi}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: __cfruid=ca1be8a3bc81800098d0c3711c4f38bddca4926f-1626092966' \
--data-raw ''

 

Modelo de response

mceclip3.png

 

 

REENVIAR TODOS OS GATILHOS EM UM INTERVALO DE TEMPO


Para realizar esse procedimento, basta realizar a chama de GET na api “Reenviar gatilho (por período)”, no corpo dessa request, deve ser informado a data inicial e final para reenvio dos logs, no formato deve ser AAAA-MM-DD.
OBS. Para essa request é possível realizar o reenvio para o intervalo de 3 em 3 dias, porém a consulta pode ser feita para logs anteriores a três dias.

 

Modelo de request

curl --location --request GET 'https://api.iugu.com/v1/web_hooks/resend?api_token={chaveapi}' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--header 'Cookie: __cfruid=ca1be8a3bc81800098d0c3711c4f38bddca4926f-1626092966' \
--data-raw '{
"initial_date": "2021-03-03",
"final_date": "2021-03-06",
"event": "invoice.status_changed"
}'

 

Modelo de response

mceclip4.png

Documentações que também podem te ajudar:

Como funcionam os gatilhos e como configurá-los?

Tem mais dúvidas? Envie uma solicitação

0 Comentários

Artigo fechado para comentários.
Fale Conosco