This code is tricky to understand. The :get method is called inside Assignable module, but I couldn't find it here. Later I realized that this method is defined in HTTParty which is included in this module. Again, it's tricky to understand. Why not call HTTParty.get instead of all this stuff? One more disadvantage of your code is that you can accidentally redefine methods from HTTParty, that's way you can break HTTParty library.