Aller au contenu principal

Partenaires

Partage & API - Documentation

Intégrer les menus MARIAM dans d'autres services via l'API publique.

MARIAM expose une API REST publique pour permettre à des services tiers (affichage campus, applications étudiantes, écrans connectés, etc.) de consommer les données des menus.

API développeur (v1)

La documentation interactive Swagger UI est disponible sur chaque instance MARIAM.

RouteDescription
GET /v1/menus/todayMenu du jour
GET /v1/menus/tomorrowMenu de demain
GET /v1/menus/weekMenus de la semaine
GET /v1/restaurantInformations du restaurant (horaires, paiements, accessibilité)
GET /v1/eventsÉvénements publiés
GET /v1/taxonomyTags alimentaires et certifications

Les instances multi-restaurants acceptent le paramètre ?restaurant_id= sur les routes publiques.

Structure des données

Chaque menu référence les plats du catalogue : un plat expose son nom, sa catégorie, sa photo, ses tags alimentaires, ses certifications et son état de stock (avec plat de substitution le cas échéant).

{
  "success": true,
  "data": {
    "date": "2026-07-01",
    "status": "published",
    "chef_note": "Poisson de la criée ce midi !",
    "items": [
      {
        "category": "Plat principal",
        "dish": {
          "name": "Filet de lieu, sauce vierge",
          "tags": ["msc", "de-saison"],
          "certifications": ["msc"],
          "is_out_of_stock": false
        }
      }
    ]
  }
}

Rate limiting

L’API est protégée par un rate limiter (Redis). Les limites sont appliquées par route pour éviter les abus.

En savoir plus

Le code source et la documentation technique complète sont disponibles sur GitHub : github.com/Tezay/mariam.