Reprocessamento de mensagens
stable
Quando as mensagens enviadas pelos Webhooks Bankly não são recebidas com sucesso pela API do parceiro, o sistema Bankly fará três novas tentativas de envio.
Se ainda assim, as requisições não obtiverem sucesso, o Bankly cessará as tentativas, e o status do evento na consulta de mensagens enviadas constará como Failed.
{
"id": "aaff746c-bb72-4e1c-a5bb-bcda66a1fca4",
"idempotencyKey": "f5ff2ba3-76c0-4aa0-8015-a93b62a6c126",
"state": "Failed",
"destination": " https://webhook.site/3635f9f2-e837-41d2-a929-f7f1198120defghk",
"sentDate": "2022-01-03T19:12:08.72",
"eventName": "TED_CASH_IN_WAS_CLEARED",
"retryCount": 0,
"elapsedEventCapture": "00:00:00.1016841",
"elapsedHttpCall": "00:00:00.4783374",
"context": "Ted"
}
Nesse caso, para solicitar o reenvio de eventos que não foram entregues com sucesso no seu endpoint, o parceiro poderá utilizar este endpoint para o reprocessamento de mensagens.
Se o parceiro considerar necessário, também poderá solicitar o reenvio de mensagens recebidas com sucesso (status Success). Por exemplo, caso tenha informado a URL do endpoint para recebimento de mensagens sobre Pix no webhook de envio de mensagens para TED, o parceiro poderá utilizar o endpoint de reprocessamento de mensagens para redirecionar os eventos para o endpoint correto.
Nota
Recomendamos que o parceiro estabeleça uma rotina de consulta de mensagens enviadas para que identifique eventuais falhas no recebimento de eventos.
Requisição
Requisição HTTP
POST 'https://api-mtls.sandbox.bankly.com.br/webhooks/processed-messages/{id}'
curl --request POST \
--url'https://api-mtls.sandbox.bankly.com.br/webhooks/processed-messages/{id}' \
--header 'Content-Type: application/json' \
--header 'api-version: 1.0' \
--header 'Authorization: Bearer [token]' \
Autorização
Para garantir a segurança nas requisições, todos os endpoints do Bankly utilizam scopes como parte do seu fluxo de autorização.
Esta requisição requer o scope descrito a seguir:
Scope | Descrição |
---|---|
webhook.read | Concede acesso para consultar configurações de webhooks, pesquisar mensagens enviadas e realizar o reprocessamento de mensagens. |
Cabeçalhos (Headers)
Nome | Descrição |
---|---|
api-version | Obrigatório. Versão da API. Atualmente estamos na versão 1.0. |
Authorization | Obrigatório. Token de autorização do tipo Bearer. |
Parâmetros da rota (Path)
No path desta requisição envie o seguinte campo:
Nome | Tipo | Descrição |
---|---|---|
id | path | Obrigatório. Identificador do processamento da mensagem (valor em formato UUID). O valor a ser preenchido nesse campo é retornado na consulta de mensagens enviadas. |
Corpo da requisição (Body)
Não é necessário enviar campos no body desta requisição.
Resposta (Response)
O status code 202 indicará sucesso no reenvio da mensagem.
Sendo bem-sucedido, o retorno irá trazer os seguintes campos em formato JSON:
Nome | Tipo | Descrição |
---|---|---|
data | array of objects | Lista que contém as mensagens reprocessadas. |
data.id | string | Identificador do processamento da mensagem (valor em formato UUID). |
data.idempotencyKey | string | Chave de idempotência, utilizada para evitar a duplicidade de transações (valor em formato UUID). |
data.state | string | Estado da mensagem, o qual pode ser: Success (para mensagens recebidas com sucesso), Failed (para mensagens que foram enviadas com sucesso por parte do Bankly, mas que, por alguma falha do lado do parceiro, não foram recebidas) e Hold (para mensagens que ficaram retidas no fluxo do Circuit Breaker). |
data.destination | string | URI de destino da mensagem. |
data.sentDate | string | Data de envio da mensagem, no formato YYYY-MM-DDTHH:mm:SS.MMMZ. |
data.eventName | string | Nome do evento. |
data.retryCount | string | Número de tentativas de reenvio. |
data.elapsedEventCapture | string | Tempo de captura do evento. |
data.elapsedHttpCall | string | Tempo de execução da chamada Http. |
data.context | string | Contexto em que os eventos foram enviados. Exemplo: Pix. |
links | array of objects | Lista de links de próximos estados válidos da entidade/recurso. |
links.url | string | URLs que podem ser utilizadas em um próximo estado da entidade. |
links.rel | string | Descrição de como a URL se relaciona com o recurso atual. |
links.method | string | Tipo de verbo que deve ser utilizado para acessar a URL. |
meta | dictionary<string, object> | Dicionário de metadados que trará dados adicionais da requisição. |
{
"data": [
{
"id": "aaff746c-bb72-4e1c-a5bb-bcda66a1fca4",
"idempotencyKey": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
"state": "Success",
"destination": "string",
"sentDate": "2023-04-17T17:18:20.374Z",
"eventName": "PIX_CASH_IN_WAS_RECEIVED",
"retryCount": 0,
"elapsedEventCapture": "00:00:00.0996311",
"elapsedHttpCall": "00:00:00.6384607",
"context": "Pix"
}
],
"links": [
{
"url": "string",
"rel": "string",
"method": "string"
}
],
"meta": {
"additionalProp": {}
}
}
Dica
Para simular uma requisição nesse endpoint, acesse o API Reference.
Erros
Este endpoint não retorna erros específicos. Porém, ele poderá retornar alguns erros comuns entre todos os endpoints.
Eventos
Este endpoint não possui eventos relacionados a ele.
Updated about 1 month ago