Ürünler
Hediye Marketi, kullanıcıların sadakat puanlarını fiziksel ürünler ve dijital ödüller için kullanmalarını sağlar. Bu bölüm, ürünleri ve kategorileri listeleme endpoint'lerini kapsar.
Ürünleri Listele
Opsiyonel filtreleme ve sıralama ile mevcut mağaza ürünlerinin sayfalanmış listesini alın.
GET
/v1/store/productsQuery Parametreleri
| Parametre | Tür | Açıklama |
|---|---|---|
page[number] | integer | Sayfa numarası (varsayılan: 1) |
page[size] | integer | Sayfa başına öğe (varsayılan: 15) |
filter[category] | string | Kategori ID'sine göre filtrele |
filter[title] | string | Başlığa göre ürün ara |
filter[minPrice] | integer | Minimum fiyat filtresi (puan cinsinden) |
filter[maxPrice] | integer | Maksimum fiyat filtresi (puan cinsinden) |
filter[newProducts] | boolean | Sadece yeni ürünleri göster |
filter[lowStock] | boolean | Sadece düşük stoklu ürünleri göster |
filter[onSale] | boolean | Sadece indirimdeki ürünleri göster |
filter[onlyPopular] | boolean | Sadece popüler ürünleri göster |
sort | string | Fiyata göre sırala: price (artan) veya -price (azalan) |
Örnek İstek
bash
curl -X GET "https://marka.prod.loyetta.com/api/v1/store/products?filter[category]=1&filter[onSale]=true&sort=-price&page[number]=1&page[size]=10" \
-H "Authorization: Bearer {musteri-tokeni}" \
-H "Accept: application/json"Yanıt
json
{
"data": [
{
"id": "1a5c77ff",
"title": "Kablosuz Kulaklık",
"sku": "WH-001",
"description": "<p>Gürültü engelleme özellikli premium kablosuz kulaklık.</p>",
"regular_price": 5000,
"sale_price": 4000,
"thumbnail": "https://example.com/kulaklik.jpg",
"gallery": [
"https://example.com/kulaklik-1.jpg",
"https://example.com/kulaklik-2.jpg"
]
}
],
"links": {
"first": "https://marka.prod.loyetta.com/api/v1/store/products?page[number]=1",
"last": "https://marka.prod.loyetta.com/api/v1/store/products?page[number]=5",
"prev": null,
"next": "https://marka.prod.loyetta.com/api/v1/store/products?page[number]=2"
},
"meta": {
"current_page": 1,
"from": 1,
"last_page": 5,
"path": "https://marka.prod.loyetta.com/api/v1/store/products",
"per_page": 10,
"to": 10,
"total": 50
}
}Ürün Nesnesi
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Benzersiz ürün tanımlayıcısı |
title | string | Ürün adı |
sku | string | Stok takip kodu |
description | string | HTML formatında ürün açıklaması |
regular_price | integer | Normal fiyat (puan cinsinden) |
sale_price | integer | null | İndirimli fiyat (indirim yoksa null) |
thumbnail | string | Ürün küçük resmi URL'i |
gallery | array | Ek resim URL'leri dizisi |
Ürün Detayı Getir
Belirli bir ürün hakkında detaylı bilgi alın.
GET
/v1/store/products/{productId}Path Parametreleri
| Parametre | Tür | Zorunlu | Açıklama |
|---|---|---|---|
productId | string | Evet | Getirilecek ürünün ID'si |
Örnek İstek
bash
curl -X GET "https://marka.prod.loyetta.com/api/v1/store/products/1a5c77ff" \
-H "Authorization: Bearer {musteri-tokeni}" \
-H "Accept: application/json"Yanıt
json
{
"success": true,
"data": {
"id": "1a5c77ff",
"title": "Kablosuz Kulaklık",
"sku": "WH-001",
"description": "<p>Gürültü engelleme özellikli premium kablosuz kulaklık.</p>",
"regular_price": 5000,
"sale_price": 4000,
"thumbnail": "https://example.com/kulaklik.jpg",
"gallery": [
"https://example.com/kulaklik-1.jpg",
"https://example.com/kulaklik-2.jpg"
]
}
}Hata Yanıtı (404)
json
{
"success": false,
"message": "Product not found"
}Kategorileri Listele
Tüm mağaza kategorilerini alın. Kategoriler alt kategorilerle iç içe olabilir.
GET
/v1/store/categoriesQuery Parametreleri
| Parametre | Tür | Açıklama |
|---|---|---|
filter[category] | string | Belirli bir kategori ID'sinin alt kategorilerini getir |
Örnek İstek
bash
curl -X GET "https://marka.prod.loyetta.com/api/v1/store/categories" \
-H "Authorization: Bearer {musteri-tokeni}" \
-H "Accept: application/json"Yanıt
json
{
"data": [
{
"id": "1",
"label": "Elektronik",
"children": [
{
"id": "2",
"label": "Ses Sistemleri",
"children": []
},
{
"id": "3",
"label": "Aksesuarlar",
"children": []
}
]
},
{
"id": "4",
"label": "Hediye Kartları",
"children": []
}
]
}Kategori Nesnesi
| Alan | Tür | Açıklama |
|---|---|---|
id | string | Benzersiz kategori tanımlayıcısı |
label | string | Kategori görünen adı |
children | array | İç içe alt kategoriler dizisi |