linkedin-js-patched

Minimalistic linkedin API client

linkedin-js

Easy peasy linkedin client for connect.

npm install linkedin-js

linkedin-js has two methods.

  • getAccesToken(req, res, callback): Uses oAuth module to retrieve the access_token
  • apiCall(http_method, path, params, callback): Does a call to the linkedin API.

Params are sent as JSON. Params must contain the token.

Using JSON with linkedin API

See "Granting Member Permissions to Your Application"

var express = require('express')
  , linkedin_client = require('linkedin-js')('key', 'secret', 'http://localhost:3003/auth')
  , app = express.createServer(
      express.cookieParser()
    , express.session({ secret: "string" })
    );
 
app.get('/auth', function (reqres) {
  // the first time will redirect to linkedin 
  linkedin_client.getAccessToken(req, res, function (errortoken) {
    // will enter here when coming back from linkedin 
    req.session.token = token;
    
    res.render('auth');
  }, ['rw_nus', 'r_network'] /*This AccessToken should be granted these member permissions*/);
});
 
app.post('/message', function (reqres) {
  linkedin_client.apiCall('POST', '/people/~/shares',
    {
      token: {
        oauth_token_secret: req.session.token.oauth_token_secret
      , oauth_token: req.session.token.oauth_token
      }
    , share: {
        comment: req.param('message')
      , visibility: {code: 'anyone'}
      }
    }
  , function (errorresult) {
      res.render('message_sent');
    }
  );
});
 
app.listen(3003);

linkdin is fully tested using testosterone

make