skip to navigation
skip to content

Not Logged In

jawbone-up 0.1

Jawbone UP API python wrapper

JawboneUP API

This is a wrapper for the Jawbone UP API. It has convenience methods for auth, access token, refresh token, and api calls.

For terminologies, refer to the documentation here: https://jawbone.com/up/developer/authentication

Usage:

from jawbone import Jawbone jb = Jawbone(client_id, client_secret, redirect_uri, scope=”)

The app can be authorized for accessing specific data using the “scope” The parameter “scope”, by default is ‘basic_read’, which can be set as per the application’s requirements. Multiple scopes can be authorized by using space delimiters.

To see the list of available scopes, refer: https://jawbone.com/up/developer/authentication (under the heading The “scopes” allowed by the system are)

So, to use the package:

  1. Initialization:

    jb = Jawbone(client_id, client_secret, redirect_uri, scope=’basic_read extended_read’)

To make calls on behalf of the user, refer this documentation: https://jawbone.com/up/developer/authentication

To get the authorization token:

jb.auth()

This call fetches the authentication URL. You should redirect the user to the generated authentication url. Upon successful authorization, the user is redirected to the “redirect_uri” specified. The “code” is specified as a GET parameter.

If there was an error, the response would be to the “redirect_uri” with GET parameter “error”

  1. Access Token

Once we have the code, you can get the auth code by calling

token = jb.access_token(code)

Save the generated token response json.

The response, if 200 has the following components as json:

access_token, token_type, expires_at, refresh_token

Store these in the database, for future api calls.

  1. Refresh Token

The generated token from the above step has an expiry of 1 year. The refresh token provided as a part of the access_token() call, can be used to obtain the new credentials

response = jb.refresh_token_call(refresh_code)
  1. API Calls

api_call is a generic method for calling any endpoint. Documentation on endpoints here: https://jawbone.com/up/developer/endpoints

To make an API call to get sleep data:

endpoint = nudge/api/v.1.0/sleep response = jb.api_call(access_token, endpoint)

A response is a json with status_code (200, 400, etc). Parse the json for the response data If response.status == 200, the response.get(“error”) contains the message.

The library dependencies include:

urllib requests
 
File Type Py Version Uploaded on Size
jawbone-up-0.1.tar.gz (md5) Source 2014-03-31 2KB
  • Downloads (All Versions):
  • 3 downloads in the last day
  • 13 downloads in the last week
  • 68 downloads in the last month