前回の記事では、Fitbitが公開しているAPIの中からFitbit Web APIでできることをご紹介しました。
Fitbitの健康データ活用方法として、今回の記事ではFitbit Web APIを呼び出して、実際にどのようなデータが取得できるのかをご紹介します。
Fitbit Web APIの呼び出し方は種々考えられますが、Fitbit developerサイトで提供されているFitbit OAuth 2.0 Tutorialを利用すると、簡単にデータの取得ができましたので、今回はFitbit OAuth 2.0 Tutorialを使っています。
Fitbit developerサイトには他にも、開発のためのガイドやコミュニティフォーラム等、開発を行う上で役立つサポートが用意されています。
前提
Fitbit Web APIの利用には
Fitbit端末
Fitbitアカウント
が必要です。
既にFitbitアカウントを取得している場合は既存のFitbitアカウントが利用できます。そのため、開発用に新しく作成する必要はありません。
まだFitbitアカウントを取得していない場合はWebサイト(https://accounts.fitbit.com/signup)もしくはFitbitアプリからアカウントを作成する必要があります。
睡眠データを取得する流れ
今回は下記の流れでFitbitユーザーの睡眠データを取得してみます。
APIを利用するアプリケーションをFitbit developerサイトで登録
Fitbit OAuth 2.0 Tutorialを利用し、アクセストークンを取得
2で取得したアクセストークンを利用して、Fitbitユーザーの睡眠データを取得
1. Fitbit developerサイトでアプリケーションを登録
まず、APIを利用するアプリケーションをFitbit developerサイトで登録します。
Fitbit developerサイト(https://dev.fitbit.com/)右上の「Manage > Regester An App」をクリックし、アプリケーション登録ページの各項目を入力します。
全て入力できたら、「Register」ボタンをクリックし、アプリケーションを登録します。
2. アクセストークンを取得する
登録が完了すると、添付画像のような登録したアプリケーションの詳細が表示されます。
ページ下部の「OAuth 2.0 Tutrial」をクリックすると、Fitbit OAuth 2.0 Tutorialのページが開きます。
ページの案内に沿って進めていくことで、簡単にアクセストークンが取得できます。
3. 睡眠データを取得する
最後に、取得したアクセストークンを利用して、Fitbitユーザーの睡眠データを取得します。こちらもFitbit OAuth 2.0 Tutorialを利用します。
上記の手順通りアクセストークンを取得すると、自動でトークンがセットされるため、API Endpoint URLのみ睡眠データ取得のものに書き換えます。
今回は「Get Sleep Log by Date」を呼び出し、1日分の睡眠ログを取得しました。
2023年3月27日のデータを取得しています。
例えば、1行目のdurationからはミリ秒単位での睡眠時間、efficiencyからは睡眠効率が読み取れます。他にも2行目途中のlevelには、睡眠レベル(dee|light|rem|wake)とそれがいつから何秒続いたかのデータが記録されています。
睡眠レベルのデータは要約されたものも取得でき、例えば添付画像赤枠部分からは「lightレベルの睡眠が3月27日は18回156分だったが、1ヶ月平均は333分である」といったようなことも読み取れます。
まとめ
このようにFitbitはかなり細かいレベルでデータを収集しており、Fitbit Web APIを利用すると簡単にそれらのデータを取得できます。またスマートフォンのFitbitアプリケーションでは表示されないデータも取得することができ、身体データの管理・分析等に役立てることができます。
イサナドットネットではFitbit Web APIを用いた新規システム開発・既存システムとの相互運用のお手伝いをいたします。 ご興味がある方は、ぜひお問い合わせください。