Fitbitは、腕時計型の活動量計(心拍数計)です。以前、公式チュートリアルを使って試す方法を紹介しましたが、それよりも簡単ですので、お試しあれ。
0. Postmanのインストール
公式サイトからダウンロードします。Chromeの場合、Chrome拡張機能として提供されています。
以降の記事では、Chrome拡張機能としてインストールしたPostmanの画面を前提に説明します。
1. OAuth認証情報を作成
https://dev.fitbit.com/ にアクセスします。
画面右上のREGISTER AN APP
ボタンをクリックすると、登録フォームが表示されます。
基本的に、何か埋まっていれば良いです。ただし、以下の点に気をつけてください。
-
Description
は10文字以上 -
OAuth 2.0 Application Type
にはClient
またはPersonal
を選択 -
Callback URL
には**https://www.getpostman.com/oauth2/callback
**を入力
Callback URL
は、Postmanで使用する上記のURLを正確に入力しましょう。最後にスラッシュをつけたりしないように。
最後にあるRegister
ボタンをクリックすると、登録完了画面が表示されます。
PostmanでOAuth認証を行う場合は、ここにある全てが、次のステップで必要となります。
2. リクエストヘッダにOAuth認証情報を追加
Postmanを起動し、リクエスト生成画面を開きます。Authorization
タブのType
をNo Auth
からOAuth 2.0
に変更して、オレンジ色のGet New Access Token
ボタンをクリックします。
出てきたダイアログに、必要な項目を入力します。
-
Callback URL
を確認し、先ほど入れたものと違っていたら、Fitbitの登録情報を修正し、ここに表示されているものに合わせます。 -
Token Name
には、任意の文字を指定します。 -
Auth URL
、Access Token URL
、Client ID
、Client Secret
には、先ほどの登録完了画面で表示されていた内容を入力します。 -
Scope(Optional)
には、**activity heartrate location nutrition profile settings sleep social weight
**と入力します。 -
Grant Type
はAuthorization Code
のままで結構です。
オレンジ色のRequest Token
ボタンをクリックすると、ブラウザが開き、Fitbitのログイン画面が表示されます。Fitbitのログイン情報を入力します。
ログインが完了すると、アクセス許可を求められます。
この画面でなく、「接続しようとしているアプリは Fitbit に有効なデータを提供しませんでした。この問題を報告してください。」と表示される場合は、
Callback URL
が合っているか、今一度確かめましょう。
許可
ボタンをクリックすると、ブラウザが閉じ、Existing Tokens
の後に作成されたトークンが表示されます。
トークン名をクリックして、右半分のAdd token to
をURL
からHeader
に変更してから、オレンジ色のUse Token
をクリックします。
隣のHeaders
タブを開くと、Authorization
が追加されていて、値にトークンの内容が反映されています。
Client
からPersonal
に変更する場合、また、その逆の場合は、Get New Access Token
からやり直す必要があります。ただ、Postmanは前回のトークン作成で指定した内容を覚えていますので、ボタンのクリックだけで簡単に再作成できます。
3. クエリの実行
API Document
https://dev.fitbit.com/docs/
PostmanのEnter request URL
部分にURLを設定し、青のSend
ボタンをクリックすると、結果が返ってきます。ドキュメントのExample Request をそのままコピペして実行してみて、少しずつ変更していくのも良いでしょう。
例1:直近1週間の心拍数をゾーン別に取得
https://api.fitbit.com/1/user/-/activities/heart/date/today/7d.json
参考:Get Heart Rate Time Seriesの仕様
https://dev.fitbit.com/docs/heart-rate/#get-heart-rate-time-series
行番号横の小さな三角をクリックすると、要素を畳むことができます。Fitbitのレスポンスは長いため、ぜひ活用しましょう。
例2:2017年3月4日15時55分の心拍数を取得
Personal
を指定してFitbitアプリを登録してある必要があります。
https://api.fitbit.com/1/user/-/activities/heart/date/2017-03-04/1d/1sec/time/15:55/15:56.json
参考:Get Heart Rate Intraday Time Seriesの仕様
https://dev.fitbit.com/docs/heart-rate/#get-heart-rate-intraday-time-series