FeedBurner’s Missing API

I use FeedBurner for this site’s feed. I like what it tries to do, though I am a little concerned about possible neglect on Google’s part. Normally, FeedBurner checks each feed every thirty minutes to see whether there is new content. This is, of course, much too slow for those of us who want real-time publishing of items to Twitter or Facebook or some other social network.

There is a form at the FeedBurner site that you can use to ping FeedBurner manually. Incidentally, that page refers to the “Ping and Extended Ping XML-RPC API” which is apparently defunct. Using the form makes a GET request to /fb/a/pingSubmit, whereupon the result of the request is displayed—that is, whether it succeeded or was throttled or failed.

That’s nice for human use, but not so much for automation. So, I’ve wrapped that service in a REST endpoint to which you can make a POST (not a GET), like this (in Ruby):

endpoint = URI('http://feedburner-pinger.herokuapp.com/')
feed_url = 'http://feeds.feedburner.com/MyFeed'
response = Net::HTTP.post_form endpoint, {:url => feed_url}

The response, if successful, will look like this:

{
  "status": "SUCCEEDED",
  "message": "Successfully pinged"
}

To publish this site, I have a Rake task that uses this API to ping FeedBurner. More details of the API are at the service endpoint.

blog comments powered by Disqus