コンテンツにスキップ

コネクテッドコンテンツのリトライロジックを使用する

このページでは、コネクテッドコンテンツの呼び出しにリトライを追加する方法について説明します。

リトライの仕組み

Connected Contentは API からのデータ受信に依存しているため、Braze が呼び出しを行う際に API が一時的に利用できなくなる場合があります。このような場合、Braze は指数バックオフを使用してリクエストを再試行するリトライロジックをサポートしています。

キャンバスステップにおけるリトライの動作

キャンバス内の Connected Content 呼び出しは、呼び出しに:retryが含まれている場合にのみリトライされます。動作はステップのタイプによって異なります。

  • メッセージステップ: :retryを使用した Connected Content は、引き続きメッセージングパイプラインを使用します。受信者は、Braze が最大5回まで呼び出しをリトライする間、送信キューで遅延されます。すべてのリトライが失敗した場合、メッセージは中止され、ユーザーは次のステップに進みます。詳細については、API 呼び出しが失敗しリトライが有効な場合を参照してください。
  • コンテキストステップとユーザー更新ステップ: Braze はステップレベルで Connected Content 呼び出しをリトライします(最大5回)。すべてのリトライが失敗した場合、ユーザーはキャンバスから退出します。

コンテキストステップとユーザー更新ステップでは、プロモコードの取得失敗や予期しないステップエラーなど、特定のリトライ可能なステップエラーが発生すると、Braze がユーザーをキャンバスから退出させる前に、指数バックオフによる追加のステップレベルリトライ(約13回)がトリガーされることがあります。

詳細については、リトライの動作を参照してください。

リトライロジックの使用

リトライロジックを使用するには、以下のコードスニペットに示すように、Connected Content 呼び出しに :retry タグを追加します。

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

Connected Content 呼び出しに :retry タグが含まれている場合、Braze は最大5回まで呼び出しのリトライを試みます。

プレビューの動作

リトライロジックはライブ送信(テスト送信を含む)にのみ適用され、プレビューには適用されません。:retry を含む Connected Content 呼び出しがプレビュー中に失敗した場合、コンテンツがレンダリングされる代わりに「This message would not have been shown because retry functionality was triggered」というメッセージがプレビューに表示されることがあります。これは想定される動作であり、Braze 内の問題を示すものではありません。

リトライの結果

リトライが成功した場合

リトライの試行が成功した場合、メッセージは送信され、そのメッセージに対するそれ以上のリトライは試行されません。

API 呼び出しが失敗し、リトライが有効な場合

API 呼び出しが失敗し、リトライが有効になっている場合、Braze は再送信ごとに設定したレート制限を遵守しながら呼び出しをリトライします。Braze は失敗したメッセージをキューの末尾に移動し、必要に応じてメッセージ送信にかかる合計時間に追加の分数を加えます。

Connected Content 呼び出しが5回を超えてエラーになった場合、メッセージ中止タグがトリガーされた場合と同様に、メッセージは中止されます。

コネクテッドコンテンツの呼び出しにおける中止とリトライのロジック

コネクテッドコンテンツの呼び出しで、リトライロジックと同じ条件に対して中止ロジックを使用している場合、中止ロジックが優先されます。これにより、リトライが試行されなくなります。リトライロジックは、ステータスコードが失敗の場合、中止する前にすでに呼び出しを再送信しています。どちらも同じステータスコードの動作をターゲットにしているため、中止ロジックを削除しても、すべてのリトライが失敗した場合には呼び出しは中止されます。

New Stuff!