Access oDesk APIs in Ruby and Rails2
BadrIT has developed libraries to access oDesk APIs. Checkout Ruby Desk gem for desktop applications and its variant RoR Desk plugin for Rails applications.
Update 13-7-2010: Ruby Desk and RoR Desk are now officially listed on oDesk developer section. See ttp://developers.odesk.com/
Ruby Desk has been built to reduce complexity of oDesk APIs such as the authentication process which is somewhat cumbersome. This gem translates the whole process into one or two method calls. Also, wrapper classes were built to access APIs transparently to user. For example, you can use the method Job.find which returns an array of Job classes instead of building an API call and parsing an XML or JSON response.
Ruby Desk was used to build the plugin RoR Desk which made it even simpler to integrate oDesk APIs with your existing Ruby on Rails applications. All you need to do is to add your key to a configuration file, mark the actions that will access oDesk APIs and voilà! Marking the actions that uses oDesk APIs is necessary to initiate an authentication process before this action starts. This is done via a redirect to oDesk web site and when the authentication completes, the action that initiated the authentication is in active again. This is done very similar to most authentication plugins like Devise.
Please check GitHub pages for full documentation and tutorials Ruby Desk, RoR Desk.
A final note is that I built a very simple Rails application called Simple Desk that uses RoR Desk. It is meant to be a guide for you to start a new application. Simple Desk is running at the following URL http://simple-desk.heroku.com/.

2 Comments
07/13/10 at 13:51:45
Glad to see your work on Odesk project. GREAT looking site now!
Congrats to Muhammad Elkharashy for his promotion (and his new Son).
God bless you and your new family my friend.
Joe
07/20/10 at 02:09:14
i am still new in odesk but i do have some personal web dev projects. i am sure your project will come in handy downstream...
you wil definetely hear from me soon...
Leave a Comment...