iFood Restaurant Scraper — CNPJ, Address & Hours avatar

iFood Restaurant Scraper — CNPJ, Address & Hours

Pricing

from $15.00 / 1,000 restaurant scrapeds

Go to Apify Store
iFood Restaurant Scraper — CNPJ, Address & Hours

iFood Restaurant Scraper — CNPJ, Address & Hours

Turn iFood delivery URLs into one restaurant row each: name, rating, category, CNPJ, street address, phone, and weekday hours. Paste store links or merchant UUIDs. Built for Brazil marketplace research, dark-kitchen scouting, and store-level audits. No menus in this version.

Pricing

from $15.00 / 1,000 restaurant scrapeds

Rating

0.0

(0)

Developer

Muhamed Didovic

Muhamed Didovic

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

iFood Scraper — Menus, Reviews, CNPJ & Address

Turn iFood delivery URLs — or a city + address search — into one restaurant row: name, rating, CNPJ, street address, phone, hours, menu items with prices when the catalog answers, and optional customer reviews.

Brazil marketplace records. One billed row per restaurant.

How it works

How the iFood restaurant scraper works

Why Use This Scraper?

  • CNPJ on the row. Company tax id comes with the street address — useful for matching a store to a legal entity.
  • Hours and phone included. Weekday opening windows and the store phone, not just the card rating.
  • Delivery URLs or raw UUIDs. The same {city}/{slug}/{uuid} link you copy from ifood.com.br, or the merchant id alone.
  • One row per restaurant. No menu-item explosion, no join keys. Name, geo, and documents sit on the same record.
  • Menus and reviews on the same row. includeMenu / includeReviews match the other iFood Store actors. Check menuSource — catalog can come back empty when iFood blocks it.
  • City + address search. Same sao-paulo-sp + Av Paulista 1000 + query shape as the listing next door. Falls back to URL mode if search returns nothing.

Overview

Built for researchers, dark-kitchen operators, and agencies that need the public merchant card plus extra (address, CNPJ, hours), optional reviews, and menu items when the catalog answers. Paste delivery URLs or search by city + address. Each restaurant becomes at most one dataset row.

Supported Inputs

InputExampleReturns
Delivery URLhttps://www.ifood.com.br/delivery/sao-paulo-sp/bubblekill-patio-paulista-bela-vista/5024be82-d729-41b9-a64f-d44ba306f232That restaurant
Merchant UUID5024be82-d729-41b9-a64f-d44ba306f232Same restaurant, URL rebuilt from the slug

Search mode: city (sao-paulo-sp) + optional address + query. Used only when restaurantUrls is empty.

Not supported: logged-in prices, downloading every menu photo to the Key-Value Store, or PedidosYa / Rappi.

Use Cases

You are a…Use it to…
Market researcherBuild a store list with CNPJ + neighborhood for a city you already sampled
Competitor analystTrack rating, min order, and hours on a fixed set of restaurants
Dark-kitchen operatorConfirm legal entity and address for nearby iFood stores
Agency / data teamEnrich a spreadsheet of iFood links before a client report

How It Works

  1. Resolve restaurants from delivery URLs / UUIDs, or from city + address + query search.
  2. Fetch the merchant card from iFood's public marketplace API (/v1/merchants/{uuid}?channel=IFOOD).
  3. Fetch the extra record (address, CNPJ, phone, hours) when includeExtra is on.
  4. Fetch the catalog when includeMenu is on. Empty catalogs land as menuSource: unavailable.
  5. Fetch evaluations when includeReviews is on.
  6. Merge into one restaurant row and push it. Base charge is per restaurant; extra / menu / reviews are billed only when those fields actually land.

Input Configuration

FieldTypeDescription
restaurantUrlsarrayDelivery URLs or merchant UUIDs. Skips search when filled.
citystringCity slug (sao-paulo-sp). Search mode only.
addressstringDelivery address for geocoding. Search mode only.
querystringCuisine / name filter (pizza). Search mode only.
maxRestaurantsintegerCap on rows (and charges). Default 50.
includeMenubooleanMenu items + prices. Billed only when menu[] is non-empty. Default true.
menuModestringlimited or all. Default limited.
maxMenuItemsintegerCap per restaurant in limited mode. Default 50.
includeReviewsbooleanCustomer evaluations. Billed once per restaurant, not per review. Default false.
includeExtrabooleanAddress, CNPJ, phone, hours. Billed when at least one of those lands. Default true.
maxConcurrencyintegerParallel fetches, 1–8. Default 4.

One restaurant

{
"restaurantUrls": [
"https://www.ifood.com.br/delivery/sao-paulo-sp/bubblekill-patio-paulista-bela-vista/5024be82-d729-41b9-a64f-d44ba306f232"
],
"maxRestaurants": 1
}

Several stores, card only

{
"restaurantUrls": [
"5024be82-d729-41b9-a64f-d44ba306f232",
"bca94461-58e3-4a70-b142-8f8694133838"
],
"includeExtra": false,
"includeMenu": false,
"maxRestaurants": 2
}

Reviews + city search

{
"city": "sao-paulo-sp",
"address": "Av Paulista 1000",
"query": "pizza",
"includeReviews": true,
"maxRestaurants": 10
}

Output Overview

The dataset holds one row per restaurant. Identity, rating, category, and availability come from the merchant card. Street address, CNPJ, phone, and weekday hours come from the extra record. Menu items and reviews sit on the same row when those flags are on. Fields iFood does not publish stay null or [].

Output Samples

Delivery URL → Bubblekill Pátio Paulista (São Paulo):

