Skip to content


Subversion checkout URL

You can clone with
Download ZIP
A ruby tumblr client! Fun for all!
Branch: master
Pull request Compare This branch is 96 commits behind codingjester:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.

Tumblr Ruby Gem

This is a ruby wrapper for the Tumblr v2 API. There should be support for all endpoints currently available on the Tumblr API.


gem install tumblr_client


First and foremost, this gem will not do a three legged oauth request for you. It is just a wrapper to help make your life easier when using the v2 api. If you need to do the full oauth workflow, then please check out the Ruby OAuth Gem.


Configuration for the gem is actually pretty easy:

Tumblr.configure do |config|
    config.consumer_key = "consumer_key"
    config.consumer_secret = "consumer_secret"
    config.oauth_token = "access_token"
    config.oauth_token_secret = "access_token_secret"

Once you have your configuration squared away it's time to make some requests!

>> client =

That's it! You now have a client that can make any request to the Tumblr API.

Some quick examples

Getting use information:


Getting a specific blog's posts and type:

#Grabbing a specific blogs posts
>> client.posts("")

#Grabbing only the last 10 photos off the blog
>> client.posts("", "photo", :limit => 10)

Posting some photos to Tumblr:

#Uploads a great photoset
>>"", {:data => ['/path/to/pic.jpg', '/path/to/pic.jpg']}) 

The irb Console

Finally, there is an irb console packaged with the gem that should help you test any calls you want to make. The magic here is that you have a .tumblr file in your home directory. Inside this file it's just a basic YAML layout with four lines:

consumer_key: "your_consumer_key"
consumer_secret: "your_consumer_secret"
oauth_token: "your_access_token"
oauth_token_secret: "your_access_token_secret"

From there, you should be able to run any of the above commands, with no problem! Just fire off the command `tumblr from the terminal and you should be dropped into a console.

Contributions and Pull Requests

No request is too small and I encourage everyone to get involved. As you can see, we're sorely lacking in tests! So please if you would like to contribute, let me know and throw me a pull request!

Something went wrong with that request. Please try again.