Ifood Restaurant Scraper avatar

Ifood Restaurant Scraper

Pricing

$16.90 / 1,000 results

Go to Apify Store
Ifood Restaurant Scraper

Ifood Restaurant Scraper

Extracts restaurant data from iFood Brazil—including profiles, menus, prices, and ratings—with location-based search and clean, structured JSON output.

Pricing

$16.90 / 1,000 results

Rating

5.0

(2)

Developer

Yasmany Grijalba Casanova

Yasmany Grijalba Casanova

Maintained by Community

Actor stats

6

Bookmarked

75

Total users

16

Monthly active users

2.5 hours

Issues response

4 days ago

Last modified

Share

Extract comprehensive restaurant data from iFood — the largest food delivery platform in Latin America.

Apify Actor Residential Proxy Brazil


Table of Contents


Quick Start

Get started in three simple steps:

Step 1: Find restaurants in São Paulo

{
"mode": "stores",
"latitude": "-23.5608786",
"longitude": "-46.6570743"
}

Step 2: Get restaurant details

{
"mode": "store_info",
"latitude": "-23.5608786",
"longitude": "-46.6570743",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e"
}

Step 3: Extract the menu

{
"mode": "menu",
"latitude": "-23.5608786",
"longitude": "-46.6570743",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e"
}

Tip: Use stores mode first to discover restaurant IDs, then use those IDs for store_info, menu, and reviews modes.


Features

FeatureDescription
100+ Restaurants per RequestGet up to 100 restaurants in any Brazilian location
Complete Menu DataFull menus with prices, descriptions, and customization options
Detailed Store ProfilesAddress, ratings, delivery info, and operating hours
Customer ReviewsExtract customer reviews with ratings, comments, and dates
Real-Time DataFresh data directly from iFood's platform
Structured JSON OutputClean, validated data ready for analysis

Use Cases


How It Works

+------------------+ +------------------+ +------------------+ +------------------+
| STEP 1 | | STEP 2 | | STEP 3 | | STEP 4 |
| Search |--->| Store Info |--->| Menu |--->| Reviews |
| Stores | | Details | | Extraction | | Feedback |
+------------------+ +------------------+ +------------------+ +------------------+
| | | |
v v v v
Up to 100 Complete store Full menu with Customer reviews
restaurants information prices and items with ratings

Step 1: Search Restaurants

Find restaurants in any Brazilian location using coordinates:

{
"mode": "stores",
"latitude": "-23.5608786",
"longitude": "-46.6570743"
}

Returns: Up to 100 restaurants with name, ratings, delivery fees, distance, and availability.

Step 2: Get Restaurant Details

Use the store_id from Step 1 to get complete restaurant information:

{
"mode": "store_info",
"latitude": "-23.5608786",
"longitude": "-46.6570743",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e"
}

Returns: Full address, ratings, delivery times, minimum order value, and more.

Step 3: Get Complete Menu

Extract the full menu with all items and prices:

{
"mode": "menu",
"latitude": "-23.5608786",
"longitude": "-46.6570743",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e"
}

Returns: Categories, items, prices, descriptions, images, and customization options.

Step 4: Get Customer Reviews

Extract customer reviews and ratings:

{
"mode": "reviews",
"latitude": "-23.5608786",
"longitude": "-46.6570743",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e",
"maxReviews": 100
}

Returns: Customer reviews with names, ratings, comments, and dates.


Input Parameters

Required Parameters

ParameterTypeDescription
modestringOperation mode: stores, store_info, menu, or reviews
latitudestringLocation latitude (e.g., "-23.5608786")
longitudestringLocation longitude (e.g., "-46.6570743")

Mode-Specific Parameters

ParameterTypeRequired ForDescription
store_idstringstore_info, menu, reviewsRestaurant UUID from stores mode
maxReviewsintegerreviewsMaximum reviews to fetch (1-1000, default: 100)

Optional Parameters

ParameterDefaultDescription
maxRetries3Retry attempts for failed requests
timeout30Request timeout in seconds

Proxy Configuration

ParameterDefaultDescription
useApifyProxyfalseEnable Apify Proxy for better reliability
proxyGroups["RESIDENTIAL"]Proxy group - RESIDENTIAL recommended
proxyCountryBRProxy country code (BR recommended for iFood)

Note: Proxy is optional but recommended for production use. Proxy usage is billed separately to your Apify account.


Operation Modes

ModeDescriptionRequired ParametersOutput
storesSearch restaurants by locationlatitude, longitudeUp to 100 restaurants
store_infoGet restaurant detailslatitude, longitude, store_idComplete store profile
menuGet menu items with priceslatitude, longitude, store_idFull menu with categories
reviewsGet customer reviewslatitude, longitude, store_idReviews with ratings and comments

Output Examples

Stores Mode

{
"mode": "stores",
"data": [
{
"name": "Pizza Hut - Paraíso",
"segment": "Pizza",
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e",
"available": "S",
"distance": 1.28,
"user_rating": 4.7,
"fee": 899,
"time_min_minutes": 25,
"time_max_minutes": 35,
"is_ifood_delivery": true
}
],
"metadata": {
"items_count": 100,
"scraped_at": "2026-01-21T14:00:00.000Z"
}
}

Store Info Mode

