Skip to content

APIのエラーとレスポンス

この参考記事では、Braze APIの使用中に発生する可能性のあるさまざまなエラーとサーバーレスポンス、およびそれらのトラブルシューティング方法について説明する。

サーバーの応答

POSTペイロードがサーバーで受理された場合、成功メッセージには以下の応答が返される:

1
2
3
{
  "message" : "success"
}

成功とは、REST APIのペイロードが正しく形成され、プッシュ通知やメール、その他のメッセージングサービスに渡されたことを意味するに過ぎない。メッセージが実際に配信されたことを意味するわけではない。追加の要因によって配信が妨げられる可能性があるからだ(例えば、デバイスがオフライン状態である場合、プッシュトークンがAppleのサーバーによって拒否される場合、あるいは未知のユーザー IDが提供された場合など)。

メッセージを送信しないエンドポイントの場合/users/identify、成功メッセージは単にBrazeが処理要求を受信したことを意味する。エイリアスに一致するものが処理後に存在しない場合、リクエストは停止される。

メッセージの送信が成功したが、致命的ではないエラーが発生した場合、以下の応答が返される:

1
2
3
{
  "message" : "success", "errors" : [<minor error message>]
}

成功した場合、配列errors内のエラーの影響を受けなかったメッセージはすべて配信される。メッセージに致命的なエラーがある場合、以下の応答を受け取る:

1
2
3
{
  "message" : <fatal error message>, "errors" : [<minor error message>]
}

追跡された送信 ID に対する応答

アナリティクスは常にキャンペーンで利用できる。さらに、キャンペーンがブロードキャストとして送信された場合、特定のキャンペーン送信インスタンスに対してアナリティクスが利用できる。特定のキャンペーン送信インスタンスに対してトラッキングが利用可能な場合、以下の応答を受け取る:

1
2
3
{
  "message": "success", "send_id" : "example_send_id"
}

指定された送信 id は、/send/data_series エンドポイントのパラメーターとして使用して、送信固有の分析をプルすることができます。

エラー数

サーバーレスポンスのステータスコード要素は3桁の数字であり、コードの最初の桁がレスポンスのクラスを定義する。

  • 2XX クラスのステータスコード (致命的ではない) は、リクエストが正常に受信され、理解され、受け入れられたことを示します。
  • 4XX クラスのステータスコード (致命的) は、クライアントのエラーを示します。4XXエラーコードの全リストと説明については、致命的エラーチャートを参照のこと。
  • 5XX クラスのステータスコード (致命的) は、サーバーエラーを示します。考えられる原因はいくつかあります。たとえば、アクセスしようとしているサーバーがリクエストを実行できない、サーバーがメンテナンス中でリクエストを実行できない、サーバーのトラフィックが高いレベルになっているなどです。このような場合、エクスポネンシャルバックオフでリクエストを再試行することを推奨する。インシデントまたは停止が発生した場合、Braze はインシデント期間中に失敗した REST API 呼び出しを再実行することはできません。インシデント期間中に失敗した呼び出しはすべて再試行しなければならない。
    • 502 エラーは、宛先サーバーに到達する前に発生した失敗です。
    • 503 エラーは、リクエストが宛先サーバーに到達したが、十分な容量がない、ネットワークに問題がある、または同様の理由でリクエストを完了できないことを意味します。
    • 504 エラーは、サーバーが上流の別のサーバーから応答を受信しなかったことを示します。

致命的なエラー

リクエストが致命的なエラーに遭遇した場合、以下のステータスコードと関連するエラーメッセージが返される。

New Stuff!