Discover/hungerstation.com API
live

hungerstation.com APIhungerstation.com

Access HungerStation restaurant data for Saudi Arabia. Browse cities, retrieve full menus, ratings, cuisine types, and pricing via 2 structured endpoints.

Endpoint health
verified 4h ago
get_cities
get_restaurants_by_city
2/2 passing latest checkself-healing
Endpoints
2
Updated
5h ago
Try it

No input parameters required.

api.parse.bot/scraper/77b0aebd-1e5f-4d91-9b11-aa6933c36428/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/77b0aebd-1e5f-4d91-9b11-aa6933c36428/get_cities' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 hungerstation-com-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.

"""Walkthrough: HungerStation API — browse Saudi Arabia restaurants by city."""
from parse_apis.hungerstation_com_api import HungerStation, CityNotFound

client = HungerStation()

# List all cities served by HungerStation
for city in client.cities.list(limit=5):
    print(city.city_name, f"({city.restaurant_count} pages)")

# Drill into a specific city's restaurants via constructible City
riyadh = client.city(city_slug="riyadh")
for restaurant in riyadh.restaurants.list(limit=3):
    print(restaurant.name, restaurant.rating, restaurant.cuisine_type)
    if restaurant.menu_items:
        item = restaurant.menu_items[0]
        print(f"  Menu: {item.name} - {item.price}")

# Access nested location details
first = riyadh.restaurants.list(limit=1).first()
if first:
    print(first.location.city, first.location.neighborhood)

# Handle city not found error
try:
    bad_city = client.city(city_slug="nonexistent-city-xyz")
    for r in bad_city.restaurants.list(limit=1):
        print(r.name)
except CityNotFound as exc:
    print(f"City not found: {exc.city_slug}")

print("exercised: cities.list / city().restaurants.list / location access / CityNotFound")
All endpoints · 2 totalmissing one? ·

Returns all cities served by HungerStation in Saudi Arabia. Each city includes its display name, URL slug for use with other endpoints, and the number of available restaurant pages (districts). The restaurant_count field represents the number of paginated result pages available for that city via get_restaurants_by_city.

Input

No input parameters required.

Response
{
  "type": "object",
  "fields": {
    "total": "integer, total number of cities",
    "cities": "array of city objects with city_name, city_slug, and restaurant_count"
  },
  "sample": {
    "data": {
      "total": 115,
      "cities": [
        {
          "city_name": "Riyadh",
          "city_slug": "riyadh",
          "restaurant_count": 171
        },
        {
          "city_name": "Jeddah",
          "city_slug": "jeddah",
          "restaurant_count": 112
        },
        {
          "city_name": "Dammam",
          "city_slug": "dammam",
          "restaurant_count": 80
        }
      ]
    },
    "status": "success"
  }
}

About the hungerstation.com API

The HungerStation API provides structured access to Saudi Arabia's food delivery platform across 2 endpoints. Use get_cities to retrieve every served city with its slug and district count, then call get_restaurants_by_city to pull up to 50 restaurants per district page — each record including name, cuisine type, rating, location, operational status, and complete menu items with prices and descriptions.

City Coverage

The get_cities endpoint requires no parameters and returns the full list of Saudi Arabian cities active on HungerStation. Each city object includes a city_name, a city_slug for use as an input to the restaurants endpoint, and a restaurant_count indicating how many district pages exist for that city. The top-level total field gives the count of covered cities.

Restaurant and Menu Data

The get_restaurants_by_city endpoint accepts a required city_slug (e.g. riyadh, jeddah, dammam) and an optional page integer. Pagination is district-based: each page maps to one district within the city and returns up to 50 restaurant objects. The response includes num_pages so you can iterate all districts, total_count for the current page, and the full restaurants array.

Each restaurant object carries name, logo URL, cuisine type, rating, geographic location, and operational status. Crucially, it also includes menu_items — an array of individual items with names, prices, and descriptions — making this endpoint useful for menu aggregation and price monitoring without any secondary calls.

