Get started quickly using AWS with the AWS SDK for Ruby. The SDK helps take the complexity out of coding by providing Ruby classes for many AWS services including Amazon S3, Amazon EC2, DynamoDB, and more. The single, downloadable package includes the AWS Ruby Library and documentation. The SDK is also available through Ruby Gems (http://rubygems.org/gems/aws-sdk).

New users of the AWS SDK for Ruby are recommended to start their projects with the Version 2. The new version introduces a number of improvements including waiters, automatically paginated responses, a streamlined plugin architecture, better documentation, and more.

Version 2 consists of two separate gems: 'aws-sdk-core' and aws-sdk-resources'.

Gem 'aws-sdk-core' (Stable)

The Core gem, 'aws-sdk-core', is now stable and recommended for production use. It provides full one-to-one mapping to AWS APIs. It also has a number of new built-in features such as automatic response paging, waiters, parameter validation, and Ruby type support in the Amazon DynamoDB client.

Gem 'aws-sdk-resources' (Preview)

The Resources gem, 'aws-sdk-resources', is currently in preview, and we encourage customers to try out the new API and send us feedback via GitHub issues. Resource APIs provide an object-oriected abstraction over the "low-level" or RPC-style interface in the Core, for a simpler and more intuitive coding experience. A resource object is a reference to an AWS resource (such as an Amazon EC2 instance or an Amazon S3 object) that exposes the resource's attributes and actions as instance variables and methods. Additional services and capabilities will be added to the Resources gem as it approaches general availability.

Install the stable aws-sdk-core gem

gem install aws-sdk-core

or Preview Resource APIs

gem install aws-sdk --pre


Version Locking

Existing users of the Version 1 are welcome to continue using it. However, in order to avoid compatibility issues when the 2.0 final is released, one of the following needs to be done: 1. specify the gem version as '< 2.0' or 2. change the gem dependency to the 'aws-sdk-v1' gem. Please see the Bundler Gemfile example to the right.

Side-by-side with Version 2

Because Versions 1 and 2 of the SDK use different namespaces (AWS vs. Aws) and can be installed using different gem names, they can be used side-by-side in the same project. Find out more at the AWS Ruby Development Blog.

AWS::Record

Manage application data following the ActiveRecord-style of Ruby on Rails®, complete with validators, finders, and scopes.

Integrate with Ruby on Rails®

Use Amazon SES with ActionMailer, easily support multiple target environments, and send messages to the Ruby on Rails® logger.


or install the Gem »

gem install aws-sdk-v1

or use Bundler Gemfile »

gem 'aws-sdk', '< 2.0'

# OR

gem 'aws-sdk-v1'


Find examples and more in the Developer Guide »

Connect with other developers in the Ruby Community Forum »

Discover more about using Ruby with AWS in the Ruby Developer Center »

Learn the details of the latest SDK in the Release Notes »

Dig through the source code in the GitHub Repository »