Misfit API Python Client Implementation
Install with pip install misfit
[Create an app](https://build.misfit.com/apps) with "Application Domain" set to http://127.0.0.1:8080/. Now use the "App key" and "App secret" in the following command:
misfit authorize --client_id=<app_key> --client_secret=<app_secret>
That will save the necessary credentials for making further API calls to a file called "misfit.cfg". These credentials should be kept private. You can use same the command-line client to access everything in the [Resource API](https://build.misfit.com/docs/resource). You can also access the same resources using the Python API:
>>> from misfit import Misfit
>>> misfit = Misfit(<client_id>, <client_secret>, <access_token>)
>>> print(misfit.profile())
{u'gender': u'male', u'birthday': u'1981-07-18', u'userId': u'scrubbed', u'name': u'Brad Pitcher'}
After you have installed and `created your misfit app<https://build.misfit.com/apps>`_ you can authorize and use the API with your own web server rather than the built-in CherryPy server like so:
>>> from misfit.auth import MisfitAuth >>> auth = MisfitAuth(<client_id>, <client_secret>, redirect_uri=<redirect_uri>) >>> auth_url = auth.authorize_url()
Now redirect the user to auth_url. When control returns to your web
server at the endpoint specified in <redirect_uri>, you will receive
code and state GET params you can pass to the
fetch_token method, which will return access_token, which is
needed for further API calls:
>>> access_token = auth.fetch_token(<code>, <state>)
>>> from misfit import Misfit
>>> misfit = Misfit(<client_id>, <client_secret>, <access_token>)
>>> print(misfit.profile())
{u'gender': u'male', u'birthday': u'1981-07-18', u'userId': u'scrubbed', u'name': u'Brad Pitcher'}
- Python 2.6+ < 3
- slumber
- docopt
- cherryPy
- requests-oauthlib