レスポンスコード
SingularのAPIと統合する場合、すべてのレスポンスはHTTP 200ステータスコードを返し、成功('ok')か失敗('error')かを判断するためにレスポンスボディの'status'フィールドを検証する必要があります。
ステータスが'error' の場合は、レスポンスのペイロードに'reason' フィールドが含まれ、詳細なエラー情報が提供されます。
推奨事項
- 無効なパラメータのようなリトライ不可能なエラーを除いて、設定可能な 最大試行回数を持つ指数バックオフ再試行メカニズムを実装する。
- データの一貫性を確保するために、再試行中もリクエストの順序を維持する。
- 適切なデバッグとモニタリングのために、オリジナルのパラメータ、エラーメッセージ、デバイス識別子、タイムスタンプを含む、すべての失敗したリクエストをログに記録する。再試行を追跡し、重大な失敗に対する通知システムを実装する。エラー・レスポンス・フォーマットは、ステータスと理由フィールドを持つ一貫したJSON構造に従っている。
この包括的なエラー処理戦略により、データの正確性を維持し、潜在的な問題を明確に可視化しながら、堅牢なAPI統合が保証されます。
成功
以下は、リクエストに対するAPIレスポンスが成功したことを示す。
HTTPレスポンス | |
---|---|
|
レスポンスボディにエラーや理由のない200 - okは、リクエストが処理のためにキューに送られたことを意味します。 レスポンス
|
エラー
以下は、リクエストに対するレスポンスとしてAPIが返す可能性のあるエラーメッセージです。
HTTP レスポンス | |
---|---|
|
200 - エラー・レスポンス・コードで、'reason' は "missing argument:{param}"である。 このエラーは特定のパラメータに対してのみ発生し、すべての必須パラメータに対して発生するわけではありません。 パラメータが見つからないか、値が見つからない場合、引数不足エラーが発生する可能性があります。このエラーを解決して、リクエストを再送する必要があります。 応答
|
|
200 - エラー・レスポンス・コードで、'reason' は "invalid platform:{プラットフォームが無効です。}これは、プラットフォームの値が無効であることを意味します。 エラーを解決してリクエストを再送する必要があります。 レスポンス
|
|
200 - エラー応答コードで、「reason」は「no device ID supplied」である。リクエストにデバイス ID が含まれていない。 このエラーを解決し、リクエストを再送する必要がある。 応答:
|
|
200エラー応答コード:{platform}には{identifier}パラメータが必要です。このエラーは、指定されたプラットフォームが正しいデバイス識別子を持たないことを意味する。 このエラーを解決してリクエストを再送する必要がある。 レスポンス
|
|
200 - okを受け取らなかった場合は、リクエストを再試行すること。 |