Com APIpedidosya.com.ar ↗
Access PedidosYa Argentina restaurant listings, full menus with prices, city coverage, and search by keyword across Argentine cities.
What is the Com API?
This API exposes 4 endpoints covering PedidosYa Argentina's food delivery platform, letting you retrieve operating cities, browse featured restaurants by city slug, search restaurants by name or food category, and pull complete menu data including item names, prices, and section breakdowns. The get_restaurant_menu endpoint returns every menu section and its items — including price, original_price, and currency — for any restaurant identified by its restaurant_slug.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/2e3b849a-3b4b-42d1-ac3a-40de7d811ef0/get_cities' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace pedidosya-com-ar-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""PedidosYa Argentina - discover restaurants and browse menus across cities."""
from parse_apis.pedidosya_argentina_api import PedidosYa, RestaurantNotFound
client = PedidosYa()
# List all available cities
for city in client.cities.list(limit=6):
print(city.name, city.slug)
# Construct a city and list its restaurants
buenos_aires = client.city(slug="buenos-aires")
for restaurant in buenos_aires.restaurants.list(limit=3):
print(restaurant.name, restaurant.rating, restaurant.delivery_time)
# Search for pizza restaurants in a city
result = buenos_aires.restaurants.search(query="pizza", limit=1).first()
if result:
print(result.name, result.categories, result.delivery_fee)
# Fetch the full menu for the found restaurant
try:
menu = result.menu()
print(menu.restaurant.name, menu.restaurant.menu_id)
for section in menu.sections[:2]:
print(section.name, len(section.items))
for item in section.items[:2]:
print(item.name, item.price, item.currency)
except RestaurantNotFound as exc:
print(f"Restaurant not found: {exc.restaurant_slug}")
print("exercised: cities.list / restaurants.list / restaurants.search / restaurant.menu")
Fetch the list of cities where PedidosYa operates in Argentina. Returns city names and URL slugs. Each slug can be used to construct a City instance for listing or searching restaurants in that city.
No input parameters required.
{
"type": "object",
"fields": {
"cities": "array of city objects each containing name (string) and slug (string)"
},
"sample": {
"data": {
"cities": [
{
"name": "Buenos Aires",
"slug": "buenos-aires"
},
{
"name": "Cordoba",
"slug": "cordoba"
},
{
"name": "Rosario",
"slug": "rosario"
},
{
"name": "La Plata",
"slug": "la-plata"
},
{
"name": "San Miguel De Tucuman",
"slug": "san-miguel-de-tucuman"
},
{
"name": "Mar Del Plata",
"slug": "mar-del-plata"
}
]
},
"status": "success"
}
}About the Com API
City and Restaurant Discovery
The get_cities endpoint returns an array of city objects, each with a name and slug. These slugs (e.g. buenos-aires, cordoba, rosario) are the required input for the other three endpoints. get_restaurants_by_city accepts a city slug and returns up to 20 featured restaurants along with a total count of all restaurants in that city, an array of food categories (each with id and name), and restaurant objects carrying fields like rating, review_count, delivery_time, delivery_fee, url, and the restaurant_slug needed for menu lookups.
Menu Data
get_restaurant_menu takes a city slug and a restaurant_slug (the UUID-suffixed identifier returned by get_restaurants_by_city or search_restaurants, e.g. tostado-obelisco-06) and returns a menu array structured as sections. Each section has a name, id, and an items array where every item includes id, name, description, price, original_price, and currency. The restaurant object in the response carries id, name, and menu_id. This makes it straightforward to detect discounts by comparing price against original_price.
Search
search_restaurants filters the featured restaurant list for a given city slug using a query string matched case-insensitively against restaurant names and food category names. The response echoes the query and returns a results array with the same restaurant fields available in get_restaurants_by_city. An empty results array is a valid response when no matches are found — it does not indicate an error.
The Com API is a managed, monitored endpoint for pedidosya.com.ar — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when pedidosya.com.ar changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official pedidosya.com.ar API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a price-comparison tool across Buenos Aires restaurants by aggregating
priceandoriginal_pricefields fromget_restaurant_menu. - Monitor delivery fee and delivery time trends across Argentine cities using fields from
get_restaurants_by_city. - Populate a city-selector UI with
get_citiesslugs to drive restaurant browsing for any PedidosYa-covered Argentine city. - Find all restaurants serving a specific cuisine by querying
search_restaurantswith a food category keyword. - Track restaurant ratings and review counts over time using
ratingandreview_countfrom restaurant listing endpoints. - Identify discounted menu items by comparing
pricevsoriginal_priceacross restaurant menus. - Index menu sections and item descriptions for a food search engine covering multiple Argentine cities.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does PedidosYa have an official developer API?+
What does `get_restaurants_by_city` return and how many restaurants does it cover?+
total integer showing the full count of restaurants in that city, and an array of food categories. Each restaurant object includes rating, review_count, delivery_time, delivery_fee, url, slug, and restaurant_slug. The total field tells you how many restaurants exist even if only 20 are returned in the response.Does the API cover all restaurants in a city, or only a subset?+
get_restaurants_by_city and search_restaurants return featured or matched restaurants — the total field may be higher than the 20 returned. Full paginated access to all restaurants in a city is not currently exposed. The API covers city listings, featured restaurant data, keyword search, and full menu retrieval. You can fork it on Parse and revise to add a paginated restaurant listing endpoint.Are restaurant reviews or individual review text available?+
rating and review_count numeric fields at the restaurant level, but individual review text, reviewer details, and review timestamps are not included in any endpoint response. You can fork the API on Parse and revise it to add a review-detail endpoint.What quirks should I know about the `restaurant_slug` parameter for `get_restaurant_menu`?+
restaurant_slug must be the UUID-suffixed value from the restaurant_slug field in get_restaurants_by_city or search_restaurants results (e.g. tostado-obelisco-06), not the plain slug field. Using the plain slug will not resolve to a menu. Always pull restaurant_slug directly from the listing response.