A rubygem for accessing the IceRocket API written by Chris Oliver


Add this line to your application's Gemfile:

gem 'ice_rocket', '~> 0.0.2'

And then execute:

$ bundle

Or install it yourself as:

$ gem install ice_rocket


Using the IceRocket API is as simple as creating a search object and then fetching pages of results:

search ="new york", :sourceid => "YOURSOURCEID", :dl => - 2, :dh =>, :per_page => 50)
results = search.fetch :page => 3

results["rss"]["channel"]["totalResults"] # 13760
results["rss"]["channel"]["startIndex"]   # 101 = (page * per_page) + 1
results["rss"]["channel"]["item"].length  # 50

There are a number of parameters and more readable equivalents that you can use with the Search object:

:sourceid          - Your source ID key
:dh  or :date_high - Upper limit of the date filter
:dl  or :date_low  - Lower limit of the date filter
:lng or :language  - Language ("en", "de", etc)
:n   or :per_page  - Number of items per page. Must be less than or equal to 50

search ="new york", :sourceid => "YOURSOURCEID", :dl => - 2, :dh =>, :per_page => 50)

The fetch method also takes the following:

:p or :page - The page number to retrieve

results = search.fetch :page => 3

If you would like to add debugging messages to IceRocket:

IceRocket::Search.debug_output $stderr


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request