Ir para o conteúdo

Usar lógica de nova tentativa para Conteúdo conectado

Esta página explica como adicionar novas tentativas às suas chamadas de Conteúdo conectado.

Como as tentativas funcionam

Como o Connected Content depende do recebimento de dados de APIs, uma API pode ficar temporariamente indisponível enquanto a Braze faz a chamada. Nesse caso, a Braze oferece suporte à lógica de tentativas para reenviar a solicitação usando backoff exponencial.

Comportamento de tentativas em etapas do Canvas

As chamadas de Connected Content em um Canvas só são refeitas quando a chamada inclui :retry. O comportamento varia de acordo com o tipo de etapa:

  • Etapas de mensagem: O Connected Content com :retry ainda usa o pipeline de envio de mensagens. Os destinatários ficam em espera na fila de envio enquanto a Braze tenta novamente a chamada até cinco vezes. Se todas as tentativas falharem, a mensagem sofre interrupção e o usuário avança para a próxima etapa. Para saber mais, consulte Quando a chamada de API falha e as tentativas estão ativadas.
  • Etapas de contexto e atualização de usuário: A Braze tenta novamente a chamada de Connected Content no nível da etapa (até cinco vezes). Se todas as tentativas falharem, o usuário sai do Canvas.

Para etapas de contexto e atualização de usuário, determinados erros de etapa passíveis de nova tentativa — como uma falha na busca de código promocional ou um erro inesperado na etapa — podem disparar tentativas adicionais no nível da etapa com backoff exponencial (aproximadamente 13 vezes) antes que a Braze retire o usuário do Canvas.

Para saber mais, consulte Comportamento de tentativas.

Usando lógica de tentativas

Para usar a lógica de tentativas, adicione a tag :retry à chamada de Connected Content, conforme mostrado no trecho de código a seguir:

{% connected_content https://yourwebsite.com/api/endpoint :retry %}
{% connected_content https://www.braze.com :save my_content :basic_auth auth_name :retry %}

Quando uma tag :retry é incluída na chamada de Connected Content, a Braze tenta repetir a chamada até cinco vezes.

Comportamento na prévia

A lógica de tentativas se aplica apenas a envios em tempo real (incluindo envios de teste), não a prévias. Se uma chamada de Connected Content com :retry falhar durante a prévia, ela pode exibir a mensagem “This message would not have been shown because retry functionality was triggered” em vez de renderizar o conteúdo. Esse é o comportamento esperado e não indica um problema na Braze.

Resultados das tentativas

Quando uma tentativa é bem-sucedida

Se uma tentativa de reenvio for bem-sucedida, a mensagem é enviada e nenhuma tentativa adicional é feita para essa mensagem.

Quando a chamada de API falha e as tentativas estão ativadas

Se a chamada de API falhar e a lógica de tentativas estiver ativada, a Braze tenta novamente a chamada respeitando o limite de frequência que você definiu para cada reenvio. A Braze move as mensagens com falha para o final da fila e adiciona minutos extras, se necessário, ao tempo total de envio da sua mensagem.

Se a chamada de Connected Content falhar mais de cinco vezes, a mensagem sofre interrupção, de forma semelhante a como uma tag de interrupção de mensagem é disparada.

Chamadas de Conteúdo conectado com lógica de cancelamento e nova tentativa

Se uma chamada de Conteúdo conectado usa lógica de cancelamento para a mesma condição da lógica de nova tentativa, a lógica de cancelamento tem prioridade. Isso impede que qualquer nova tentativa seja feita. A lógica de nova tentativa já reenvia a chamada antes de cancelá-la se o código de status não for bem-sucedido. Como ambas tratam o mesmo comportamento de código de status, você pode remover a lógica de cancelamento e a chamada ainda será cancelada se todas as novas tentativas falharem.

New Stuff!