最適なシステムの安定性とパフォーマンスを維持するため、ヘルスコネクトはヘルスコネクト API へのクライアント接続に対してレート制限を行っています。
このガイドでは、ヘルスコネクトの読み取りおよび書き込み API 操作に対する上限と、効率的なアプリ設計を通じてレート制限を回避する方法について説明します。
API の上限
上限は固定リクエスト レートに基づく割り当てとして、フォアグラウンドとバックグラウンドの両方の API 操作に適用されます。
レートとメモリの上限は、アプリが実行している操作の種類と、その操作がフォアグラウンドとバックグラウンドのどちらで発生するかによって異なります。
読み取りと変更履歴の上限
ヘルスコネクトでは、読み取りと変更履歴に関して、アプリで利用できる API 呼び出し回数に対して次の 2 種類の上限を設けています。
- 一定期間にアプリが API に対して実行できる API 呼び出し回数の上限
- アプリが実行できる 1 日あたりの API 呼び出し回数の上限
挿入、更新、削除の上限
ヘルスコネクトでは、挿入、更新、削除の操作に対して 4 種類の異なる上限を設けています。
- 一定期間にアプリが API に対して実行できる呼び出し回数の上限
- アプリが API に対して実行できる 1 日あたりの呼び出し回数の上限
- 一括挿入のメモリ上限
- 単一レコード挿入のメモリ上限
ベスト プラクティス
アプリでヘルスコネクト API を利用する際には、バッテリー使用量を最小限に抑え、最適なシステムの状態を維持し、すべての CRUD 操作で効率的なデータ管理を実現できる形で利用することをおすすめします。
実施をおすすめするベスト プラクティスには次のものがあります。
バックグラウンドでの API 呼び出し
バックグラウンド処理のバッテリー使用量によってユーザー エクスペリエンスが低下し、データのプライバシーに対する懸念が生まれます。
そのような理由から、バックグラウンドでのレート制限は、フォアグラウンドでのレート制限よりも厳格になっています。そのため、アプリがバックグラウンドで実行する API 呼び出し回数を抑えることが重要です。
例外の処理
ヘルスコネクトへのデータの書き込み時にアプリで例外が発生した場合は、例外が発生した時点から再試行することをおすすめします。
問題のデータをすべて削除して、書き込みリクエスト全体を再試行しないようにしてください。この方法は挿入割り当てを消費し、パフォーマンスを低下させ、バッテリー駆動時間に悪影響を及ぼします。
変更履歴の処理
アプリがレート制限されるリスクを最小限に抑えるためには、未加工の読み取りリクエストに過度に依存するのではなく、変更履歴の処理を利用して、データベースをヘルスコネクトのデータと同期するようにします。