Inspired by ntwitter .
npm install ntumblr
consumerKey and consumerSecret can be obtained from Tumblr.
accessTokenKey and accessTokenSecret can be obtained via OAuth: instruction is below .
Minimal server that returns your accessTokenKey and accessTokenSecret can be found at /server/app.coffee
Tumblr = require('ntumblr')
tumblr = new Tumblr
consumerKey: 'TumblrConsumerKey'
consumerSecret: 'TumblrConsumerSecret'
accessTokenKey: 'AccessTokenKey'
accessTokenSecret: 'AccessTokenSecret'
tumblr.get 'info', (err, data, response)->
blogInfoData = JSON.parse( data ).response.blog
{ title,
posts,
name,
url,
updated,
description,
ask,
ask_anon,
likes } = blogInfoData
tumblr.get 'posts', (err, data, response)->
postsData = JSON.parse(data).response.posts
postsData.forEach (post)->
{
blog_name,
id,
post_url,
type,
date,
timestamp,
format,
reblog_key,
tags,
highlighted,
note_count,
title,
body,
} = post
tumblr.get 'posts', type: 'text', (err, data, response)->
postsData = JSON.parse(data).response.posts
Other request parameters can be found at Request Parameters
filterParam =
type: 'text'
limit: 1
tumblr.get 'posts', filterParam, (err, data, response)->
postData = JSON.parse(data).response.posts[0]
Requires AccessTokenKey and AccessTokenSecret
postObj =
type: 'text'
title: 'Demo Post'
body: 'Having a nice day :D'
status: 'draft'
tumblr.post postObj, (err, data, response)->
{
meta,
response
} = JSON.parse(data)
if meta.status is 201 then console.log meta.msg is 'Created'
newPostId = response.id
Requires AccessTokenKey and AccessTokenSecret
postObj =
type: 'photo'
data: [fs.readFileSync('photo.jpg')]
tumblr.post postObj, (err, data, response)->
{
meta,
response
} = JSON.parse(data)
if meta.status is 201 then console.log meta.msg is 'Created'
newPostId = response.id
Make sure you have got access tokens
# Create the url-strings first to check against
$ python test/assets/tumblrv2api.py test/assets/photo.jpg
$ mocha
$ mocha test/tumblr # only test against tumblr
- Copy
config-sample.jsontoconfig.json - Get
consumerKeyandconsumerSecretfrom Tumblr, then add to theconfig.json - Run simple server by
coffee serverthen go tohttp://localhost:3000to allow the app. - Check your
config.json. it should have access tokens in place. - You can run test by
$ mocha:)
by mnmly