Jesdi koppelt met elk platform dat reserveringen doet.
Ben je een reserveringsplatform, dealsite, restaurantgids of app? Met de Jesdi Partner API zie je in realtime de vrije tijden van onze restaurants en zet je reserveringen direct in hun agenda. Geen dubbele boekingen, geen overtypen en geen gedoe voor het restaurant.
Gratis, voor platforms en restaurants · Elke koppeling binnen een dag gebouwd · Testsleutel met een demorestaurant
Eén agenda voor het restaurant, echte beschikbaarheid voor jou.
Altijd de echte vrije tijden
Je ziet precies wat het restaurant online aanbiedt: openingstijden, capaciteit, vrije tafels, vakanties en volle dagen. Wat jij verkoopt, kan het restaurant ook echt waarmaken.
Direct in de agenda
Je reservering staat meteen in de agenda van het restaurant, met jouw naam als label. Wijzigt of annuleert het restaurant iets, dan hoor je het binnen een minuut.
Gratis en binnen een dag gekoppeld
Koppelen kost niets, niet voor jou en niet voor het restaurant. Gebruik onze API, of werk je liever met je eigen API? Dan bouwen wij de koppeling met jouw systeem binnen een dag.
In vier stappen gekoppeld.
Sleutel aanvragen
Mail ons met je bedrijfsnaam en wat je wilt koppelen. Je krijgt een testsleutel. Heb je een eigen API, dan bouwen wij de koppeling binnen een dag.
Testen
Probeer vrije tijden, reserveren, wijzigen en annuleren uit met ons demorestaurant.
Restaurant zet het aan
Het restaurant kiest in zijn Jesdi-backoffice jouw platform. Pas dan zie je zijn tijden.
Live
Reserveringen via jouw platform staan direct in de agenda. Ook voor elk volgend restaurant.
Jesdi Partner API v1
Alles wat je nodig hebt om te koppelen. De voorbeelden zijn in het Engels, zoals de API zelf.
Basis
Alle aanroepen gaan naar dit adres, met je sleutel in de header. Gegevens zijn JSON in UTF-8. Datums zijn JJJJ-MM-DD en tijden UU:MM, in de lokale tijd van het restaurant (Europe/Amsterdam).
Base URL: https://jesdi.nl/partner/v1
Header: Authorization: Bearer <your api key>
Restaurants
De restaurants die de koppeling met jouw platform hebben aangezet. Het veld id gebruik je in alle andere aanroepen. Staat bookable op false, dan is het restaurant gepauzeerd of heeft het online reserveren gesloten.
{ "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
} ] }
Vrije tijden
Dezelfde regels als de eigen widget van het restaurant: openingstijden, capaciteit, aankomsten per tijdslot, minimale aanlooptijd, vakanties, vrije tafels en de grootste groep die online mag reserveren. Je krijgt alleen tijden die direct bevestigd worden.
{ "date": "2026-10-15", "party": 2, "times": ["17:30", "18:00", "20:30"] }
Of per dag over een periode van maximaal 62 dagen, bijvoorbeeld voor een kalender:
{ "party": 2, "days": { "2026-10-15": "open", "2026-10-16": "full", "2026-10-17": "closed" } }
Biedt het restaurant een keuze tussen binnen en terras (seating_choice), voeg dan &seating=terrace toe.
Reservering maken
{ "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 (verplicht) is jouw reserveringsnummer. Stuur je hetzelfde external_id nog een keer, dan krijg je de bestaande reservering terug. Opnieuw proberen na een time-out is dus veilig.
- email en phone zijn optioneel. Jesdi stuurt gasten van partners geen eigen bevestiging; dat doe jij.
- Antwoord: 201 met de reservering, of 409 slot_unavailable als de tijd net vol is.
{ "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"
} }
Wijzigen en annuleren
{ "date": "2026-10-16", "time": "20:00", "party": 4 } // verzetten
{ "status": "cancelled" } // annuleren
Een reservering in het verleden, of waarvan de gasten al binnen zijn, kan niet meer veranderen (409).
Alle reserveringen van jouw platform die sinds dat moment zijn veranderd. Handig als je liever ophaalt dan webhooks ontvangt.
Status
| status | Betekenis |
|---|---|
confirmed | Bevestigd |
pending | Het restaurant moet nog goedkeuren |
seated | De gasten zijn binnen |
cancelled | Geannuleerd |
declined | Afgewezen door het restaurant |
no_show | Niet verschenen |
Webhooks
Annuleert of verzet het restaurant een reservering, of zet het hem op binnen of niet verschenen, dan sturen we binnen een minuut een POST naar jouw webhook-adres. Lukt dat niet, dan proberen we het elke minuut opnieuw tot je met een 2xx-status antwoordt.
POST https://your-platform.example/jesdi-webhook
X-Jesdi-Signature: sha256=<hmac of the body with your webhook secret>
{ "event": "reservation.updated", "reservation": { … } }
Foutcodes
| HTTP | error | Betekenis |
|---|---|---|
| 400 | date_time_party_required, name_required, invalid_email | Een verplicht veld ontbreekt of klopt niet |
| 401 | unauthorized | Sleutel ontbreekt of is niet geldig |
| 404 | restaurant_not_connected, not_found | Het restaurant heeft de koppeling niet aangezet, of de reservering bestaat niet |
| 409 | slot_unavailable, not_changeable | De tijd is vol, of de reservering kan niet meer veranderen |
Klaar om te koppelen?
Koppelen is gratis. Mail ons je bedrijfsnaam en wat je wilt koppelen: je krijgt een testsleutel en een demorestaurant, of wij bouwen de koppeling met jouw eigen API binnen een dag.
API-sleutel aanvragen