Remove all your posts from your Tumblr account

Thursday, March 25, 2010

In the process of 'rebooting' this blog, I've decided to erase all previous auto-generated posts (nearly 7500) which have been made in the past 3 years. I was kinda lazy with my Tumblr account to be honest, so this site was acting like a mere lifestream aggregator of various feeds (Flickr photos, Twitter updates, blog rss etc.).

In order to erase this huge number of posts, I searched for clues in Tumblr account page. Sadly, I was only able to completely erase my Tumblr account, thus deleting all my info, which wasn't exactly what I wanted to do. The 'mass erase' feature was nowhere to be found, neither in account settings page nor in API calls.

With a little Google search I found some Ruby scripts for this kind of job, but their dependencies and required libraries was too much of a headache for such straightforward procedure. Time for some coding, I said.

The PHP script I came up with can be found on Gist and does exactly what the title of this post says: Erases all posts from a Tumblr blog. In order to get it to work for your blog you will have to fill your credentials in the variables '$tumblrDomain', '$tumblrEmail' and '$tumblrPassword'.  I must warn you though, that running the script will completely erase your posts (1 by 1, so you will have the time to stop it). There is no undo!