Kategori Listesi — GET /plugin-api/categories/list ✓ Canlı

Mağazanın tüm ürün kategorilerini döndürür (menü ağacı / gruplama için). Aktif + pasif hepsi gelir. Kategori id'si ürünün category alanıyla eşleşir → ürünleri kategorilere bağlarsın.

← API Uçları · ortak kurallar (base, auth, hata zarfı) orada.

İstek

GET {RESTOMENUM_BASE}/plugin-api/categories/list
Authorization: Bearer {serverId}.{pluginId}.{secret}     // install API key (token exchange)
  • Base: Sandbox https://sandbox.plugins.restomenum.app, Production https://plugins.restomenum.app (API Uçları).
  • Parametre yok — aktif + pasif tüm kategoriler döner.
  • Auth: Authorization: Bearer <apiKey>token exchange'teki install API key (serverId.pluginId.secret).
  • Scope: products:read (ürünlerle aynı; kategori menü domain'inin parçası, PII yok).

Yanıt

Gerçek 200 örneği
{
  "success": true,
  "data": [
    {
      "id": "a0-62",
      "title": "KAHVALTI",
      "image": "https://d37x2wx7jj7xm7.cloudfront.net/server/SM9M.../category/.../original.jpeg",
      "color": "#ffeb3b",
      "rank": 11,
      "active": true
    },
    {
      "id": "fa-34",
      "title": "SICAK KAHVELER",
      "image": "https://d37x2wx7jj7xm7.cloudfront.net/server/SM9M.../category/.../original.jpeg",
      "color": "#607D8B",
      "rank": 1,
      "active": true
    }
  ]
}

Alanlar

AlanTipAçıklama
idstringKategori id'si — ürünün category alanıyla eşleşir
titlestringKategori adı
imagestring | nullKategori görseli (CDN URL'i; yoksa null)
colorstringRenk kodu (hex)
ranknumberSıralama (menüde gösterim sırası)
activebooleanAktif mi

Hatalar

messageAnlam
plugin.scope.deniedproducts:read onaylı değil
unauthorized (HTTP 401)Geçersiz/eksik install key

Notlar

  • Sızıntı önlemi: qrHide, webstoreHide gibi iç alanlar dönmez.
  • En fazla 500 kategori (restoran ölçeğinde sınıra ulaşılmaz).
  • products/list ile birlikte kullanılır: önce kategoriler, sonra ürünler → menü ağacı kurulur (ürün category = kategori id).