{"id":"a3af0757-f2ec-41c9-be0f-6f636ac7de5c","type":"API","name":"API CROUStillant","slug":"api-croustillant","description":"### 📝 • Introduction CROUStillant est un projet open-source et gratuit qui a pour but de fournir des informations sur les menus des restaurants universitaires CROUS en France et en Outre-Mer. Cette API alimente aussi le site internet de CROUStillant qui est disponible ici : [croustillant.menu/fr…","free_access_class":"FREE_NO_AUTH","auth_type":"NONE","homepage_url":"https://www.data.gouv.fr/dataservices/api-croustillant","docs_url":"https://api.croustillant.menu/openapi.json","repo_url":null,"status":"ACTIVE","verification_state":"VERIFIED","tags":["education"],"logo_url":"https://www.data.gouv.fr/_og/d/c_ObjectPage.takumi,objectTitle_API+CROUStillant,ownerName_Paul+Bayfield,ownerAvatar_~aHR0cHM6Ly91ZGF0YS1hdmF0YXJzLnMzLnJieC5pby5jbG91ZC5vdmgubmV0L2JhLzViOWVhMzJmMmI0ZmQ5OTM4OTdjMDY2NTc1NmI0Mi01MDAucG5n,views_3061,reuses_0,followers_3,p_Ii9kYXRhc2VydmljZXMvYXBpLWNyb3VzdGlsbGFudCI.png","primary_source_url":"https://www.data.gouv.fr/dataservices/api-croustillant","extraction_confidence":"0.40","created_at":"2026-06-07T22:08:45.788Z","updated_at":"2026-07-02T06:08:23.885Z","last_verified_at":"2026-06-30T09:35:30.442Z","deprecated_at":null,"ranking_score":73,"last_ranked_at":"2026-07-02T03:42:01.603Z","last_seen_at":null,"last_validated_at":null,"last_uptime_at":"2026-07-02T06:08:23.885Z","search_vector":"'/fr':50B 'aliment':37B 'api':1A,36B 'aussi':38B 'cett':35B 'crous':27B 'croustil':2A,4B,43B 'croustillant.menu':49B 'croustillant.menu/fr':48B 'de':17B,42B 'des':19B,24B 'dispon':46B 'educ':51C 'en':28B,31B 'est':5B,45B 'et':11B,30B 'fournir':18B 'franc':29B 'gratuit':12B 'ici':47B 'inform':20B 'internet':41B 'introduct':3B 'le':39B 'les':22B 'menus':23B 'mer':34B 'open':9B 'open-sourc':8B 'outr':33B 'outre-m':32B 'pour':15B 'projet':7B 'qui':13B,44B 'restaur':25B 'site':40B 'sourc':10B 'sur':21B 'un':6B 'universitair':26B","popularity_score":"0.0000","maintenance_score":"0.7000","institution_id":null,"institution_type":null,"country_code":"FR","official_confidence":40,"proof_summary":"official domain (data.gouv.fr) (catalog: api_gouv_fr)","source_seed_url":null,"is_public_sector":false,"published_at":"2026-06-07T22:08:45.788Z","geographic_scope":"NATIONAL","api_details":{"id":"14b56e2c-71ee-45c0-b733-c55918c1d093","entry_id":"a3af0757-f2ec-41c9-be0f-6f636ac7de5c","base_url":"https://api.croustillant.menu","openapi_url":"https://api.croustillant.menu/openapi.json","graphql_url":null,"api_version":null,"spec_format":"openapi","endpoints_count":null,"endpoints":[],"rate_limit_info":null,"free_tier_limits":null,"ping_url":"https://api.croustillant.menu","created_at":"2026-06-07T22:08:45.809Z","updated_at":"2026-06-07T22:08:45.809Z"},"dataset_details":null,"latest_check":{"id":"34d8b6ae-89f2-45cf-8964-4ba27f7cb9f3","entry_id":"a3af0757-f2ec-41c9-be0f-6f636ac7de5c","status":"VERIFIED","last_checked_at":"2026-06-30T09:35:30.285Z","p50_latency_ms":945,"p95_latency_ms":null,"last_error":null,"consecutive_failures":0,"created_at":"2026-06-08T12:43:14.787Z","updated_at":"2026-06-30T09:35:30.285Z","consecutive_successes":14},"data_profile":{"id":"153e7865-2bad-440e-adfe-6e53274ebcdd","entry_id":"a3af0757-f2ec-41c9-be0f-6f636ac7de5c","profile_source":"openapi","profile_kind":"dataset","dataset_id":null,"fields":[{"name":"ouvert","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/v1/restaurants/status/minimal","filterable":true,"description":"Filtre les restaurants par statut d'ouverture"},{"name":"zone","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants","filterable":true,"description":"Filtre les restaurants par zone (insensible à la casse)"},{"name":"ispmr","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/v1/restaurants","filterable":true,"description":"Filtre les restaurants accessibles aux PMR"},{"name":"type","role":"parameter","type":"integer (int32)","label":null,"format":"int32","param_in":"query","container":"/v1/restaurants","filterable":true,"description":"Filtre les restaurants par code de type"},{"name":"region","role":"parameter","type":"integer (int32)","label":null,"format":"int32","param_in":"query","container":"/v1/restaurants","filterable":true,"description":"Filtre les restaurants par code de région"},{"name":"actif","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/v1/restaurants","filterable":true,"description":"Renvoie uniquement les restaurants actifs"},{"name":"offset","role":"parameter","type":"boolean","label":null,"param_in":"query","container":"/v1/taches","filterable":true,"description":"Décalage pour la pagination"},{"name":"code","role":"parameter","type":"integer (int32)","label":null,"format":"int32","param_in":"path","required":true,"container":"/v1/regions/{code}/restaurants","filterable":true,"description":"ID de la région"},{"name":"theme","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/iframe","filterable":true,"description":"Thème du widget (light, dark)"},{"name":"date","role":"parameter","type":"string","label":null,"param_in":"path","required":true,"container":"/v1/restaurants/{code}/menu/{date}","filterable":true,"description":"Date du menu (format: DD-MM-YYYY)"},{"name":"color_infos","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/{date}/image","filterable":true,"description":"Couleur personnalisée pour les informations (format: #RRGGBB ou #RGB)"},{"name":"color_title","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/{date}/image","filterable":true,"description":"Couleur personnalisée pour les titres (format: #RRGGBB ou #RGB)"},{"name":"color_content","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/{date}/image","filterable":true,"description":"Couleur personnalisée pour le contenu (format: #RRGGBB ou #RGB)"},{"name":"color_header","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/{date}/image","filterable":true,"description":"Couleur personnalisée pour l'en-tête (format: #RRGGBB ou #RGB)"},{"name":"repas","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/menu/{date}/image","filterable":true,"description":"Repas du menu"},{"name":"lang","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Langue (fr, en)"},{"name":"height","role":"parameter","type":"integer (int32)","label":null,"format":"int32","param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Hauteur fixe du widget en px (200-1200, défaut: 600)"},{"name":"font","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Police (Inter, Roboto, Outfit, Nunito, system)"},{"name":"color","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Couleur d'accent hexadécimale sans # (ex: ef4444)"},{"name":"meals","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Repas à afficher dans le bloc menu (matin,midi,soir)"},{"name":"blocks","role":"parameter","type":"string","label":null,"param_in":"query","container":"/v1/restaurants/{code}/iframe/custom","filterable":true,"description":"Blocs à afficher, dans l'ordre souhaité (header,header_text,region,status,address,menu,hours,contact,payment,access,link)"},{"name":"libelle","type":"string","label":"Region","description":"Libellé de la région"},{"name":"jour","type":"string","label":"Jours","description":"Jours de la semaine"},{"name":"ouverture","type":"object","label":"Jours","description":null},{"name":"acces","type":"string","label":"Restaurant","description":"Informations sur l'accès au restaurant"},{"name":"adresse","type":"string","label":"Restaurant","description":"Adresse du restaurant"},{"name":"email","type":"string","label":"Restaurant","description":"Adresse email du restaurant"},{"name":"horaires","type":"array<string>","label":"Restaurant","description":"Horaires d'ouverture du restaurant"},{"name":"image_url","type":"string","label":"Restaurant","description":"URL de l'image du restaurant"},{"name":"jours_ouvert","type":"array<object>","label":"Restaurant","description":"Jours d'ouverture du restaurant"},{"name":"latitude","type":"number (float)","label":"Restaurant","format":"float","description":"Latitude du restaurant"},{"name":"longitude","type":"number (float)","label":"Restaurant","format":"float","description":"Longitude du restaurant"},{"name":"nom","type":"string","label":"Restaurant","description":"Nom du restaurant"},{"name":"paiement","type":"array<string>","label":"Restaurant","description":"Moyens de paiement acceptés par le restaurant"},{"name":"telephone","type":"string","label":"Restaurant","description":"Numéro de téléphone du restaurant"},{"name":"type_restaurant","type":"object","label":"Restaurant","description":null},{"name":"ordre","type":"integer (int32)","label":"PlatTrie","format":"int32","description":"Ordre du plat dans le menu"},{"name":"plats","type":"array<object>","label":"Categorie","description":"Liste des plats de la catégorie"},{"name":"categories","type":"array<object>","label":"Repas","description":"Liste des catégories du repas"},{"name":"debut","type":"string","label":"Tache","description":"Date de début de la tâche"},{"name":"debut_categories","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de catégories récupérées au début de la tâche"},{"name":"debut_compositions","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de compositions récupérées au début de la tâche"},{"name":"debut_menus","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de menus récupérés au début de la tâche"},{"name":"debut_plats","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de plats récupérés au début de la tâche"},{"name":"debut_regions","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de régions récupérées au début de la tâche"},{"name":"debut_repas","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de repas récupérés au début de la tâche"},{"name":"debut_restaurants","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de restaurants récupérés au début de la tâche"},{"name":"debut_types_restaurants","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de types de restaurants récupérés au début de la tâche"},{"name":"fin","type":"string","label":"Tache","description":"Date de fin de la tâche"},{"name":"fin_categories","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de catégories récupérées à la fin de la tâche"},{"name":"fin_compositions","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de compositions récupérées à la fin de la tâche"},{"name":"fin_menus","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de menus récupérés à la fin de la tâche"},{"name":"fin_plats","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de plats récupérés à la fin de la tâche"},{"name":"fin_regions","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de régions récupérées à la fin de la tâche"},{"name":"fin_repas","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de repas récupérés à la fin de la tâche"},{"name":"fin_restaurants","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de restaurants récupérés à la fin de la tâche"},{"name":"fin_types_restaurants","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de types de restaurants récupérés à la fin de la tâche"},{"name":"id","type":"string","label":"Tache","description":"Identifiant de la tâche"},{"name":"requetes","type":"integer (int32)","label":"Tache","format":"int32","description":"Nombre de requêtes effectuées"},{"name":"CROUStillant","type":"array<object>","label":"ChangeLog","description":"Changelog des services de CROUStillant"}],"field_count":60,"sample_records":null,"record_count":null,"data_size_bytes":null,"dataset_count":null,"query_examples":null,"status":"partial","error_message":null,"profiled_at":"2026-06-30T23:35:10.668Z","run_id":null,"created_at":"2026-06-12T19:31:01.620Z","updated_at":"2026-06-30T23:35:10.668Z"},"limits":[]}