Rezervasyonlar
Rezervasyonu iptal et
Sitenizde fikrini değiştiren misafirin rezervasyonunu iptal edin. Misafirin iptalidir; mekana bildirilir.
/public/v1/reservations/{reservationId}/cancelSitenizde fikrini değiştiren misafir içindir. Misafirin kendi iptalidir, rezervasyonun cibusy.com'daki sayfasından yapılan iptalle aynıdır: cancelledBy değeri Customer okunur ve mekana, verildiyse nedeniyle birlikte bildirilir. Gövde isteğe bağlıdır; reason mekanın okuması içindir.
Bir rezervasyon, geçerliyken (Pending ya da Confirmed), misafir kapıda karşılanmamışken ve saati gelmemişken iptal edilebilir; rezervasyondaki canCancel bunu önceden söyler. Aksi halde yanıt RESERVATION_NOT_CANCELLABLE olur. Kim iptal etmiş olursa olsun, zaten iptal edilmiş bir rezervasyonu iptal etmek onu olduğu haliyle 200 ile döndürür; yarıda kesilen bir istek bu yüzden yeniden gönderilebilir.
API bir rezervasyonun saatini ya da kişi sayısını değiştirmez: iptal edip yenisini alın.
Parametreler
reservationIdstring · uuidYol parametresizorunluRezervasyonun kimliği, rezervasyon alma yanıtından.
Accept-LanguagestringBaşlıkHata yanıtlarındaki userMessage metninin dili: tr (varsayılan), en, de, fr, it, es, ar ya da ru. Başlıktaki ilk dil belirler, bölgesi olmadan (en-US, en okunur) ve q ağırlıklarına bakılmadan; Cibusy'nin sunmadığı bir dil Türkçe yanıtlanır. Menünün dilini seçmez; o, menü çağrısındaki lang parametresidir.
İstek gövdesi
Bir rezervasyonun neden iptal edildiği. Gövde isteğe bağlıdır.
reasonstringnull olabilirMisafirin söylediği neden, mekanın okuması için; en fazla 250 karakter.
Yanıtlar
Rezervasyon, iptal edilmiş haliyle.
PUBLIC_API_RESERVATION_INVALID: neden 250 karakterden uzun.
X-Api-Key başlığı yok (PUBLIC_API_KEY_MISSING) ya da anahtar geçersiz veya iptal edilmiş (PUBLIC_API_KEY_INVALID).
PUBLIC_API_SCOPE_MISSING: anahtar "Rezervasyon alabilir" izniyle oluşturulmamış.
PUBLIC_API_RESERVATION_NOT_FOUND.
RESERVATION_NOT_CANCELLABLE: rezervasyon artık iptal edilemez.
Anahtarın siparişler, rezervasyonlar ve testler için dakikada yaklaşık 30 isteklik bütçesi doldu; Retry-After kadar saniye bekleyin.
Retry-AfterBeklenecek saniye. Bir sonraki dakikalık pencere bu süre içinde açılır.
Başarılı yanıtın data alanı
API üzerinden alınmış bir rezervasyon, mekanda şu an olduğu haliyle. GET /reservations/{reservationId} yanıtının ve webhook'un reservation.updated olayının taşıdığı gövdenin aynısı.
idstring · uuidRezervasyonun kimliği. GET /reservations/{reservationId} ile kullanın.
venueIdstring · uuidMasanın ayırtıldığı mekan.
statusstringRezervasyonun geldiği aşama; her okumada yeniden hesaplanır, bu yüzden liste, tek rezervasyon ve webhook olayı aynı rezervasyon için farklı şeyler söyleyemez.
Pending- Mekan henüz yanıtlamadı. Rezervasyonları alındığı anda onaylayan bir mekanda görülmez.
Confirmed- Mekan kabul etti ya da rezervasyonları alındığı anda onaylıyor. Masa bekleniyor.
Declined- Mekan isteği reddetti.
Cancelled- İptal edildi. Kimin iptal ettiğini `cancelledBy` söyler.
Seated- Misafir geldi ve kapıda karşılandı.
Completed- Ziyaret bitti.
NoShow- Mekan kabul etti ama kimse gelmedi.
startsAtstring · date-timeMasanın ne zaman için olduğu, UTC bir an olarak.
guestsintegerKaç kişi geleceği.
customerobjectMasanın kimin için olduğu, mekanda kayıtlı haliyle.
Rezervasyon sahibi alanları
namestringnull olabilirMisafirin adı.
phonestringnull olabilirMisafirin telefon numarası, uluslararası biçimde.
notestringnull olabilirRezervasyonun yapıldığı not. Not yoksa null.
codestringnull olabilirMekanın misafiri kapıda karşılarken kullandığı kod: misafirin söyleyebileceği ya da pageUrl sayfasındaki QR olarak gösterebileceği sekiz karakter. Kodu elinde tutan rezervasyonu görebilir ve iptal edebilir; yalnız misafire verin.
pageUrlstringnull olabilirRezervasyonun cibusy.com'daki kendi sayfası: rezervasyonu ve onaylandıktan sonra mekanın kapıda okuttuğu QR'ı gösterir. Bağlantısını verin ya da misafire gönderin. Herkese açık adresi olmayan mekanda null.
canCancelbooleanRezervasyonun API üzerinden hala iptal edilip edilemeyeceği: geçerli, misafir kapıda karşılanmamış ve saati gelmemiş.
checkedInAtstring · date-timenull olabilirMisafirin kapıda karşılandığı an (UTC). O zamana kadar null.
cancelledAtstring · date-timenull olabilirRezervasyonun iptal edildiği an (UTC). status değeri Cancelled değilse null.
cancelledBystringnull olabilirKimin iptal ettiği. status değeri Cancelled değilse null.
Customer- Misafir: bu API üzerinden, rezervasyonun kendi sayfasından ya da Cibusy uygulamasından.
Venue- Mekan.
System- Cibusy: mekan isteği, rezervasyonun saatine kadar yanıtlamadı.
cancellationReasonstringnull olabilirİptal nedeni olarak söylenen, söyleyenin kendi sözleriyle. status değeri Cancelled değilse null.
createdAtstring · date-timeRezervasyonun yapıldığı an (UTC).