Uber Eats scraper API: restaurant pages as JSON
Send any Uber Eats page URL with recipe=ubereats and get city, country, cuisine and 1 more field as JSON. No selectors to write, no proxies to pick.
- 1 page type
- 4 fields
- 5 credits a page · $0.50 per 1,000
- Working · 91.2% in 7 days
5,000 free credits for 7 days, no card.
curl -G 'https://api.ujeebu.com/scrape' \
-H "ApiKey: $UJEEBU_API_KEY" \
--data-urlencode 'url=https://www.ubereats.com/store/cafe-gratitude-larchmont/kb6OWc4ITIiHKmMQkRX_IA?mod=quickView&modctx=%257B%2522storeUuid%2522%253A%252291be8e59-ce08-4c88-872a-63109115ff20%2522%252C%2522sectionUuid%2522%253A%25227d0bb91f-f108-500a-8fc0-ae70acd712c3%2522%252C%2522subsectionUuid%2522%253A%2522684a7d7c-48f4-5e53-bc8d-2dffcc7eda39%2522%252C%2522itemUuid%2522%253A%25226d8e9428-d64d-5395-851f-6263c492d1d1%2522%252C%2522showSeeDetailsCTA%2522%253Atrue%257D&ps=1' \
--data-urlencode 'recipe=ubereats'
{
"result": {
"city": "Los Angeles",
"country": "US",
"cuisine": "Vegan, Healthy, Juice and Smoothies",
"region": "CA"
},
"success": true
}
What you get from Uber Eats
The fields of each page type and a real sample from our last validation, shortened.
Restaurant pages recipe=ubereats 5 credits a page
| Field | Type | Example |
|---|---|---|
place.city | text | Los Angeles |
place.country | text | US |
place.cuisine | text | Vegan, Healthy, Juice and Smoothies |
place.region | text | CA |
Sample answer, validated 2026-10-29
{
"place": {
"city": "Los Angeles",
"country": "US",
"cuisine": "Vegan, Healthy, Juice and Smoothies",
"region": "CA"
}
}
One call
Send the page URL and the recipe name to the Scrape API. The recipe brings the extract rules and the settings that work on Uber Eats (JavaScript rendering).
curl -G 'https://api.ujeebu.com/scrape' \
-H "ApiKey: $UJEEBU_API_KEY" \
--data-urlencode 'url=https://www.ubereats.com/store/cafe-gratitude-larchmont/kb6OWc4ITIiHKmMQkRX_IA?mod=quickView&modctx=%257B%2522storeUuid%2522%253A%252291be8e59-ce08-4c88-872a-63109115ff20%2522%252C%2522sectionUuid%2522%253A%25227d0bb91f-f108-500a-8fc0-ae70acd712c3%2522%252C%2522subsectionUuid%2522%253A%2522684a7d7c-48f4-5e53-bc8d-2dffcc7eda39%2522%252C%2522itemUuid%2522%253A%25226d8e9428-d64d-5395-851f-6263c492d1d1%2522%252C%2522showSeeDetailsCTA%2522%253Atrue%257D&ps=1' \
--data-urlencode 'recipe=ubereats'
import os, requests
r = requests.get(
"https://api.ujeebu.com/scrape",
params={"url": "https://www.ubereats.com/store/cafe-gratitude-larchmont/kb6OWc4ITIiHKmMQkRX_IA?mod=quickView&modctx=%257B%2522storeUuid%2522%253A%252291be8e59-ce08-4c88-872a-63109115ff20%2522%252C%2522sectionUuid%2522%253A%25227d0bb91f-f108-500a-8fc0-ae70acd712c3%2522%252C%2522subsectionUuid%2522%253A%2522684a7d7c-48f4-5e53-bc8d-2dffcc7eda39%2522%252C%2522itemUuid%2522%253A%25226d8e9428-d64d-5395-851f-6263c492d1d1%2522%252C%2522showSeeDetailsCTA%2522%253Atrue%257D&ps=1", "recipe": "ubereats"},
headers={"ApiKey": os.environ["UJEEBU_API_KEY"]},
timeout=120,
)
print(r.json()["result"])
const params = new URLSearchParams({
url: "https://www.ubereats.com/store/cafe-gratitude-larchmont/kb6OWc4ITIiHKmMQkRX_IA?mod=quickView&modctx=%257B%2522storeUuid%2522%253A%252291be8e59-ce08-4c88-872a-63109115ff20%2522%252C%2522sectionUuid%2522%253A%25227d0bb91f-f108-500a-8fc0-ae70acd712c3%2522%252C%2522subsectionUuid%2522%253A%2522684a7d7c-48f4-5e53-bc8d-2dffcc7eda39%2522%252C%2522itemUuid%2522%253A%25226d8e9428-d64d-5395-851f-6263c492d1d1%2522%252C%2522showSeeDetailsCTA%2522%253Atrue%257D&ps=1",
recipe: "ubereats",
});
const res = await fetch(`https://api.ujeebu.com/scrape?${params}`, {
headers: { ApiKey: process.env.UJEEBU_API_KEY },
});
console.log((await res.json()).result);
The answer is {"result": {...}} with the headers Ujb-Recipe and Ujb-Credits. Your own parameters always win over the recipe.
What people build with Uber Eats data
Restaurant market research
Map the restaurants of an area with their cuisine, rating and delivery terms.
Learn more
Price
Same price as the page call, no fee for the recipe. Only successful responses are billed; blocked, timed-out and failed requests are free.
| Page type | Credits a page | Per 1,000, Starter | Per 1,000, Pro |
|---|---|---|---|
| Restaurant page | 5 | $0.82 | $0.50 |
FAQ
What does the Uber Eats recipe return?
JSON with 4 fields from restaurant page (recipe=ubereats), for example city, country, cuisine, region. The answer is {"result": {...}} with the fields shown on this page.
How much does it cost to scrape Uber Eats?
5 credits a page ($0.50 per 1,000 on Pro, $0.82 on Starter). Same price as the page call, no fee for the recipe. Only successful responses are billed; blocked, timed-out and failed requests are free.
Do I need proxies or a headless browser?
No. The recipe brings the settings that work on Uber Eats: JavaScript rendering. Send only the URL and recipe=ubereats.
What happens when Uber Eats changes its pages?
We check Uber Eats every day and re-validate the recipe on real pages every week, then fix it when the site changes. Until a fix is live, the API answers 404 "the recipe has no working version" instead of empty data, and that call is free.
Can I change the fields?
Yes. Send your own extract_rules or any setting (js, proxy_type, wait_for) and it wins over the recipe. The developer guide shows the recipe rules to start from.
Related recipes
GrubhubSearch results, Restaurant page · 5 credits
TalabatSearch results · 25 credits
LinkedInSearch results, Detail page, Profile · 5 credits
AmazonSearch results, Product page · 5 credits
X (Twitter)Profile · 5 credits
InstagramProfile · 5 credits
Logos and names belong to their owners. Ujeebu is not affiliated with Uber Eats.
Get Uber Eats data as JSON today.
5,000 free credits for 7 days. No card.