snowshoe
v0.2.0
Published
Node API Client for the Snowshoe API
Downloads
20
Readme
Snowshoe API Node.js Client
The Snowshoe node client submits point data to the Snowshoe API for authentication. The client will return a JSON object, containing either the serial of the matched stamp (a success!) or an error.
Dependencies
- oauth
- q
Installation
npm install snowshoe
var Snowshoe = require('showshoe')
Usage: Setting up the client and making a POST
On instantiation of the Snowshoe client, pass in your SNOWSHOE_APP_KEY & SNOWSHOE_APP_SECRET, respectively.
Currently, all posts are made to v2 of the API at http://beta.snowshoestamp.com/api/v2/stamp.
The data object is constructed from the point data sent by your front-end stamp screen.
The client will return a JSON object, containing either the serial of the matched stamp (a success!) or an error.
var client = new Snowshoe.client(SNOWSHOE_APP_KEY, SNOWSHOE_APP_SECRET);
var data = {data: request.body.data};
client.post(data, function(error, data){
if (error) {
// handle errors
};
// handle success
})
Optionally, you can inspect the whole OAuth response object if you'd like.
var client = new Snowshoe.client(SNOWSHOE_APP_KEY, SNOWSHOE_APP_SECRET);
var data = {data: request.body.data};
client.post(data, function(error, data, oauthResponse){
console.log(oauthResponse.statusCode)
// add conditional logic based on OAuth's response
})
Or return a promise instead (via Q).
client.post(data).then(function (data) {
// handle success
})
.catch(function (error) {
// handle errors
});
Below are examples of success and error JSON responses from the API.
// Success
{
"stamp": {
"serial": "DEV-STAMP"
},
"receipt": "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
"secure": false,
"created": "2015-03-24 11:27:33.014149"
}
// Error
{
"error": {
"message": "Stamp not found",
"code": 32
},
"receipt": "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
"secure": false,
"created": "2015-03-24 11:27:48.235046"
}
Tests
(Coming soon)
Contribute
Join us in improving this client by making a pull request.
License
MIT (see LICENSE file)