node-jawbone-up
Jawbone UP API Node.js Client
API Version: v.1.1
Official UP API: jawbone.com/up/developer


Installation
npm install jawbone-up --save
Usage
An access_token
attribute is required in the options object!
See below for an example of how this could be done. This library does not
assist in getting an access_token
through OAuth, but once you get the token,
it will apparently last for a year.
A client_secret
attribute is required if you would like to use up.refreshToken.get()
to get new refresh tokens. It is not required otherwise.
var options = {
access_token: 'xyz'
client_secret: 'abc'
}
var up = require('jawbone-up')(options);
Documentation
Official UP API can be found at jawbone.com/up/developer
Example callback:
function callback(err, body) {
if(err) {
console.log('Error: ' + err);
}
else {
var data = JSON.parse(body).data;
}
}
User information
up.me.get({}, callback)
up.friends.get({}, callback)
up.mood.get({}, callback)
up.trends.get({}, callback)
up.goals.get({}, callback)
Moves
up.moves.get({}, callback)
up.moves.get({ xid : move_xid }, callback)
up.moves.image({ xid : move_xid }, callback)
up.moves.ticks({ xid : move_xid }, callback)
Workouts
up.workouts.get({}, callback)
up.workouts.create(options, callback)
up.workouts.get({ xid : workout_xid }, callback)
up.workouts.update(options, callback)
up.workouts.image({ xid : workout_xid }, callback)
up.workouts.ticks({ xid : workout_xid }, callback)
Sleeps
up.sleeps.get({}, callback)
up.sleeps.get({ xid : sleep_xid }, callback)
up.sleeps.create(options, callback)
up.sleeps.image({ xid : sleep_xid }, callback)
up.sleeps.ticks({ xid : sleep_xid }, callback)
up.sleeps.delete({ xid : sleep_xid }, callback)
Meals
up.meals.get({}, callback)
up.meals.create(options, callback)
up.meals.update(options, callback)
up.meals.get({ xid : meal_xid }, callback)
Body Composition
up.events.body.get({}, callback)
up.events.body.get({ xid : event_xid }, callback)
up.events.body.create(options, callback)
up.events.body.delete({ xid : event_xid }, callback)
Cardiac Metrics
up.events.cardiac.get({}, callback)
up.events.cardiac.get({ xid : event_xid }, callback)
up.events.cardiac.create(options, callback)
up.events.cardiac.delete({ xid : event_xid }, callback)
Generic Events
up.events.generic.get({}, callback)
up.events.generic.get({ xid : event_xid }, callback)
up.events.generic.create(options, callback)
up.events.generic.update(options, callback)
up.events.generic.delete({ xid : event_xid }, callback)
Mood
up.mood.get({}, callback)
up.mood.get({ xid : mood_xid }, callback)
up.mood.create(options, callback)
up.mood.delete({ xid : mood_xid }, callback)
Time Zone
up.timezone.get({}, callback)
Refresh Token
Added in v.1.1
up.refreshToken.get(callback)
Settings
Added in v.1.1
up.settings.get(callback)
Webhook
Added in v.1.1
up.webhook.create(webhook_url, callback)
up.webhook.delete(callback)
Tests
Tests can be found in the test
folder.
To run tests:
Make sure you first have dependencies installed by running:
npm install
Then you may run all the tests with:
npm test
License
MIT © 2014 Ryan Seys