Pagination and Scope

City slugs must come from get_cities; passing an arbitrary string will not resolve correctly. Page numbers are 1-indexed, and the num_pages field in the response tells you the upper bound per city. HungerStation operates exclusively in Saudi Arabia, so coverage is limited to that market.

Reliability & maintenanceVerified

The hungerstation.com API is a managed, monitored endpoint for hungerstation.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when hungerstation.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 hungerstation.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.

Last verified
4h ago
Latest check
2/2 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a cross-city menu comparison tool using cuisine type and menu_items price fields.
  • Monitor restaurant operational status changes across Riyadh or Jeddah districts over time.
  • Aggregate cuisine diversity statistics per city using the cuisine type field from get_restaurants_by_city.
  • Populate a food-discovery app with restaurant ratings and logos for Saudi Arabian cities.
  • Track menu item price changes for specific restaurants by diffing repeated API responses.
  • Generate a city-level restaurant density map using location data and num_pages per city.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 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.

Frequently asked questions
Does HungerStation have an official developer API?+
HungerStation does not publish a public developer API or documentation portal for third-party access to its restaurant and menu data.
What does the get_restaurants_by_city endpoint return beyond basic restaurant info?+
Each restaurant object includes the full menu: individual menu_items with item names, prices, and descriptions. It also returns cuisine type, rating, geographic location, operational status, and a logo URL — all in a single response per city/page combination.
How does pagination work, and how do I retrieve all restaurants in a city?+
Each page in get_restaurants_by_city corresponds to one geographic district within the city and returns up to 50 restaurants. The response includes a num_pages field indicating the total number of district pages. To retrieve all restaurants for a city, iterate from page 1 through num_pages using the same city_slug.
Does the API cover delivery time estimates or order placement?+
No. The API covers restaurant discovery and menu data: city listings, restaurant details (name, rating, location, status, cuisine type), and menu items with prices. Order placement, delivery time estimates, and real-time availability are not exposed. You can fork this API on Parse and revise it to add endpoints targeting those data points if they become accessible.
Is the API limited to Saudi Arabia, or does it include other countries HungerStation may serve?+
Coverage is Saudi Arabia only, reflecting HungerStation's primary operating market. Cities and restaurants outside Saudi Arabia are not returned by get_cities or get_restaurants_by_city. You can fork the API on Parse and revise it to extend coverage if HungerStation expands and those endpoints become reachable.
Page content last updated . Spec covers 2 endpoints from hungerstation.com.
Related APIs in Food DiningSee all →
resy.com API
Search for restaurants across cities and check real-time availability to find open reservation slots on Resy. Discover trending and top-rated venues with detailed information about dining options, menus, and available time slots across selected dates.
opentable.com API
Search for restaurants across the US with ratings, reviews, photos, and pricing information, plus get real-time availability and autocomplete suggestions as you type. Check reservation openings and explore detailed restaurant features to find and book your perfect dining experience.
fdc.nal.usda.gov API
Search across thousands of foods to get detailed nutritional information, serving sizes, and ingredient data from USDA's comprehensive food database. Find nutrition facts for branded products, legacy foods, and foundation foods all in one place.
guide.michelin.com API
Access data from guide.michelin.com.
publix.com API
Access Publix grocery store data including product search, pricing, promotions, weekly ad deals, store locations, and category browsing.
auchan.fr API
Search and compare Auchan grocery products with real-time prices and availability. Search by keyword, browse categories, retrieve detailed product information, find nearby stores, and get search suggestions.
opentable.ca API
Search and discover restaurants on OpenTable, view detailed information like menus and reviews, and check real-time dining availability across metro areas. Find top-rated restaurants in your location and instantly see which tables are open for your preferred date and time.
ocado.com API
Search and browse Ocado UK's grocery catalog, view detailed product information including nutritional data, and discover related items to add to your cart. Get instant search suggestions and manage your shopping cart contents all in one place.