
Security News
Attackers Are Hunting High-Impact Node.js Maintainers in a Coordinated Social Engineering Campaign
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.
zomato-developers
Advanced tools
Zomato APIs give you access to the freshest and most exhaustive information for over 1.5 million restaurants across 10,000 cities globally. With the Zomato APIs, you can :
Basic: Get free and instant access to restaurant information and search APIs (up to 1000 calls/day). API key generated is neccessary and will be required to accesss zomato APIs.
Install using npm :
npm i zomato-developers --save
A seperate example has been added in the repository displaying usage of the package.
Get a list of categories. List of all restaurants categorized under a particular restaurant type can be obtained using /Search API with Category ID as inputs
Zomato.getCategories(API_key, Type).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Type : Type could be id ,name or undefined.
Find the Zomato ID and other details for a city . You can obtain the Zomato City ID in one of the following ways:
If you already know the Zomato City ID, this API can be used to get other details of the city.
Zomato.getCities(API_key, Data).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
});
Data : Data is an object having q, lat, lon, city_ids and count. Input it in same order.
Returns Zomato Restaurant Collections in a City. The location/City input can be provided in the following ways -
List of all restaurants listed in any particular Zomato Collection can be obtained using the '/search' API with Collection ID and Zomato City ID as the input
Zomato.getCollection(ZomatoKey, city_id, Data).then((result) => {
console.log(result)
}).catch(function(err) {
console.log(err)
})
Data : Data is an object having city_id, lat, lon and count. Pass parameter in same order.
Get a list of all cuisines of restaurants listed in a city. The location/city input can be provided in the following ways -
List of all restaurants serving a particular cuisine can be obtained using '/search' API with cuisine ID and location details
Zomato.getCuisines(API_Key, city_id, Data).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Data : Data is an object having city_id, lat and lon . Pass parameter in same order.
Get a list of restaurant types in a city. The location/City input can be provided in the following ways -
List of all restaurants categorized under a particular restaurant type can obtained using /Search API with Establishment ID and location details as inputs
Zomato.getEstablishment(API_Key, city_id, Data).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Data : Data is an object having city_id, lat and lon . Pass parameter in same order.
Get Foodie and Nightlife Index, list of popular cuisines and nearby restaurants around the given coordinates
Zomato.getGeocode(zomatoUserKey, lat, lon).then((result) => {
console.log(result)
}).catch(function(err) {
console.log(err)
})
Get Foodie Index, Nightlife Index, Top Cuisines and Best rated restaurants in a given location
Zomato.getLocationDetails(API_Key, city_id, LocationType).then((result) => {
console.log(result)
}).catch(function(err) {
console.log(err)
})
Search for Zomato locations by keyword. Provide coordinates to get better search results
Zomato.getLocation(API_Key, Query, Data).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Data : Data is an object having lat, lon and count . Pass parameter in same order.
Get daily menu using Zomato restaurant ID
Zomato.getDailyMenu(API_Key, Res_ID).then((result) => {
console.log(result)
}).catch(function(err) {
console.log(err)
})
Get detailed restaurant information using Zomato restaurant ID. Partner Access is required to access photos and reviews.
Zomato.getRestaurant(API_Key, Res_ID).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Get restaurant reviews using the Zomato restaurant ID. Only 5 latest reviews are available under the Basic API plan.
Zomato.getReviews(API_Key, Res_ID, Data).then((result) => {
console.log(result)
}).catch(function(err){
console.log(err)
})
Data : Data is an object having start and count. Place parameters in the same order.
The location input can be specified using Zomato location ID or coordinates. Cuisine / Establishment / Collection IDs can be obtained from respective api calls. Get up to 100 restaurants by changing the 'start' and 'count' parameters with the maximum value of count being 20. Partner Access is required to access photos and reviews.
Zomato.getSearch(API_Key, Data).then((result) => {
console.log(result)
}).catch(function(err) {
console.log(err)
})
Data : Data is an object having entity_id, entity_type, q, start, count, lat, lon, radius, cuisines, establishment_type, collection_id, category, sort and order. Place parameters in the same order.
| Parameters | Data type |
|---|---|
API_Key | string |
Type | string |
city_id | integer |
lat | double |
lon | double |
LocationType | string |
query | string |
Res_ID | integer |
Code can be made more efficient and customised. Any contribution towards that will be appreciated.
FAQs
Zomato API call.
We found that zomato-developers demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Multiple high-impact npm maintainers confirm they have been targeted in the same social engineering campaign that compromised Axios.

Security News
Axios compromise traced to social engineering, showing how attacks on maintainers can bypass controls and expose the broader software supply chain.

Security News
Node.js has paused its bug bounty program after funding ended, removing payouts for vulnerability reports but keeping its security process unchanged.