Mağazanın ürünlerini sayfa sayfa listeler. Tek bir ürünü stok kodu ya da barkodla bulmak için de bu uç kullanılır.
GET https://api.hizlisanalmarket.com/api/v1/products · İzin: products:read
| Parametre | Tür | Açıklama |
|---|---|---|
page |
Sayı | Sayfa numarası, 1'den başlar. Varsayılan 1. |
pageSize |
Sayı | Sayfadaki ürün sayısı, en fazla 100. Varsayılan 20. |
sku |
Metin | Stok kodu tam eşleşme. |
barcode |
Metin | Barkod tam eşleşme. |
search |
Metin | Ürün adında ya da stok kodunda geçen metin. Büyük/küçük harfe duyarlıdır. |
categorySlug |
Metin | Yalnız bu kategorideki ürünler. Değer kategorinin slug alanıdır. Bulunamayan kategori boş liste döndürür. |
brandSlug |
Metin | Yalnız bu markanın ürünleri. Değer markanın slug alanıdır. Bulunamayan marka boş liste döndürür. |
updatedSince |
Tarih | Yalnız bu andan sonra açılan ya da değişen ürünler. Artımlı senkron için kullanılır. Örnek: 2026-10-20T00:00:00Z |
Ürünler en yeni açılandan eskiye doğru sıralanır. Taslak ve arşivlenmiş ürünler de listelenir. Gerekirse status alanına göre ayırın.
Tarihleri UTC ve ISO 8601 biçiminde gönderin (2026-10-20T00:00:00Z). Türkiye saatiyle göndermek için ofset ekleyin: 2026-10-20T00:00:00%2B03:00 (+ işareti adreste %2B yazılır). Saat dilimi yazılmayan tarih UTC kabul edilir.
curl "https://api.hizlisanalmarket.com/api/v1/products?sku=KUPA-350" \
-H "Authorization: Bearer hm_sk_..."
{
"products": [
{
"id": "8f1c2a4e-3b5d-4c6e-9f70-1a2b3c4d5e6f",
"name": "Seramik Kupa 350 ml",
"slug": "seramik-kupa-350-ml",
"sku": "KUPA-350",
"price": 249.90,
"compareAtPrice": 299.90,
"stockQuantity": 120,
"isInStock": true,
"status": "Active",
"categoryName": "Kupalar",
"brandName": "Demo Seramik",
"images": [
"https://api.hizlisanalmarket.com/uploads/.../kupa-350-1.webp",
"https://api.hizlisanalmarket.com/uploads/.../kupa-350-2.webp"
],
"createdAt": "2026-09-14T08:21:05.112Z",
"updatedAt": "2026-10-20T12:03:44.508Z",
"unit": "adet",
"allowFractionalQuantity": false,
"barcode": "8690000000017",
"categoryId": "3c9d2e71-6a40-4f5b-8e12-7b0a9c4d1e22",
"brandId": "b4e8a1c3-2d7f-4a96-b051-6e3c8f0d2a19",
"taxRate": 20,
"description": "<p>Bulaşık makinesinde yıkanabilir.</p>"
}
],
"totalCount": 1,
"page": 1,
"pageSize": 20,
"totalPages": 1
}
| Alan | Açıklama |
|---|---|
id |
Ürün kimliği (GUID). |
name, slug |
Ürün adı ve vitrin adresindeki kısa adı. |
sku, barcode |
Stok kodu ve barkod. |
price |
KDV dahil satış fiyatı. |
compareAtPrice |
Üstü çizili fiyat (yoksa null). |
taxRate |
KDV oranı (yüzde). |
stockQuantity |
Ürünün stok miktarı. |
isInStock |
Ürün şu an satılabilir mi. Vitrindeki kuralla hesaplanır: varyantlı üründe varyant stoklarına bakılır; stok takibi kapalı ya da ön siparişe açık ürün her zaman satılabilir sayılır. |
status |
Active, Draft, Archived ya da OutOfStock. |
categoryId, categoryName |
Ürünün kategorisi. |
brandId, brandName |
Ürünün markası. |
images |
Görsel adresleri. İlki ana görseldir. |
unit, allowFractionalQuantity |
Satış birimi ve kesirli miktarla satılıp satılmadığı. |
description |
Ürün açıklaması (HTML). |
createdAt, updatedAt |
Açılma ve son değişiklik zamanı (UTC). Hiç değişmemiş üründe updatedAt null olur. |
Sayfalama alanları: totalCount (filtreye uyan toplam ürün), page, pageSize, totalPages.
page=1 ile başlayıp page değeri totalPages değerini geçene kadar artırın. Sonraki senkronlarda yalnız değişenleri almak için bir önceki çekimin başlangıç zamanını updatedSince olarak gönderin.
GET https://api.hizlisanalmarket.com/api/v1/products/{id} · İzin: products:read
Yanıt, listedeki ürün nesnesinin aynısıdır. Ürün bulunamazsa 404 döner:
{ "error": "Ürün bulunamadı.", "code": "PRODUCT_NOT_FOUND" }