Ghent University Menu API

The Menu API from Ghent University — 2 operation(s) for menu.

Operations 2

GET /menu/{endpoint}/overview.json Menu for every available future day, including today #
GET /menu/{endpoint}/{year}/{month}/{day}.json Menu for one day at one restaurant #

Documentation

Specifications

Schemas & Data

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ghent-menu-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ghent-menu-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Hydra Resto Menu API
  version: '2.5'
  summary: Student-restaurant locations, daily menus, sandwiches, salads and allergens at Ghent University.
  description: The Resto API powers Hydra, the Ghent University student app.
  contact:
    name: Zeus WPI
    url: https://zeus.gent/
  license:
    name: See the Hydra repository
    url: https://github.com/ZeusWPI/hydra
servers:
- url: https://hydra.ugent.be/api/2.0/resto
  description: Production
tags:
- name: Menu
paths:
  /menu/{endpoint}/overview.json:
    get:
      tags:
      - Menu
      operationId: getMenuOverview
      summary: Menu for every available future day, including today
      parameters:
      - $ref: '#/components/parameters/Endpoint'
      responses:
        '200':
          description: Array of day menus
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DayMenu'
  /menu/{endpoint}/{year}/{month}/{day}.json:
    get:
      tags:
      - Menu
      operationId: getDayMenu
      summary: Menu for one day at one restaurant
      description: Dates are ISO 8601 without leading zeroes. 2026-09-01 is /2026/9/1.json; the zero-padded /2026/09/01.json returns 404. Earliest available year is 2016. Days on which the restaurant does not serve (weekends, closures) may be absent entirely rather than returned with open=false.
      parameters:
      - $ref: '#/components/parameters/Endpoint'
      - name: year
        in: path
        required: true
        schema:
          type: integer
          minimum: 2016
        example: 2026
      - name: month
        in: path
        required: true
        description: 1-12
        no leading zero: null
        schema:
          type: integer
          minimum: 1
          maximum: 12
        example: 9
      - name: day
        in: path
        required: true
        description: 1-31
        no leading zero: null
        schema:
          type: integer
          minimum: 1
          maximum: 31
        example: 1
      responses:
        '200':
          description: One day menu
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DayMenu'
        '404':
          description: No menu published for that date at that location
components:
  schemas:
    DayMenu:
      type: object
      properties:
        date:
          type: string
          format: date
        open:
          type: boolean
          description: Not a guarantee - some closed days are absent from the output entirely.
        meals:
          type: array
          items:
            $ref: '#/components/schemas/Meal'
        vegetables:
          type: array
          items:
            type: string
        vegetables2:
          type: array
          items:
            $ref: '#/components/schemas/Vegetable'
        message:
          type: string
          description: Optional note about an exceptional closure or menu change.
    Meal:
      type: object
      properties:
        kind:
          type: string
          description: Currently meat, fish, soup, vegetarian or vegan. Clients must tolerate new values.
        name:
          type: string
        price:
          type: string
          description: Textual price.
        type:
          type: string
          description: Currently main or side. Clients must tolerate new values.
        allergens:
          type: array
          items:
            type: string
    Vegetable:
      type: object
      properties:
        kind:
          type: string
          description: Currently meat, vegetarian or vegan. Clients must tolerate new values.
        name:
          type: string
        allergens:
          type: array
          items:
            type: string
  parameters:
    Endpoint:
      name: endpoint
      in: path
      required: true
      description: Location slug from /meta.json, for example en, nl-sterre or nl-debrug.
      schema:
        type: string
      example: nl-sterre