[fitbit] 1. PythonでFitbit APIを使ってデータ取得 その1 アプリの登録とtokenの取得

はじめに

fitbitとは、心拍数、歩数や睡眠をトラッキングするために腕に着用するタイプのスマートウォッチです。日々の健康状態を把握するのにとても役立っています。ここでは、Fitbit APIを使ってデータを取得するために、アプリの登録からtokenの取得まで解説します。

手順

fitbit devにアクセス

Fitbit Development: Fitbit SDK
You'll fit in here. Using JavaScript, CSS, and SVG, developers now have a fast, easy way to build apps and clock faces for Fitbit OS.

Manage(右上)からRegister An Appを選択します。

引用元, Fitbit SDK, https://dev.fitbit.com/

アプリの登録

空白部分を適当に埋めていきます。

・Application Name (アプリの名前) (なんでもいい)
・Description(アプリの説明) (なんでもいい)
・Application Website URL(アプリのsite) (なんでもいい)
・Organization(組織) (なんでもいい)
・Organization Website URL(組織のURL) (なんでもいい)
・Terms of Service URL(サービスのURL) (なんでもいい)
・Privacy Policy URL(プライバシーポリシーのURL) (なんでもいい)
・OAuth 2.0 Application Type(アプリのタイプ)  Personal
・Redirect URL (リダイレクトURL) http://127.0.0.1:8080/
・Default Access Type (データアクセスの種類) Read Only

OAuth 2.0 Application TypeはPersonalとすることで、個人データにアクセスできるようになります。
リダイレクトURLはOAuth 2.0認証時にhttp://127.0.0.1:8080/にリダイレクトさせるために、こうしておきます。

Default Access Typeはデータ読み込みしかしないのでRead Onlyとしました。

なおURLの欄は、有効ではないURLを入れるとエラーとなるので、http://localhostなどが良いと思われます。

入力後、I have read and agree to the terms of service のチェックボックスをチェックするとRegister ボタンが有効になるのでクリックします。

Client IDとClient Secretの取得

OAuth 2.0 Client IDとClient Secretが表示されるのでメモしておきます。

次にOAuth 2.0 tutorial pageをクリックして開きます。

OAuth 2.0 tutorial pageでtoken発行の準備

以下の画面が表示されると思います。

最初に1: AuthorizeのFlow typeをAuthorization Code Flowにします。

その下の5つの欄にはIDなどがすでに入っているのでそのまま利用します。

Select Scopesの9つのチェックボックス、Expires In(ms)もそのままでいきます。

次に、We’ve generated the authorization URL for you, all you need to do is just click on link below:と書かれた下のURL部分をクリックします。すると以下のページが出現するので、全て許可するにチェックを入れ、右下の許可ボタンをクリックします。

そうすると、下記ページになります。

この時のアドレスバーを見ると以下のようにcodeが出てきます。このコードの#の手前までをコピーします。

コピーしたコードを、1A Get Codeのcode:の欄に入力します。

そうすると下にcurlコマンドが出てくるので、これをコピーします。

トークンの発行

コピーしたcurlコマンドをターミナルまたはコマンドプロンプトで実行します。そうすると以下のような形式のtokenが発行されます。

{"access_token":"################",
"expires_in":"################",
"refresh_token":"################",
"scope":"heartrate weight sleep location profile nutrition social activity settings",
"token_type":"Bearer",
"user_id":"################"}

これをコピーし、token.txtとして保存しておきます。

以下のその2に続きます。

[fitbit] 2. PythonでFitbit APIを使ってデータ取得 その2 fitbit-pythonによる睡眠データの取得とmatplotlibによる表示
fitbitとは、心拍数、歩数や睡眠をトラッキングするために腕に着用するタイプのスマートウォッチです。日々の健康状態を把握するのにとても役立っています。ここでは、アプリの登録からtokenの取得までを解説したその1の続きとして、Fitbit APIを使って睡眠データを取得してmatplotlibで表示するところまで解説します。

参考

Fitbit Development: Fitbit SDK
You'll fit in here. Using JavaScript, CSS, and SVG, developers now have a fast, easy way to build apps and clock faces for Fitbit OS.
PythonからFitbit APIを使ってデータを取得する(OAuth2) - ブログを書くまでが
昨年2016年にFitbitデビューしました。APIを使って遊んでみたかったのですができていませんでした。 以前この記事でもFitbit APIを使ってみたい的なことを言ったのでこの度やってみました。 この手のやってみた系は日本や海外ブログでいくつか見つけたのですが、最初のトークン取得を別の方法でできたのと、OAuth...
Pythonでfitbit APIから心拍数を取得してみよう! - Qiita
多機能ウエアラブル端末fitbit charge2! ひょんなことから最近話題のウエアラブル端末fitbit charge2をゲットしたので、これで遊んでみたいと思います。 fitbitは公式でAPIがあるので、これを活用し...
fitbitpython
サボテンパイソン

コメント