API referansı · Ürünler
Ürünleri listele
Bir kaynaktaki ürünleri filtreleyip sıralı ve sayfalı olarak döndürür.
https://out.stockmount.com/api/Product/GetProducts
PageIndex 1'den başlar; 1'den küçük değerler 1 sayılır. RowsByPage gönderilmezse veya 0 ise 100'dür; en fazla 100'dür (daha büyük değerler 100'e, negatif değerler 1'e çekilir). Toplam sayfa sayısını FilteredProductCount ve RowsByPage ile hesaplayın.
OrderBy şu değerlerden biri olmalıdır (büyük/küçük harf duyarsız): Name, ProductId, Category, Price, Quantity, Status, CurrencyId. Geçersiz değer hata vermez, ProductId kullanılır. OrderDirection ASC veya DESC olur; geçersizse ASC.
Sayısal filtrelerde 0, metin filtrelerinde boş değer filtreyi kapatır; bu yüzden QuantityFrom/QuantityTo ile stoğu 0 olan ürünleri süzemezsiniz. ProductCode ve ProductCategory birebir eşleşir. Keywords ürün adında (ve varsa pazaryerine özel adında) arar; boşluklar joker gibi davranır: kırmızı tişört, adında önce kırmızı sonra tişört geçen ürünleri bulur.
CreationTimeFrom ve CreationTimeTo yalnızca yılı 2010'dan büyükse uygulanır. Değeri 2025-01-31T00:00:00 biçiminde, saat dilimi eki olmadan gönderin; veritabanında saklanan oluşturma zamanıyla olduğu gibi karşılaştırılır. Yanıttaki CreationTime de saat dilimi eki olmadan döner.
TotalProductCount filtrelerden bağımsız olarak kaynaktaki toplam ürün sayısıdır; FilteredProductCount filtrelere uyan ürün sayısıdır. Kaldırılmış DeleteProduct ile silinmiş ürünler sayılmaz ve listelenmez; durdurulmuş ürünler (durum 3) listelenir. ProductSourceId herhangi bir kaynağınız olabilir; kaynak tipi kontrol edilmez.
Liste öğesi, GetProduct yanıtından daha az alan içerir; varyant, görsel listesi ve açıklama yoktur. Image ilk görselin adresidir. Currency para biriminin kodudur; kod NON ise TRY döner. Barcode ürünün kendi barkodudur (GetProduct ise entegrasyon barkodunu öncelikli döndürür).
Aktif Ürün Paketi olmayan hesaplar 70018 hatası alır; paket bilgisi doğrulanamazsa 99999 döner.
İstek alanları
| Alan | Tip | Açıklama |
|---|---|---|
ApiCode
zorunlu
|
string |
DoLogin ile aldığınız oturum kodu.
|
ProductSourceId
zorunlu
|
integer |
Listelenecek kaynak. 1'den küçükse 00003 döner (ErrorMessage: ProductSourceId).
|
ProductId
|
integer | Tek bir ürün kimliğiyle süzer. 0 = filtre yok. |
ProductCode
|
string | Ürün kodu, birebir eşleşme. En fazla 50 karakter. |
Keywords
|
string | Ürün adında arama; boşluklar joker gibi davranır. |
ProductCategory
|
string | Kategori adı, birebir eşleşme. |
PriceFrom
|
number | En düşük fiyat (dahil). 0 = filtre yok. |
PriceTo
|
number | En yüksek fiyat (dahil). 0 = filtre yok. |
QuantityFrom
|
integer | En düşük stok (dahil). 0 = filtre yok. |
QuantityTo
|
integer | En yüksek stok (dahil). 0 = filtre yok. |
CurrencyId
|
integer | Para birimi kimliği. 0 = filtre yok. |
ProductStatus
|
integer |
Ürün durumu filtresi. Varsayılan -1 (tümü).
|
CreationTimeFrom
|
datetime |
Bu zamandan sonra oluşturulanlar (dahil). yyyy-MM-ddTHH:mm:ss, saat dilimi eki olmadan. Yılı 2010 veya öncesiyse yok sayılır.
|
CreationTimeTo
|
datetime |
Bu zamandan önce oluşturulanlar (dahil). Biçim ve kural CreationTimeFrom ile aynı.
|
PageIndex
|
integer | Sayfa numarası, 1'den başlar. Varsayılan 1. |
RowsByPage
|
integer | Sayfa boyutu. Varsayılan 100, en fazla 100. |
OrderBy
|
string |
Sıralama alanı. Varsayılan ProductId.
|
OrderDirection
|
string |
Sıralama yönü. Varsayılan ASC.
|
Yanıt alanları (Response)
| Alan | Tip | Açıklama |
|---|---|---|
TotalProductCount
|
integer | Kaynaktaki toplam ürün sayısı (filtrelerden bağımsız). |
FilteredProductCount
|
integer | Filtrelere uyan ürün sayısı. |
Products
|
object[] | Bu sayfadaki ürünler. |
Products[].
ProductId
|
integer | Ürün kimliği. |
Products[].
ProductSourceId
|
integer | Kaynak kimliği. |
Products[].
Category
|
string | Kategori adı. |
Products[].
Code
|
string | Ürün kodu. |
Products[].
Code2
|
string | İkinci ürün kodu; yoksa boş. |
Products[].
Name
|
string | Ürün adı. |
Products[].
TaxRate
|
number | KDV oranı; yoksa 0. |
Products[].
Quantity
|
integer | Stok miktarı. |
Products[].
SoldCount
|
integer | Satış adedi. |
Products[].
Price
|
number | Satış fiyatı. |
Products[].
Subtitle
|
string | Alt başlık. |
Products[].
Volume
|
number | Hacim / desi (ikinci değer tanımlıysa o). |
Products[].
Brand
|
string | Marka. |
Products[].
Barcode
|
string | Ürünün kendi barkodu. |
Products[].
Status
|
integer |
Ürün durumu.
|
Products[].
CreationTime
|
datetime | Oluşturulma zamanı, saat dilimi eki olmadan. |
Products[].
CurrencyId
|
integer | Para birimi kimliği. |
Products[].
MarketPrice
|
number | Piyasa (liste) fiyatı; yoksa 0. |
Products[].
Image
|
string | İlk görselin adresi; yoksa boş. |
Products[].
Currency
|
string |
Para birimi kodu (ör. TRY, USD); NON ise TRY döner.
|
Products[].
SellerNote
|
string | Satıcı notu; yoksa boş. |
Bu servisin hata kodları
| Kod | Ne zaman |
|---|---|
70002 |
ProductSourceId hesabınıza ait bir ürün kaynağı değil (ErrorMessage: InvalidProductSource). |
70018 |
Hesabınızda aktif Ürün Paketi yok (ErrorMessage: Ürün entegrasyonu için aktif Ürün Paketi gereklidir.). |
99999 |
Beklenmeyen bir hata oluştu. Ürün listesi okunamadığında da döner. |
Oturum hataları (00001, 00006) ve tüm kodlar için hata kodları.
İlgili servisler
Örnek istek
{
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "tişört",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
}
curl -X POST 'https://out.stockmount.com/api/Product/GetProducts' \
-H 'Content-Type: application/json' \
-d '{
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "tişört",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
}'
using System.Net.Http;
using System.Text;
using var http = new HttpClient();
var json = """
{
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "tişört",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
}
""";
var response = await http.PostAsync(
"https://out.stockmount.com/api/Product/GetProducts",
new StringContent(json, Encoding.UTF8, "application/json"));
var result = await response.Content.ReadAsStringAsync();
// Result == false ise ErrorCode ve ErrorMessage alanlarına bakın.
Console.WriteLine(result);
<?php
$body = <<<'JSON'
{
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "tişört",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
}
JSON;
$ch = curl_init('https://out.stockmount.com/api/Product/GetProducts');
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => $body,
CURLOPT_RETURNTRANSFER => true,
]);
$result = json_decode(curl_exec($ch), true);
curl_close($ch);
if (!$result['Result']) {
echo $result['ErrorCode'] . ' ' . $result['ErrorMessage'];
}
import requests
payload = {
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "ti\u015F\u00F6rt",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
}
response = requests.post("https://out.stockmount.com/api/Product/GetProducts", json=payload, timeout=60)
result = response.json()
if not result["Result"]:
print(result["ErrorCode"], result["ErrorMessage"])
const payload = {
"ApiCode": "API_CODE",
"ProductSourceId": 1234,
"Keywords": "tişört",
"ProductStatus": 99,
"CreationTimeFrom": "2025-10-01T00:00:00",
"PageIndex": 1,
"RowsByPage": 50,
"OrderBy": "Name",
"OrderDirection": "ASC"
};
const response = await fetch("https://out.stockmount.com/api/Product/GetProducts", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify(payload),
});
const result = await response.json();
if (!result.Result) {
console.error(result.ErrorCode, result.ErrorMessage);
}
Örnek yanıt
{
"Result": true,
"Response": {
"TotalProductCount": 152,
"FilteredProductCount": 1,
"Products": [
{
"ProductId": 987654,
"ProductSourceId": 1234,
"Category": "Tişört",
"Code": "TSHIRT-001",
"Code2": "",
"Name": "Basic Pamuklu Tişört",
"TaxRate": 20.0,
"Quantity": 30,
"SoldCount": 4,
"Price": 249.9,
"Subtitle": "",
"Volume": 1.0,
"Brand": "Örnek Marka",
"Barcode": "8690000000017",
"Status": 1,
"CreationTime": "2025-11-05T10:22:31.497",
"CurrencyId": 4,
"MarketPrice": 299.9,
"Image": "https://cdn.example.com/tshirt-001-1.jpg",
"Currency": "TRY",
"SellerNote": ""
}
]
}
}
Deneyin
İstek tarayıcınızdan doğrudan out.stockmount.com adresine gider. ApiCode bu sitede saklanmaz; yalnızca bu sekme açıkken tutulur.
İstek göndermek için önce ApiCode alın.
Son istekler
Bu sekmeden gönderdiğiniz son istekler; birine tıklayınca gövdesi yeniden yüklenir.