Stok Sorgulama
Belirtilen barkodlara ait güncel stok adetlerini döndürür. Tekli ve çoklu sorgu biçimlerini destekler.
Gerekli yetki:
stock:read
Endpoint
POST /integration/inventory/sellers/{sellerId}/products/stock
Production
https://api.milagron.com/integration/inventory/sellers/{sellerId}/products/stock
Stage
https://stageapi.milagron.com/integration/inventory/sellers/{sellerId}/products/stock
Tekli Sorgu
İstek
{ "barcode": "8690000000001" }
Yanıt (200)
{
"barcode": "8690000000001",
"stock": 42
}
Belirtilen barkodun sistemde bulunmaması durumunda stock alanı null olarak döner.
Çoklu Sorgu
İstek
{
"barcodes": [
"8690000000001",
"8690000000002",
"8690000000003"
]
}
Yanıt (200)
{
"items": [
{ "barcode": "8690000000001", "stock": 42 },
{ "barcode": "8690000000002", "stock": 0 },
{
"barcode": "8690000000003",
"stock": null,
"message": "barcode not found for this seller"
}
]
}
Bulunamayan barkodlar için stock: null döner ve açıklayıcı bir message alanı eklenir. Bu durum bir hata değildir; istemci tarafında uygun biçimde işlenmelidir.
Kullanım Örnekleri
curl -u "API_KEY:API_SECRET" \
-X POST "https://api.milagron.com/integration/inventory/sellers/123/products/stock" \
-H "Content-Type: application/json" \
-d '{
"barcodes": [
"8690000000001",
"8690000000002"
]
}'<?php
$ch = curl_init('https://api.milagron.com/integration/inventory/sellers/123/products/stock');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_USERPWD => 'API_KEY:API_SECRET',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'barcodes' => [
'8690000000001',
'8690000000002'
]
]),
]);
$response = curl_exec($ch);
$data = json_decode($response, true);
curl_close($ch);const auth = Buffer.from('API_KEY:API_SECRET').toString('base64');
const res = await fetch('https://api.milagron.com/integration/inventory/sellers/123/products/stock', {
method: 'POST',
headers: {
'Authorization': `Basic ${auth}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
barcodes: [
'8690000000001',
'8690000000002'
]
})
});
const data = await res.json();import requests
response = requests.post(
'https://api.milagron.com/integration/inventory/sellers/123/products/stock',
auth=('API_KEY', 'API_SECRET'),
json={
'barcodes': [
'8690000000001',
'8690000000002'
]
}
)
response.raise_for_status()
data = response.json()package main
import (
"bytes"
"encoding/json"
"net/http"
)
func main() {
payload, _ := json.Marshal(map[string]interface{}{
"barcodes": []interface{}{
"8690000000001",
"8690000000002",
},
})
req, _ := http.NewRequest("POST", "https://api.milagron.com/integration/inventory/sellers/123/products/stock", bytes.NewBuffer(payload))
req.SetBasicAuth("API_KEY", "API_SECRET")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
}import java.net.URI;
import java.net.http.*;
import java.util.Base64;
HttpClient client = HttpClient.newHttpClient();
String auth = Base64.getEncoder()
.encodeToString("API_KEY:API_SECRET".getBytes());
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.milagron.com/integration/inventory/sellers/123/products/stock"))
.header("Authorization", "Basic " + auth)
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString("{\"barcodes\":[\"8690000000001\",\"8690000000002\"]}"))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());require 'net/http'
require 'uri'
require 'json'
uri = URI('https://api.milagron.com/integration/inventory/sellers/123/products/stock')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri.request_uri)
request.basic_auth('API_KEY', 'API_SECRET')
request['Content-Type'] = 'application/json'
request.body = {
barcodes: [
'8690000000001',
'8690000000002'
]
}.to_json
response = http.request(request)
data = JSON.parse(response.body)using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
var client = new HttpClient();
var auth = Convert.ToBase64String(
Encoding.UTF8.GetBytes("API_KEY:API_SECRET"));
client.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Basic", auth);
var content = new StringContent(
"{\"barcodes\":[\"8690000000001\",\"8690000000002\"]}",
Encoding.UTF8,
"application/json");
var response = await client.PostAsync("https://api.milagron.com/integration/inventory/sellers/123/products/stock", content);
var data = await response.Content.ReadAsStringAsync();Notlar
- Bu endpoint salt-okunur niteliktedir; stage ortamında dahi gerçek veri döner.
- Tek istek içerisinde en fazla 1000 barkod sorgulanabilir.
- Bulunamayan barkodlar için
stock: nulldönmesi hata sayılmaz; istemci tarafında uygun şekilde işlenmelidir.