Osteria Rivelin APIosteriarivelin.com ↗
Access Osteria Rivelin's full food & drink menu, wine lists, and reservation links via 3 structured JSON endpoints with euro prices and allergen data.
What is the Osteria Rivelin API?
The Osteria Rivelin API covers 3 endpoints that expose the current food and drink menu, two official wine lists, and reservation and menu URLs from Osteria Rivelin in Peschiera del Garda. The get_food_drink_menu endpoint returns the full menu tree with item prices in EUR, allergen arrays, and section hierarchy, while get_wine_list returns producer, vintage, denomination, and regional data for every wine and spirit entry.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/e6dfe2c7-d829-4f60-9864-5c35f68ecb97/get_food_drink_menu' \ -H 'X-API-Key: $PARSE_API_KEY'
Returns the restaurant's complete current digital menu as published on its official menu page: top-level sections (e.g. 'Da Mangiare', 'Da Bere', plus an 'About us' text section), each with categories (Antipasti, Primi, Birre, ...) and their items. Each item carries the dish/drink name, description, the price text exactly as shown (e.g. '13€/24€' for small/large formats) and the parsed euro amounts in prices_eur (empty when the item has no price, e.g. a heading or narrative text block flagged by is_subcategory_heading or a null name). Allergen numbers follow the site's numeric allergen legend. One call fetches the whole menu; no pagination. Italian-language content.
No input parameters required.
{
"type": "object",
"fields": {
"language": "menu language code as published",
"menu_url": "direct URL of the official online menu",
"sections": "array of top-level menu sections, each with id, name, description and categories[] of {id, name, items[]}",
"restaurant": "menu slug of the restaurant on its menu provider",
"allergen_legend": "allergen legend display mode reported by the menu",
"sections[].categories[].items": "array of {id, name, description, price_text, prices_eur (array of numbers in EUR), is_subcategory_heading, allergens (array of integers)}"
},
"sample": {
"data": {
"language": "it",
"menu_url": "https://menu.menumal.com/osteriarivelin",
"sections": [
{
"id": "memal_01KVWTA42E0N4KGHG46XTPV08A",
"name": "Da Mangiare",
"categories": [
{
"id": "memal_01KVWTA5BS3RSHSWWNA99VCFA6",
"name": "Antipasti",
"items": [
{
"id": "memal_01KVWTE65A24VCPX2B60SJSJ31",
"name": "Polenta E Soppressa",
"allergens": [
3,
12
],
"price_text": "10€",
"prices_eur": [
10
],
"description": "Soppressa della Valpolicella all'aglio accompagnata da polenta.",
"is_subcategory_heading": false
}
]
}
],
"description": null
},
{
"id": "memal_01KVWTA71WWWV0T5W936AV3XXP",
"name": "Da Bere",
"categories": [
{
"id": "memal_01KVWTA7A7GA5K6YM5SBVVNPXY",
"name": "Aperitivi E Bevande",
"items": [
{
"id": "memal_01KVWTEHGPS6DR02DH5TBW3C97",
"name": "Spritz Bianco",
"allergens": [
12
],
"price_text": "4€",
"prices_eur": [
4
],
"description": null,
"is_subcategory_heading": false
}
]
}
],
"description": null
}
],
"restaurant": "osteriarivelin",
"allergen_legend": "alwaysvisible"
},
"status": "success"
}
}About the Osteria Rivelin API
Menu Data
get_food_drink_menu returns the restaurant's live digital menu as a structured section tree. Top-level sections (such as 'Da Mangiare' and 'Da Bere') each contain categories like Antipasti, Primi, and Birre, which in turn carry individual items. Each item includes name, description, price_text, prices_eur (an array of floats), allergens (an array of integers referencing the included allergen legend), and an is_subcategory_heading flag. The response also provides language, menu_url, and the allergen_legend display mode.
Wine Lists
get_wine_list accepts an optional list parameter to select either the restaurant's 'Carta dei vini e delle grappe' or the sister bottega's wine list. Sections are returned with parent_id for nesting; parent sections act as headings with empty items[]. Each wine entry carries producer, vintage, denomination, category, grapes, country, and region. The response includes total_items (an integer count of distinct entries), generated_at (ISO-8601 UTC), and wine_list_url.
Links and Reservations
get_menu_links returns menu_links — an array of {label, url} pairs pointing to the official online menu and wine list — and reservation_links, which are the booking URLs found on the restaurant's reservations page, plus reservations_page_url. No inputs are required.
The Osteria Rivelin API is a managed, monitored endpoint for osteriarivelin.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when osteriarivelin.com 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 osteriarivelin.com 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?+
- Display Osteria Rivelin's current menu with EUR prices and allergen information in a third-party restaurant guide app.
- Build a wine discovery tool filtering by country, region, denomination, or grape variety from the full wine list.
- Compare menu pricing across multiple Italian lakeside restaurants by ingesting
prices_eurfields. - Automate detection of menu updates by polling
get_food_drink_menuand diffing section or item changes. - Surface direct reservation links in a travel itinerary builder using the
reservation_linksarray. - Generate allergen-aware menu summaries by combining
allergensinteger arrays with theallergen_legendfield. - Aggregate producer and vintage data from both wine lists to map the restaurant's full wine inventory.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Osteria Rivelin have an official public developer API?+
What does the `list` parameter on `get_wine_list` control?+
total_items, generated_at, wine_list_url, and a full nested section tree with per-item fields like producer, vintage, denomination, grapes, country, and region.Does the API cover historical menus or price change history?+
Are customer reviews or ratings for Osteria Rivelin included?+
How fresh is the menu data returned by `get_food_drink_menu`?+
generated_at ISO-8601 UTC timestamp indicating when that list was last generated. There is no explicit staleness indicator on the food menu response itself.