Switch branches/tags
Nothing to show
Find file
e217552 Oct 22, 2011
60 lines (45 sloc) 2.16 KB


Ruby gem that wraps Zomato API

In your Gemfile

gem 'zomato'
$ bundle install


require 'rubygems'
require 'zomato'

zomato ='your_key_here')
delhi = zomato.cities.first 
#<Zomato::City:0x8ffe080 @id=1, @name="Delhi NCR", @longitude="77.210276", @latitude="28.625789", @has_nightlife=true, @show_zones=true>
noida = delhi.zones.first
#<Zomato::Zone:0x9b6d8bc @id=1, @name="Noida", @city_id=1>
alaknanda = delhi.localities.first 
#<Zomato::Subzone:0x8c67020 @id=316, @name="Alaknanda", @zone_id=3, @city_id=1>
american = delhi.cuisines.first
#<Zomato::Cuisine:0x94c0c58 @id=1, @name="American", @city_id=1>
restaurants = american.restaurants
restaurants.results_found # 100
restaurants.results_start # 0
restaurants.results_shown # 10
underdogs =  restaurants.restaurants.first # or
underdogs =  restaurants.first
#<Zomato::Restaurant:0x8e90694 @id=3384, @name="Underdoggs Sports Bar & Grill", @address="F 38, Level 1, Ambience Mall, Vasant Kunj, New Delhi", @locality="Vasant Kunj", @city="Delhi", @cuisines="American, Mediterranean, Italian", @rating_editor_overall=3.5, @cost_for_two=1500, @has_discount=false, @has_citibank_discount=false>

# Like for cuisines, fetches restaurants in "Noida" zone and "Alaknanda" subzone respectively

# Returns details and reviews as a hash, check zomato documentation for details as the response is returned as is.
underdogs.report_error("This is a test, please ignore.", "Chirantan Rajhans") # true or false based on success or failure.

searched_underdogs =, 'underdog').restaurants.first
# Check zomato documentation for more search options (to be passed as a hash to == # true

Zomato::Restaurant.near('28.557706', '77.205879')
# Finds a random restaurant near given geocodes.


  • Some methods accept optional parameters (e.g. searches). Pass them as a hash. Refer zomato's documentation to know their names and datatypes.
  • Also, this gem could use some more specs.