I created a subreddit that I am connecting to a twitter account via twitterfeed.

Currently I have it pointed to this RSS feed.

I would like to filter this RSS feed with posts that have X upvotes such that only the good posts reach the Twitter account. Is there a way to do this? via API or otherwise?

2 Answers 2


If you're looking for only the best quality posts to make it, you could point it at the feed of the "Top" filter for that subreddit. This would ensure that only the links that are getting up-voted make it to the twitter account. The downside here is that you're at the mercy of what reddit decides makes a "top" post, i.e. you can't specify "X upvotes" as a minimum threshold.

Another apporach would be to take the feed, check how many votes each entry has, and then output the entry if votes are more than X. The XML feed doesn't seem to expose number of votes, but the JSON version does (http://www.reddit.com/r/inthemorning/.json, look for "score").

Pseudo code would go something like:

read in json file
for each entry in the json file:
    check whether upvotes > X
    if upvotes > X
        output this entry to new feed

If you already have the infrastructure set up to take a feed and tweet it, the likeliest path of least resistance is to have the json feed parsed, with only valid (i.e. more than X upvotes) entries outputted to another rss feed (example.com/upvotedreddits.xml or similar), and just point your twittering script at this.

Yahoo pipes as already mentioned allows you to do this, but if you're at all technically minded then it's not too tricky to set this up with a quick bit of PHP and json parsing. If you do go down that route and run in to any trouble, stick up a question on stackoverflow.com and you'll get a far more detailed and technical response!


I have heard that yahoo pipes is pretty good at making custom feeds from other feeds or web pages. Although I myself would not know how to put it together on pipes.

  • Thanks, I'll look and see what services Yahoo Pipes provides Aug 11, 2010 at 20:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.