0.0.6 • Published 9 years ago

fivehundred-friends v0.0.6

Weekly downloads
-
License
MIT
Repository
bitbucket
Last release
9 years ago

#500 Friends API

This library is used for making REST calls to the 500 Friends platform.

Making requests

var FivehundredFriends = require('fivehundred-friends');

// pass configurations
var ffriends = new FiveHundredFriends({
  host: 'loyalty.500friends.com', 
  path: '/data',
  secret_key: 'YOUSECRETKEY',
  uuid: 'YOURUUID'

});

// make request
ffriends.data.customer.auth_token({
  email: 'testing@example.com'
 }, function(response){ 
  console.log(arguments);
  });

The above code will make a post request to 'https://loyalty.500friends.com/data/customer/auth_token'. The parameters will be included as part of a query string for GET requests and the post body for POST requests.

Adding new methods

To add new resources, create a new file in src/resources with the endpoint name as the file name.

Inside the the file export an object that contains sub ojects that will map to the endpoint method call. The example below in the src/resources/data/customer js file will map to the ffriends.data.customer.auth_token method.

module.exports = {
    auth_token: {
        verb: 'get', // request type
        /*
         * You don't need to include the sig or uuid parameters here. They will be added
         * automatically
         */
        mandatory: 'email', // mandatory params
        optional: 'external_customer_id' // optional params go here
    }
};

All files in the resources directory will be mapped to the ffriends object using the file name and sub object keys as method names.

You can also have files in the root of the resources directory. The example below in the src/resources/api.js file would map to ffriends.api.record

module.exports = {
    record: {
        verb: 'get', // request type
        suffix: '.json',
        /*
         * You don't need to include the sig or uuid parameters here. They will be added
         * automatically
         */
        mandatory: 'email,type', // mandatory params
        optional: 'value,external_customer_id' // optional params go here
    }
};

As you'll notice the second example contains a suffix value. Some of the 500friends endpoints require them, some of them don't. If the endpoint requires a suffix, add the value here and it will automatically be appended to the request. In this case it will create the url: https://loyalty.500friends.com/api/record.json

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago