Skip to main content

Jawbone UP API python wrapper

Project description

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

Project details


Release history Release notifications | RSS feed

This version

0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jawbone-up-0.1.tar.gz (2.5 kB view details)

Uploaded Source

File details

Details for the file jawbone-up-0.1.tar.gz.

File metadata

  • Download URL: jawbone-up-0.1.tar.gz
  • Upload date:
  • Size: 2.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for jawbone-up-0.1.tar.gz
Algorithm Hash digest
SHA256 8b4aabb43869569a03e3de868ea6b12ce46b8fe0e1edf5d06b840b8238322af0
MD5 e4d10a51704c0410466a2aa9789e4990
BLAKE2b-256 31483bb9fc6cdd527eeaedd67147c96297be682ac338e486c676d2d7b66a7e07

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page