Jesdi se connecte à toute plateforme qui prend des réservations.
Vous êtes une plateforme de réservation, un site de bons plans, un guide ou une appli ? Avec la Jesdi Partner API, vous voyez en temps réel les disponibilités de nos restaurants et ajoutez les réservations directement à leur agenda. Pas de double réservation, pas de ressaisie, pas de tracas pour le restaurant.
Gratuit pour les plateformes et les restaurants · Chaque connexion réalisée en un jour · Clé de test avec un restaurant de démonstration
Un seul agenda pour le restaurant, de vraies disponibilités pour vous.
Toujours les vraies disponibilités
Vous voyez exactement ce que le restaurant propose en ligne : horaires, capacité, tables libres, vacances et jours complets. Ce que vous vendez, le restaurant peut vraiment l'assurer.
Directement dans l'agenda
Votre réservation figure aussitôt dans l'agenda du restaurant, avec votre nom comme étiquette. Si le restaurant modifie ou annule quelque chose, vous le savez en moins d'une minute.
Gratuit et connecté en un jour
La connexion ne coûte rien, ni à vous ni au restaurant. Utilisez notre API, ou préférez-vous travailler avec votre propre API ? Nous réalisons alors la connexion avec votre système en un jour.
Connecté en quatre étapes.
Demander une clé
Envoyez-nous le nom de votre société et ce que vous voulez connecter. Vous recevrez une clé de test. Si vous avez votre propre API, nous réalisons la connexion en un jour.
Tester
Essayez disponibilités, réservation, modification et annulation avec notre restaurant de démonstration.
Le restaurant l'active
Le restaurant choisit votre plateforme dans son back-office Jesdi. Ce n'est qu'alors que vous voyez ses horaires.
En ligne
Les réservations via votre plateforme arrivent directement dans l'agenda. Et pour chaque restaurant suivant.
Jesdi Partner API v1
Tout ce qu'il faut pour vous connecter. Les exemples sont en anglais, comme l'API elle-même.
Bases
Tous les appels vont à cette adresse, avec votre clé dans l'en-tête. Les données sont en JSON (UTF-8). Les dates sont au format AAAA-MM-JJ et les heures HH:MM, à l'heure locale du restaurant (Europe/Amsterdam).
Base URL: https://jesdi.nl/partner/v1
Header: Authorization: Bearer <your api key>
Restaurants
Les restaurants qui ont activé la connexion avec votre plateforme. Utilisez le champ id dans tous les autres appels. Si bookable vaut false, le restaurant est en pause ou a fermé la réservation en ligne.
{ "restaurants": [ {
"id": "in-den-vlaemschen-pot", "name": "In den Vlaemschen Pot",
"address": "…", "phone": "…", "website": "…",
"bookable": true, "max_party": 8, "seating_choice": false,
"slot_minutes": 30, "duration_minutes": 120, "days_ahead": 120
} ] }
Disponibilités
Les mêmes règles que le widget du restaurant : horaires, capacité, arrivées par créneau, délai minimum, vacances, tables libres et taille maximale des groupes en ligne. Vous ne recevez que des horaires confirmés immédiatement.
{ "date": "2026-10-15", "party": 2, "times": ["17:30", "18:00", "20:30"] }
Ou par jour sur une période de 62 jours maximum, par exemple pour un calendrier :
{ "party": 2, "days": { "2026-10-15": "open", "2026-10-16": "full", "2026-10-17": "closed" } }
Si le restaurant propose un choix entre salle et terrasse (seating_choice), ajoutez &seating=terrace.
Créer une réservation
{ "external_id": "DS-1001", "date": "2026-10-15", "time": "19:00", "party": 2,
"name": "Jan de Vries", "email": "jan@example.com", "phone": "+31612345678",
"remarks": "Restaurant Week menu, 1x gluten free", "seating": "indoor", "lang": "nl" }
- external_id (obligatoire) est votre numéro de réservation. Si vous renvoyez le même external_id, vous récupérez la réservation existante. Réessayer après un délai dépassé est donc sans risque.
- email et phone sont facultatifs. Jesdi n'envoie pas sa propre confirmation aux clients des partenaires ; c'est à vous de le faire.
- Réponse : 201 avec la réservation, ou 409 slot_unavailable si l'horaire vient d'être complet.
{ "reservation": {
"id": 35, "external_id": "DS-1001", "restaurant": "in-den-vlaemschen-pot",
"date": "2026-10-15", "time": "19:00", "duration_minutes": 120, "party": 2,
"seating": null, "status": "confirmed", "name": "Jan de Vries",
"remarks": "…", "updated_at": "2026-10-07 16:10:00"
} }
Modifier et annuler
{ "date": "2026-10-16", "time": "20:00", "party": 4 } // déplacer
{ "status": "cancelled" } // annuler
Une réservation passée, ou dont les clients sont déjà arrivés, ne peut plus être modifiée (409).
Toutes les réservations de votre plateforme modifiées depuis ce moment. Pratique si vous préférez interroger plutôt que recevoir des webhooks.
Statut
| status | Signification |
|---|---|
confirmed | Confirmée |
pending | Le restaurant doit encore approuver |
seated | Les clients sont arrivés |
cancelled | Annulée |
declined | Refusée par le restaurant |
no_show | Non honorée |
Webhooks
Si le restaurant annule ou déplace une réservation, ou la marque comme arrivée ou non présentée, nous envoyons un POST à votre adresse webhook en moins d'une minute. En cas d'échec, nous réessayons chaque minute jusqu'à ce que vous répondiez avec un statut 2xx.
POST https://your-platform.example/jesdi-webhook
X-Jesdi-Signature: sha256=<hmac of the body with your webhook secret>
{ "event": "reservation.updated", "reservation": { … } }
Codes d'erreur
| HTTP | error | Signification |
|---|---|---|
| 400 | date_time_party_required, name_required, invalid_email | Un champ obligatoire manque ou est incorrect |
| 401 | unauthorized | Clé manquante ou non valide |
| 404 | restaurant_not_connected, not_found | Le restaurant n'a pas activé la connexion, ou la réservation n'existe pas |
| 409 | slot_unavailable, not_changeable | L'horaire est complet, ou la réservation ne peut plus être modifiée |
Prêt à vous connecter ?
La connexion est gratuite. Envoyez-nous le nom de votre société et ce que vous voulez connecter : vous recevez une clé de test et un restaurant de démonstration, ou nous réalisons la connexion avec votre propre API en un jour.
Demander une clé API