T-SOFT/Storefront API/Genel Bakış

Storefront API

Storefront API, mağazanızın web ve mobil arayüzlerine ürün, kategori, sipariş gibi verileri sağlayan bir HTTP API'sidir. İstekler ve yanıtlar JSON'dur. İki katmandan oluşur:

  • Public katalog (storefront:read) — ürün, kategori, marka, sayfa, şube gibi herkese açık verilere token'sız da erişilebilir. Önbelleklenebilir, düşük yetkili yüzey.
  • Hesap katmanı (storefront:account) — kimliği doğrulanmış müşterinin siparişleri, adresleri, favorileri, kuponları, destek talepleri. Müşteri token'ı gerektirir.

Ödeme, tümüyle web checkout'a devredilir: uygulama kendi ödeme ekranını çizmez, müşteriyi giriş yapmış hâlde web ödeme sayfasına taşır — bkz. Ödeme Devri. Yetki modeli için: Kimlik Doğrulama.

Doküman sürümü v1.9.0·API sürümü 2026-01·Son güncelleme: 18 Eylül 2026—değişiklikler için değişiklik günlüğü

Base URL

https://<domain>/api/v3/storefront/2026-01

Sürüm path içindedir (2026-01 gibi tarihli). Yeni bir sürüm çıktığında eski sürüm bir süre paralel yayınlanır; breaking değişiklikler Sürümler sayfasında duyurulur.

Zorunlu başlıklar

Accept: application/vnd.api+json
Authorization: Bearer <access_token>

Accept başlığı bu tam değeriyle gönderilmelidir; başka bir değer 406 ile reddedilir. Token alma akışı için: Kimlik Doğrulama.

Yanıt yapısı

Her yanıtın kökünde bir data alanı bulunur; tekil kaynak isteğinde obje, liste isteğinde dizi olarak döner. Kaynağın kendi alanları attributes altındadır. ?include= parametresiyle ilişkili kayıtlar istendiğinde ayrı bir included[] dizisi de yanıtla birlikte gelir:

{
  "data": [
    { "type": "products", "id": "42", "attributes": { "name": "..." } }
  ],
  "included": [
    { "type": "product-comments", "id": "7", "attributes": { "...": "..." } }
  ]
}
id alanı her zaman string olarak döner — sayısal görünse bile ("42"). İstemcide sayı olarak parse etme; string olarak taşı, karşılaştırırken yine string'e çevir.

Hata modeli

Hatalar errors[] dizisinde döner. En sık karşılaşılanlar:

DurumAnlamı
400Geçersiz filtre / sort parametresi
401Token eksik veya geçersiz
403Token geçerli ama istenen scope yok
404Kaynak yok veya gizli (görünürlük kapalı)
406Accept başlığı application/vnd.api+json değil
{
  "errors": [
    { "status": "404", "title": "Resource not found" }
  ]
}

Bölümler