M masamenu.tr
🧩 Siteniz için widget'lar

🧑‍💻 Kendi kodunuzla vitrin

Veri manifestosu, herkese açık JSON, misafir API'si ve kendi frontend'iniz için webhook'lar

Dokümantasyon

Kendi kodunuzla vitrin (headless)

Standart yol — bizim vitrinimiz veya sitenizdeki widget'lar. Ama siteyi kendi geliştiriciniz veya ajansınız yazıyorsa ve tasarım tamamen kendinize özel olmalıysa, üçüncü bir seçenek çalışır: bizden verileri ve sipariş kabulünü alırsınız, tüm ön yüzü ise istediğiniz teknolojiyle kendiniz yaparsınız.

Verileri okumak anahtar ve yetkilendirme gerektirmez: vitrinde herkese açık olan her şey JSON'da da herkese açıktır.

Nerede etkinleştirilir ve yapılandırılır: Pazarlama → "Sitem" → "Kendi kodunuzla vitrin" kartı. Aynı yerde — konumunuzun manifesto adresi ve teknik dokümantasyon.


storefront.json manifestosu

Geliştiricinin bilmesi gereken tek adres:

https://cdn.masamenu.tr/{ДОМЕН}/storefront.json

Manifestoda geri kalan her şey var:

Blok İçinde ne var
location Kimlik, slug, dikey (restoran, mağaza, otel, salon)
languages Varsayılan dil ve etkinleştirilmiş diller listesi
currency Para birimi kodu ve sembolü
cdnBase + data Menü, profil, sayfalar, koleksiyonlar, yorumlara giden yollar
catalog Katalog modu: her şey dosyalarda ya da dosya bazlı kartlar ve katalog API'si
images Görsel tabanı, yol şablonu ve mevcut boyutlar
api Misafir API adresleri, OpenAPI spesifikasyonları ve MCP uç noktası
publishId, publishedAt Yayın kimliği: veriler her yeniden oluşturulduğunda değişir
digests Dosya özetleri (digest) — önbelleği noktasal olarak geçersiz kılmak için kullanılır

Sözleşme sürümlenir (contractVersion), yanında ise veriyi doğrulamak ve tip üretmek için kullanışlı JSON şemaları bulunur. Bilinmeyen alanlar yok sayılmalıdır: sözleşme, uyumluluğu bozmadan genişletilir.


Veriler ve görseller

Vitrinin gösterdiği her şey dosyalar halinde erişilebilir: dile göre menü ve katalog, konum profili (ad, adres, çalışma saatleri, iletişim bilgileri, ayarlar), sayfalar ve makaleler, koleksiyonlar, yorumlar.

Büyük kataloglar için manifest api moduna geçer: menü dosyasında hafifletilmiş bir seçki bulunur, tam kartlar dosya bazında ya da filtreli ve alt kategorili katalog API'si üzerinden alınır.

Görseller — bizim CDN'imizden, manifestteki şablona göre birkaç boyutta; fotoğraf güncellendiğinde yol sürümlendirilir, bu nedenle önbellek «sonsuza kadar» tutulabilir.


Siparişler ve misafir API'si

Sipariş kabulü, sipariş durumu, arama ve rezervasyonlar — misafir API'si üzerinden: yetkilendirme olmadan, adres manifestodan alınır, spesifikasyon — OpenAPI 3.1. Ayrıca ticari bir katman vardır: kuponlar, teslimat hesaplaması, formlar, abonelikler. Ayrıntılar — Yapay zekâ ajanları için Guest API, aynı arayüz.

Sizin siteniz tarafından oluşturulan sipariş, genel "Siparişler" bölümüne düşer ve normal kurallara göre yaşar: durumlar, mutfak, kuryeler, fişler, bildirimler.


Değişiklik webhook'ları

CDN'i sürekli sorgulamamak için olaylara abone olun:

  • menu.updated — menü veya katalog yeniden oluşturuldu;
  • profile.updated — lokasyon profili değişti.

Olayın gövdesinde publishId gelir — statik sayfaları yeniden oluşturmak veya ISR önbelleğini sıfırlamak için kullanışlıdır. Her istek, kendi gizli anahtarınızla HMAC-SHA256 ile imzalanır: bir şeyi yeniden oluşturmadan önce imzayı doğrulayın. Lokasyon başına beşe kadar adres, hata durumunda yeniden deneme.

Webhook'lar «Kendi Kodunuzla Vitrin» kartında yapılandırılır ve ücretli planlarda kullanılabilir; veri okuma her zaman kullanılabilir.


Nereden başlamalı

  1. Pazarlama → «Sitem» → «Kendi kodunuzla vitrin»'i açın ve manifesto adresini kopyalayın.
  2. Manifestoyu ve ondan menü ile profil verilerini yükleyin. Bu adımda hiçbir anahtara gerek yoktur.
  3. Sayfaları kendi framework'ünüzle oluşturun; siparişler için misafir API'sini kullanın.
  4. Değişikliklere göre siteyi yeniden oluşturmak için bir webhook ekleyin.

Tam teknik açıklama — aynı kartta "Dokümantasyon" bağlantısından; orada ayrıca hazır bir vitrin örneği ve geliştirici yapay zekâ asistanları için llms.txt bulunur.


İlgili bölümler


Sık sorulan sorular

Veri okumak için ödeme yapmam gerekiyor mu? Hayır. Herkese açık JSON'lar her pakette kullanılabilir — bunlar bizim vitrinimizin de kullandığı aynı dosyalardır. Ücretli olan webhook'lardır.

SEO durumu ne olacak? Tamamen sizin tarafınızda: sayfaları kendiniz oluşturur ve işaretlemeyi kendiniz yönetirsiniz. Sözleşmede mikro işaretleme (JSON-LD) için veriler mevcuttur.

Kendi vitrinimle birlikte kullanabilir miyim? Evet. Bizim vitrinimiz, widget'lar ve kendi siteniz aynı verilerle ve aynı sipariş sepetiyle çalışır.