{
"mode": "store_info",
"data": {
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e",
"name": "Pizza Hut - Paraíso",
"main_category": "Pizza",
"city": "São Paulo",
"district": "Jardim Paulista",
"state": "SP",
"street_name": "Av Brigadeiro Luis Antonio",
"street_number": "2893",
"zip_code": "01401000",
"user_rating": 4.7,
"user_rating_count": 555,
"delivery_fee": 8.99,
"delivery_time": 33
}
}
{
"mode": "menu",
"data": {
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e",
"categories": [
{
"name": "Pizzas Tradicionais",
"items_count": 15,
"items": [
{
"description": "Pizza Marguerita",
"details": "Molho de tomate, mussarela e manjericão",
"unit_price": 45.90,
"logo_url": "https://static.ifood-static.com.br/...",
"choices": [
{
"name": "Escolha sua massa",
"garnish_items": [
{"description": "Massa tradicional", "unit_price": 0.0},
{"description": "Massa pan", "unit_price": 5.0}
]
}
]
}
]
}
]
}
}

Reviews Mode

{
"mode": "reviews",
"data": {
"store_id": "f1b60ced-d490-499f-976b-6d3d717d927e",
"total_reviews_available": 3808,
"reviews_fetched": 100,
"reviews": [
{
"customer_name": "Maximo",
"rating": 4.0,
"grade": 4.0,
"comment": "Comprei Grande, mas, tamanho menor, não é grande",
"comment_date": "2026-01-09T23:36:55.725000+00:00",
"order_date": "2026-01-09T22:41:29.799000+00:00",
"order_number": 3635,
"status": "ACE",
"moderated": false
},
{
"customer_name": "Mozart",
"rating": 5.0,
"grade": 5.0,
"comment": "Excelente pizza",
"comment_date": "2025-12-23T23:48:30.834000+00:00",
"order_date": "2025-12-23T22:39:09.072000+00:00",
"order_number": 1713,
"status": "ACE",
"moderated": false
}
]
}
}

Data Fields

Stores Mode

FieldTypeDescription
namestringRestaurant name
segmentstringFood category (Pizza, Japanese, etc.)
store_idstringUnique restaurant identifier (UUID)
availablestringOpen/closed status ("S" = open)
distancenumberDistance in kilometers
user_ratingnumberAverage rating (0-5 stars)
feenumberDelivery fee in cents (899 = R$8.99)
time_min_minutesnumberMinimum delivery time (minutes)
time_max_minutesnumberMaximum delivery time (minutes)
is_ifood_deliverybooleaniFood delivery vs restaurant delivery

Store Info Mode

FieldTypeDescription
namestringRestaurant name
main_categorystringPrimary food category
citystringCity name
statestringState abbreviation
districtstringNeighborhood/district
street_namestringStreet name
street_numberstringStreet number
zip_codestringPostal code
latitudenumberRestaurant latitude
longitudenumberRestaurant longitude
user_ratingnumberAverage rating (0-5 stars)
user_rating_countnumberTotal number of ratings
delivery_feenumberDelivery fee in BRL
delivery_timenumberEstimated delivery time (minutes)
minimum_order_valuenumberMinimum order amount in BRL
FieldTypeDescription
categoriesarrayMenu sections
itemsarrayProducts in each category
descriptionstringItem name
detailsstringItem description
unit_pricenumberItem price in BRL
logo_urlstringItem image URL
choicesarrayCustomization options (sizes, extras)
garnish_itemsarrayIndividual options with prices

Reviews Mode

FieldTypeDescription
total_reviews_availablenumberTotal reviews for the restaurant
reviews_fetchednumberNumber of reviews returned
customer_namestringCustomer's first name
ratingnumberRating (1-5 stars)
gradenumberGrade given
commentstringCustomer comment (if any)
comment_datestringWhen the review was posted (ISO 8601)
order_datestringWhen the order was placed (ISO 8601)
order_numbernumberOrder reference number
statusstringReview status
moderatedbooleanWhether review was moderated

Integrations

Use the API tab on the Actor page to get ready-to-use code examples in Python, JavaScript, and cURL. The examples are auto-generated with the correct parameters for immediate integration.


How to Get Coordinates

Option 1: Google Maps

  1. Open Google Maps
  2. Right-click on any location in Brazil
  3. Click on the coordinates to copy them
  4. Use the first number as latitude and second as longitude

Option 2: Use Common City Coordinates

CityLatitudeLongitude
São Paulo (Centro)-23.5608786-46.6570743
Rio de Janeiro-22.9068467-43.1728965
Belo Horizonte-19.9166813-43.9344931
Brasília-15.7942287-47.8821658
Curitiba-25.4289541-49.2671340
Salvador-12.9714-38.5124
Fortaleza-3.7172-38.5433
Recife-8.0476-34.8770
Porto Alegre-30.0346-51.2177
Manaus-3.1190-60.0217

Important Notes

TopicDetails
RegionBrazil only — iFood operates exclusively in Brazil
ProxyOptional but recommended for production use (BR residential)
Stores Limitstores mode returns maximum 100 restaurants per request
Store IDUse UUIDs from stores mode for other operations
CoordinatesRequired for all modes — use Brazilian coordinates
One Request Per RunEach run executes one operation

FAQ


Support

Having issues? Here is how to get help:

  1. Check the FAQ above for common solutions
  2. Review your input parameters to ensure they match the required format
  3. Test with default values to ensure the actor is working
  4. Contact support through Apify for additional assistance