Ruby/AWS 0.8.1

A Ruby language library that makes it relatively easy for programmers to retrieve info from the popular Amazon site.
Ruby/AWS is a Ruby language library that makes it relatively easy for the programmer to retrieve information from the popular Amazon Web site via Amazon Web Services (AWS). In addition to the original site,,,, and are also supported.

Ruby/AWS is the sequel to Ruby/Amazon. All too often, sequels fall short of expectations, but Ruby/AWS truly aims to be better than its predecessor. It has some distance to travel before that aim is achieved, but we're getting there.

History and compatibility with Ruby/Amazon

In the beginning, there was Ruby/Amazon. This library was built around version 3.x of the Amazon Web Service API and first saw the light of day in 2004. That version of the API was known at the time as AWS 3.x.

Amazon later renamed AWS to ECS, or E-Commerce Service, for the launch of version 4 of the API, a complete overhaul that provided no backward compatibility with previous versions. The previous version of the API was sometimes referred to as ECS 3.

Demonstrating the wisdom and consistency for which large companies are famous, Amazon changed its mind once again in late 2007, reverting to the familar name of AWS. This time, however, it stood for Associates Web Service.

Since Amazon started offering AWS, the number of Amazon Web APIs has grown. AWS is now just one of many. It is therefore no longer appropriate to call this library by a name so general as Ruby/Amazon, because it interacts only with AWS. Henceforth, this library shall therefore be known as Ruby/AWS.

Ruby/AWS is built around version 4 of the Amazon AWS API, which is fundamentally different to version 3, both in terms of how data is requested and returned. The underlying XML data structures are radically changed from previous versions.

It has therefore not been possible in Ruby/AWS to retain any level of API compatibility with Ruby/Amazon. Unfortunately, this means that any code written for Ruby/Amazon will need to be rewritten to work with Ruby/AWS.

One bit of good news is that the /etc/amazonrc and ~/.amazonrc files used with Ruby/Amazon _are_ compatible with Ruby/AWS. The only change required for Ruby/AWS is the addition of a 'key_id' parameter, which should contain your AWS Access Key ID.

Amazon finally decomissioned v3 of the AWS API on 2008-03-31. As a result, the original Ruby/Amazon library no longer functions.

last updated on:
March 22nd, 2010, 19:10 GMT
license type:
GPL (GNU General Public License) 
developed by:
Ian Macdonald
ROOT \ Internet \ HTTP (WWW)
Download Button

In a hurry? Add it to your Download Basket!

user rating 18



Rate it!
What's New in version 0.6.0
  • . Requests to AWS can now be signed in order to authenticate them. Amazon plans to make the signing of requests mandatory as of 15th August 2009, so it is recommended to start doing so now.
  • To have your requests automatically signed by Ruby/AWS, simply add the 'secret_key_id' parameter to your ~/.amazonrc configuration file. Its value should, rather predictably, be your secret access key, which can be retrieved here:
read full changelog

Add your review!