{
"uuid": "5024be82-d729-41b9-a64f-d44ba306f232",
"shortId": 2125042,
"name": "Bubblekill Pátio Paulista",
"slug": "sao-paulo-sp/bubblekill-patio-paulista-bela-vista",
"url": "https://www.ifood.com.br/delivery/sao-paulo-sp/bubblekill-patio-paulista-bela-vista/5024be82-d729-41b9-a64f-d44ba306f232",
"city": "sao-paulo-sp",
"description": "Bubble Tea",
"category": "Casa de Sucos",
"priceRange": "CHEAPEST",
"currency": "BRL",
"rating": 5,
"reviewsCount": 61,
"available": true,
"minimumOrderValue": 10,
"address": "Rua Treze de Maio, 1947, Pátio Paulista - 3º Piso, Bela Vista, SAO PAULO - SP, 01327900",
"street": "Rua Treze de Maio",
"streetNumber": "1947",
"district": "Bela Vista",
"cityName": "SAO PAULO",
"state": "SP",
"zipCode": "01327900",
"cnpj": "44918087000156",
"phone": "+55 11 40032665",
"openingHours": [
{ "dayOfWeek": "MONDAY", "start": "11:00:00", "durationMinutes": 600 }
],
"menu": [],
"menuItemCount": 0,
"menuSource": "unavailable",
"reviews": [
{
"customerName": "Ana",
"rating": 5,
"comment": "Pedido chegou quente.",
"commentedAt": "2026-08-12T18:22:00.000Z"
}
],
"reviewAverages": [
{ "title": "Comida", "grade": 4.8, "count": 40 }
]
}

Key Output Fields

Identity: uuid, shortId, name, slug, url, city, description, category, logoUrl, coverUrl

Commerce: priceRange, currency, rating, reviewsCount, available, minimumOrderValue, deliveryFee, deliveryFeeOriginal, deliveryTime, distance, features, paymentCodes

Legal / location: cnpj, address, street, streetNumber, streetCompl, district, cityName, state, zipCode, country, latitude, longitude

Contact / hours: phone, areaCode, openingHours[]

Menu: menu[], menuItemCount, menuSource, avgMenuPrice, cheapestPrice, mostExpensivePrice, cheapestItem, mostExpensiveItem

Reviews: reviews[], reviewAverages[], recentReviewsCount

FAQ

Do I need an iFood account? No. The actor reads public marketplace records.

Can I search a city for pizza? Yes — city, address, query. If iFood's search API is blocked that run, the actor fails with 0 rows unless you also passed restaurantUrls.

Where is the menu? includeMenu: true (default). When the catalog answers you get menu[] plus avgMenuPrice / cheapest / most expensive. When it is blocked, menuSource is unavailable and menu is [] — the restaurant row still bills.

Are reviews billed one-by-one? No. One restaurant-reviews event per restaurant when reviews[] is non-empty. Extra and menu work the same way — billed only when the data is on the row.

What if a URL is dead? That restaurant is skipped and not billed. A run with zero successful rows fails.

Is CNPJ always present? When includeExtra is true and iFood publishes documents for that merchant. Ghost kitchens sometimes omit it.

Support

Open an issue on the Apify Store listing or email contact@data-slayer.com.

Additional Services

Need a custom export, a scheduled city monitor once search is possible again, or a merge with another delivery marketplace? Email the same address with the store list and the fields you need.

Explore More Scrapers

🤖 For AI Agents & LLM Apps

Compact reference for agents calling this actor via the Apify MCP server or the Apify API (memo23/ifood-scraper).

Purpose: Public iFood restaurant records in Brazil. URL mode or city/address search. One row per store, with CNPJ/address/hours, optional menu, optional reviews.

Minimal input:

{
"restaurantUrls": [
"https://www.ifood.com.br/delivery/sao-paulo-sp/bubblekill-patio-paulista-bela-vista/5024be82-d729-41b9-a64f-d44ba306f232"
],
"includeReviews": true,
"maxRestaurants": 5
}

Output: one row per restaurant — uuid, name, url, city, category, rating, reviewsCount, cnpj, address, phone, openingHours[], menu[{id, name, details, section, price, originalPrice, imageUrl}], menuSource, avgMenuPrice, reviews[{customerName, rating, comment, commentedAt}], reviewAverages[], scrapedAt.

Behaviors an agent should know:

  • Always set maxRestaurants. Each written row is billed ($0.015). Extra ($0.005), menu ($0.010), and reviews ($0.005) fire only when those fields are non-empty.
  • restaurantUrls wins over city / address / query.
  • includeReviews defaults false. includeMenu defaults true.
  • menuSource is catalog, catalog-search, empty, or unavailable.
  • Failed URLs are skipped and not billed. Zero successful rows fail the run.

⚠️ Disclaimer

This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by iFood.com Agência de Restaurantes Online S.A. or any of its subsidiaries. All trademarks mentioned are the property of their respective owners.

The scraper accesses only publicly available iFood marketplace records — no authenticated endpoints, paid features, or content behind the ifood.com.br login wall. Users are responsible for ensuring their use complies with ifood.com.br's Terms of Service, applicable data-protection law (LGPD, GDPR, CCPA, etc.), and any contractual obligations of their own organization.


SEO Keywords

ifood scraper, ifood restaurant scraper, ifood menu scraper, ifood reviews, ifood cnpj, ifood address, ifood delivery url, brazilian restaurant data, ifood marketplace, dark kitchen research, ifood store hours, ifood phone, food delivery intelligence, sao paulo restaurant data, ifood merchant uuid, restaurant competitive intelligence, brazil food delivery