For some reason, when running under Ruby 1.9.3, the http.post returns status 200, but with a nil body, causing JSON.parse to raise an exception. This seems to be a Net::HTTP issue in 1.9.3, but thought you should know about it.
Running ruby 1.9.3p125 (2012-02-16 revision 34643) [x86_64-darwin11.3.0]