Moves API for Node
This provides a wrapper to the Moves API. Please refer to the documentation before getting started. You'll need a client before you can begin.
Install
npm install moves
Oauth
//initialize with client information as created at (https://dev.moves-app.com/clients) var Moves = require('moves') , moves = new Moves({ client_id: 'your client id' , client_secret: 'your client secret' , redirect_uri: 'your redirect uri' })
Start Auth Flow
var authorize_url = moves.authorize({ scope: ['activity', 'location'] //can contain either activity, location or both , state: 'my_state' //optional state as per oauth }) /* --OR-- */ //optionally pass in an [Express Response Object](http://expressjs.com/api.html#response) //and it will automatically redirect the user moves.authorize({ scope: ['activity', 'location'] //can contain either activity, location or both , state: 'my_state' //optional state as per oauth }, response)
Retrieve a token
moves.token('code returned from authorize step above', function(error, response, body) { var access_token = body.access_token , refresh_token = body.refresh_token , expires_in = body.expires_in })
Get information about a token
moves.token_info(access_token, function(error, response, body) { })
Refresh an access token
moves.refresh_token(refresh_token, function(error, response, body) { })
Using the API
Now that we have a valid access token, we can hit any endpoints that our token is correctly scoped to
moves.get('/user/profile', function(error, response, body) { }) moves.get('/user/summary/daily?from=&to=', function(error, response, body) { })