agentcooper / node-livejournal

LiveJournal API
15 stars 4 forks source link
livejournal

LiveJournal API

Build Status

npm install livejournal

This package provides access to both XMLRPC and JSONRPC APIs for LiveJournal.

XMLRPC

Examples

// get posts inside the journal using XMLRPC
LiveJournal.xmlrpc.getevents({
  journal: 'brad',
  auth_method: 'noauth',
  selecttype: 'lastn',
  howmany: 20
}, function(err, value) {
  console.log(value.events);
});
// get post content using XMLRPC
LiveJournal.xmlrpc.getevents({
  journal: 'brad',
  auth_method: 'noauth',
  selecttype: 'one',
  ditemid: '29215'
}, function(err, post) {
  console.log(post.events[0]);
});

JSONRPC

There is no official public description of LiveJournal JSON RPC methods, but you can check Site.rpc.public on http://livejournal.com. Because the data is stored on CDN, you can access the data from anywhere.

Those are current ones (badly documented, contributions are welcome):

discovery.author_posts
comment.get_thread

Get comments thread

Params:
journal -- Journal username
itemid -- Post id
latest.get_entries

Get latest posts

Params:
first_timepost
browse.get_posts
gifts.get_gifts_categories
gifts.get_all_gifts
homepage.get_categories
discovery.suggest
sitemessage.get_message
discovery.get_categories
browse.get_categories
writers_block.get_list
discovery.today
discovery.get_feed
discovery.get_item
homepage.get_rating
browse.get_communities

Examples

// get latest posts using JSONRPC
LiveJournal.jsonrpc.request('latest.get_entries', {
  first_timepost: 1435262400
}, function(err, res) {
  console.log(res.body.result.params.recent);
});
// get comments using JSONRPC
LiveJournal.jsonrpc.request('comment.get_thread', {
  journal: 'tema',
  itemid: '1987717'
}, function(err, res) {
  console.log(res.body.result.comments)
});

You can access method list using LiveJournal.jsonrpc.methods.

API

LiveJournal.API is wrapper around some resources provided at http://www.livejournal.com/bots/

Other docs and resources

Tests

npm install jasmine -g
npm test