stMind

You'll never blog alone

Withings APIのドキュメントを読む

Withings 開発者向けリソース(API)

正式には、Withings Body Metrics Services APIWBS API)というらしい。

  • 非商用の場合は無料。
  • RESTベース、HTTP POSTもしくはGETでリクエストを送信。

リクエストフォーマット

http://wbsapi.withings.net/[service_name]?action=[action_name]&[parameters]

  • [service_name]:リクエストするサービス名
  • [action_name]:サービス上で実行するアクション(必須)
    • 例えば, userサービスの場合、getbyuseridupdateを持つ.
  • [parameters]:サービスに渡す必須もしくはオプションのパラメータ. OAuth関連のパラメータはここに記述(必須)

レスポンスフォーマット

  • JSON形式

{"status":0, "body":{} }

  • bodyフィールドは、リクエストしたservice/actionに依存して空のこともある.
  • statusフィールドはmandatory
    • 0の場合はリクエスト成功を意味し、その他の数値は失敗を意味する.
  • サンプル
    • リクエスト

http://wbsapi.withings.net/once?action=probe

    • レスポンス

{"status":0}

認証

  • ユーザとアカウント
    • 1アカウントは複数ユーザで使われていることもある
  • ユーザはuseridでユニークに区別され、Oauth認証情報を通してユーザと紐付けされる
  • 必須のOauthパラメータ
    • oauth_consumer_key
    • oauth_token
    • oauth_nonce
    • oauth_version
    • oauth_signature_method
    • oauth_timestamp
    • oauth_signature
  • 完全なリクエスト例

http://wbsapi.withings.net/measure?action=getmeas&oauth_consumer_key=7e563166232c6821742b4c277350494a455f392b353e5d49712a34762a&oauth_nonce=f22d74f2209ddf0c6558a47c02841fb1&oauth_signature=yAF9SgZa09SPl3H1Y5aAoXgyauc=&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1309783586&oauth_token=c68567f1760552958d713e92088db9f5c5189754dfe4e92068971f4e25d64&oauth_version=1.0&userid=1229

  • パラメータの順番重要!
    • クエリのすべてのパラメータはアルファベット順とする

通知

  • 計測データ更新の通知
  • モニタするユーザ毎にアプリケーションがsubscribeする
    • 1ユーザがsubscribeできるアプリは16個まで

サービス一覧

  • 詳細はドキュメントで.
    • measure/getmeas
    • user/getuserid
    • notify/subscribe
    • notify/revoke
    • notify/get
    • notify/list

その他