diff -r 51ac454d5d89 twitter.py
--- a/twitter.py	Thu Dec 31 15:06:42 2009 -0500
+++ b/twitter.py	Sat Apr 10 10:42:52 2010 -0400
@@ -690,6 +690,30 @@
     results.append(self.PostUpdate(lines[-1], **kwargs))
     return results
 
+  def PostRetweet(self, id):
+    '''Retweet a tweet with the Retweet API
+
+    The twitter.Api instance must be authenticated.
+
+    Args:
+      id: The numerical ID of the tweet you are retweeting
+
+    Returns:
+      A twitter.Status instance representing the retweet posted
+    '''
+    if not self._username:
+      raise TwitterError("The twitter.Api instance must be authenticated.")
+    try:
+        if int(id) <= 0:
+            raise TwitterError("'id' must be a positive number")
+    except ValueError:
+        raise TwitterError("'id' must be an integer")
+    url = 'http://api.twitter.com/1/statuses/retweet/%s.json' % id
+    json = self._FetchUrl(url, post_data={})
+    data = simplejson.loads(json)
+    self._CheckForTwitterError(data)
+    return NewStatusFromJsonDict(data)
+
   def GetReplies(self, since=None, since_id=None, page=None):
     '''Get a sequence of status messages representing the 20 most recent
     replies (status updates prefixed with @username) to the authenticating