Hesap
GET
/me
Bağlantıyı doğrula
Anahtarın bağlı olduğu çalışma alanını, anahtarın izinlerini ve istek sınırını döner. Entegrasyonunuzu kurarken ilk bu uçla deneyin.
İstek
curl -X GET "https://infudex.com/api/v1/me" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": {
"workspace": {
"name": "Atölye Nar",
"currency": "TRY",
"timezone": "Europe/Istanbul"
},
"key": {
"name": "ERP entegrasyonu",
"prefix": "ifx_AbCdEfGhIjKl…",
"scopes": [
"orders:read",
"orders:write"
],
"expires_at": null
},
"rate_limit": {
"requests_per_minute": 120
}
}
}
GET
/shops
shops:read
Satış kanallarını listele
Çalışma alanına bağlı pazaryeri ve mağazalar. Sipariş listesini kanala göre süzmek için buradaki id kullanılır.
| Sorgu parametreleri |
| page |
integer |
Sayfa numarası (varsayılan 1). |
| per_page |
integer |
Sayfa başına kayıt, 1-100 (varsayılan 25). |
İstek
curl -X GET "https://infudex.com/api/v1/shops" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": [
{
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol",
"platform_name": "Trendyol",
"status": "connected",
"currency": "TRY",
"is_demo": false,
"last_synced_at": "2026-10-10T09:55:00+03:00",
"syncable": true,
"sync": {
"queued": false,
"error": null
}
}
],
"meta": {
"page": 1,
"per_page": 25,
"total": 1,
"last_page": 1
},
"links": {
"next": null,
"prev": null
}
}
GET
/shops/{id}
shops:read
Kanal ayrıntısı ve senkron durumu
sync.queued true ise senkron sırada ya da çalışıyor; bitince last_synced_at güncellenir. sync.error son senkron hatasıdır.
İstek
curl -X GET "https://infudex.com/api/v1/shops/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol",
"platform_name": "Trendyol",
"status": "connected",
"currency": "TRY",
"is_demo": false,
"last_synced_at": "2026-10-10T09:55:00+03:00",
"syncable": true,
"sync": {
"queued": false,
"error": null
}
}
}
Olası hata kodları: not_found
POST
/shops/{id}/sync
shops:sync
Pazaryerinden siparişleri çek (senkron başlat)
Kanalın yeni siparişlerini, durum değişikliklerini ve ürünlerini pazaryerinden panele çekmeyi arka planda başlatır; panelin düzenli otomatik senkronunu beklemeden. Yanıt hemen 202 döner; bitişini GET /shops/{id} ile izleyin. Aynı kanalda son senkrondan 5 dakika geçmeden yenisi başlatılamaz (429 sync_too_soon). Özel, manuel ve CSV kanallar senkronlanmaz.
İstek
curl -X POST "https://infudex.com/api/v1/shops/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12/sync" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 202
{
"data": {
"queued": true,
"already_queued": false,
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol",
"platform_name": "Trendyol",
"status": "connected",
"currency": "TRY",
"is_demo": false,
"last_synced_at": "2026-10-10T09:55:00+03:00",
"syncable": true,
"sync": {
"queued": true,
"error": null
}
}
}
}
Olası hata kodları: not_found, shop_not_syncable, sync_too_soon
GET
/carriers
Kargo firmalarını listele
Gönderi eklerken carrier alanında kullanılabilecek kargo firması anahtarları.
İstek
curl -X GET "https://infudex.com/api/v1/carriers" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": [
{
"key": "yurtici",
"name": "Yurtiçi Kargo"
},
{
"key": "aras",
"name": "Aras Kargo"
}
]
}
Siparişler
GET
/orders
orders:read
Siparişleri listele
Bütün kanallardaki siparişler, kalemleri ve gönderileriyle. Değişenleri düzenli çekmek için updated_since ve sort=updated_at birlikte kullanın; son aldığınız kaydın updated_at değerini bir sonraki istekte gönderin.
| Sorgu parametreleri |
| status |
string |
Virgülle ayrılmış durumlar: paid, processing, shipped, delivered, completed, canceled, refunded. |
| shop_id |
uuid |
Yalnızca bu kanalın siparişleri (/shops). |
| ordered_since |
datetime |
Bu tarihten (dahil) sonra verilen siparişler. ISO 8601, ör. 2026-10-01T00:00:00+03:00. |
| ordered_until |
datetime |
Bu tarihe (dahil) kadar verilen siparişler. |
| updated_since |
datetime |
Bu tarihten sonra değişen siparişler (durum, kargo, adres…). |
| sort |
string |
-ordered_at (varsayılan, yeniden eskiye), ordered_at, updated_at, -updated_at. |
| page |
integer |
Sayfa numarası (varsayılan 1). |
| per_page |
integer |
Sayfa başına kayıt, 1-100 (varsayılan 25). |
İstek
curl -X GET "https://infudex.com/api/v1/orders" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": [
{
"id": "0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12",
"number": "283534307",
"external_id": "3099b7db-6a35-498d",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"status": "paid",
"is_paid": true,
"is_gift": false,
"gift_message": null,
"buyer_note": null,
"buyer": {
"name": "Ayşe Yılmaz",
"email": "[email protected]"
},
"shipping_address": {
"name": "Ayşe Yılmaz",
"line1": "Moda Cad. 5",
"line2": null,
"city": "İstanbul",
"state": "Kadıköy",
"zip": "34710",
"country": "TR",
"phone": "05551112233"
},
"currency": "TRY",
"subtotal": 30000,
"shipping_cost": 3000,
"tax": 0,
"discount": 2000,
"total": 31000,
"items": [
{
"external_id": "9001",
"title": "Keten gömlek",
"sku": "GML-M",
"quantity": 2,
"price": 15000,
"tax_rate": 20,
"variations": {
"Beden": "M"
},
"product_id": "0199c3f2-0000-7000-8000-00000000b001"
}
],
"shipments": [],
"ordered_at": "2026-10-09T14:05:00+03:00",
"shipped_at": null,
"delivered_at": null,
"created_at": "2026-10-09T14:06:12+03:00",
"updated_at": "2026-10-09T14:06:12+03:00"
}
],
"meta": {
"page": 1,
"per_page": 25,
"total": 1,
"last_page": 1
},
"links": {
"next": null,
"prev": null
}
}
Olası hata kodları: validation_failed
GET
/orders/{id}
orders:read
Sipariş ayrıntısı
Tek sipariş; id, listede dönen UUID’dir.
İstek
curl -X GET "https://infudex.com/api/v1/orders/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": {
"id": "0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12",
"number": "283534307",
"external_id": "3099b7db-6a35-498d",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"status": "paid",
"is_paid": true,
"is_gift": false,
"gift_message": null,
"buyer_note": null,
"buyer": {
"name": "Ayşe Yılmaz",
"email": "[email protected]"
},
"shipping_address": {
"name": "Ayşe Yılmaz",
"line1": "Moda Cad. 5",
"line2": null,
"city": "İstanbul",
"state": "Kadıköy",
"zip": "34710",
"country": "TR",
"phone": "05551112233"
},
"currency": "TRY",
"subtotal": 30000,
"shipping_cost": 3000,
"tax": 0,
"discount": 2000,
"total": 31000,
"items": [
{
"external_id": "9001",
"title": "Keten gömlek",
"sku": "GML-M",
"quantity": 2,
"price": 15000,
"tax_rate": 20,
"variations": {
"Beden": "M"
},
"product_id": "0199c3f2-0000-7000-8000-00000000b001"
}
],
"shipments": [],
"ordered_at": "2026-10-09T14:05:00+03:00",
"shipped_at": null,
"delivered_at": null,
"created_at": "2026-10-09T14:06:12+03:00",
"updated_at": "2026-10-09T14:06:12+03:00"
}
}
Olası hata kodları: not_found
POST
/orders
orders:write
Siparişi panele aktar (kendi sitenizden)
Kendi sitenizde, mağazanızda ya da yazılımınızda oluşan siparişi bir özel kanala kaydeder (Kanallar → Kanal ekle → Özel kanal). Sipariş pazaryeri siparişleriyle aynı şekilde işlenir: SKU ya da product_id ile eşleşen ürünlerin stoğu düşer (stok senkronu açıksa), otomatik fatura ve yeni sipariş bildirimi çalışır, aylık sipariş limitine sayılır. external_id sizin sisteminizdeki sipariş numarasıdır; aynı kanalda tekrar gönderilirse 409 order_exists ve mevcut siparişin id’si döner, böylece tekrar denemelerde çift kayıt oluşmaz.
| Gövde (JSON) |
| external_id * |
string |
Sizin sisteminizdeki sipariş kimliği (kanal içinde benzersiz), en çok 100 karakter. |
| shop_id |
uuid |
Özel kanalın id’si (kanal sayfasında yazar). Tek özel kanalınız varsa gönderilmeyebilir. |
| number |
string |
Panelde görünecek sipariş numarası (varsayılan external_id). |
| status |
string |
paid (varsayılan), processing, shipped, delivered. |
| ordered_at |
datetime |
Sipariş zamanı (varsayılan şimdi). |
| currency |
string |
Para birimi, ör. TRY (varsayılan kanalın para birimi). |
| buyer.name * |
string |
Alıcı adı. |
| buyer.email |
string |
Alıcı e-postası. |
| shipping_address |
object |
name, line1, line2, city, state (ilçe), zip, country (ISO 2 harf), phone. |
| items * |
array |
1-200 kalem: product_id ya da sku (stok kalemiyle eşleşme), title (product_id yoksa zorunlu), quantity, price (küçük birim, birim fiyat), tax_rate, variations (ör. {"Beden": "M"}). |
| shipping_cost |
integer |
Kargo ücreti (küçük birim). |
| discount |
integer |
Toplam indirim (küçük birim). |
| tax |
integer |
Fiyatlara dahil değilse vergi tutarı (küçük birim). |
| buyer_note |
string |
Alıcı notu. |
| is_paid |
boolean |
Ödendi mi (varsayılan true). |
İstek
curl -X POST "https://infudex.com/api/v1/orders" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"external_id":"WEB-10045","buyer":{"name":"Ayşe Yılmaz","email":"[email protected]"},"shipping_address":{"line1":"Moda Cad. 5","city":"İstanbul","state":"Kadıköy","zip":"34710","country":"TR","phone":"05551112233"},"items":[{"sku":"GML-M","title":"Keten gömlek","quantity":2,"price":15000,"variations":{"Beden":"M"}}],"shipping_cost":3000,"discount":2000}'
Yanıt · 201
{
"data": {
"id": "0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12",
"number": "WEB-10045",
"external_id": "WEB-10045",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a009",
"name": "Web sitem",
"platform": "custom"
},
"status": "paid",
"is_paid": true,
"is_gift": false,
"gift_message": null,
"buyer_note": null,
"buyer": {
"name": "Ayşe Yılmaz",
"email": "[email protected]"
},
"shipping_address": {
"name": "Ayşe Yılmaz",
"line1": "Moda Cad. 5",
"line2": null,
"city": "İstanbul",
"state": "Kadıköy",
"zip": "34710",
"country": "TR",
"phone": "05551112233"
},
"currency": "TRY",
"subtotal": 30000,
"shipping_cost": 3000,
"tax": 0,
"discount": 2000,
"total": 31000,
"items": [
{
"external_id": "9001",
"title": "Keten gömlek",
"sku": "GML-M",
"quantity": 2,
"price": 15000,
"tax_rate": 20,
"variations": {
"Beden": "M"
},
"product_id": "0199c3f2-0000-7000-8000-00000000b001"
}
],
"shipments": [],
"ordered_at": "2026-10-09T14:05:00+03:00",
"shipped_at": null,
"delivered_at": null,
"created_at": "2026-10-09T14:06:12+03:00",
"updated_at": "2026-10-09T14:06:12+03:00"
}
}
Olası hata kodları: validation_failed, no_custom_channel, order_exists, order_in_progress, order_limit_reached, shop_disconnected
POST
/orders/{id}/status
orders:write
Sipariş durumunu değiştir
Özel kanal siparişinin durumunu günceller: processing, shipped, delivered, canceled, refunded. İptal ve iadede düşülen stok geri eklenir; kargoya verilince otomatik fatura çalışır. Pazaryeri siparişlerinin durumu pazaryerinden gelir, bu uçla değiştirilemez (409 status_managed_by_channel). İptal / iade edilmiş sipariş yeniden açılamaz; teslim edilmiş sipariş yalnızca iptal ya da iade edilebilir.
| Gövde (JSON) |
| status * |
string |
processing, shipped, delivered, canceled ya da refunded. |
İstek
curl -X POST "https://infudex.com/api/v1/orders/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12/status" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"status":"canceled"}'
Yanıt · 200
{
"data": {
"id": "0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12",
"number": "283534307",
"external_id": "3099b7db-6a35-498d",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"status": "canceled",
"is_paid": true,
"is_gift": false,
"gift_message": null,
"buyer_note": null,
"buyer": {
"name": "Ayşe Yılmaz",
"email": "[email protected]"
},
"shipping_address": {
"name": "Ayşe Yılmaz",
"line1": "Moda Cad. 5",
"line2": null,
"city": "İstanbul",
"state": "Kadıköy",
"zip": "34710",
"country": "TR",
"phone": "05551112233"
},
"currency": "TRY",
"subtotal": 30000,
"shipping_cost": 3000,
"tax": 0,
"discount": 2000,
"total": 31000,
"items": [
{
"external_id": "9001",
"title": "Keten gömlek",
"sku": "GML-M",
"quantity": 2,
"price": 15000,
"tax_rate": 20,
"variations": {
"Beden": "M"
},
"product_id": "0199c3f2-0000-7000-8000-00000000b001"
}
],
"shipments": [],
"ordered_at": "2026-10-09T14:05:00+03:00",
"shipped_at": null,
"delivered_at": null,
"created_at": "2026-10-09T14:06:12+03:00",
"updated_at": "2026-10-09T14:06:12+03:00"
}
}
Olası hata kodları: not_found, validation_failed, status_managed_by_channel, invalid_status_transition
POST
/orders/{id}/shipments
orders:write
Siparişe kargo takip numarası ekle
Gönderiyi kaydeder, siparişi kargoda yapar ve takip numarasını siparişin geldiği pazaryerine iletir (kanal destekliyorsa). Aynı takip numarası aynı siparişe iki kez eklenemez. Yeniden deneme ihtimaline karşı Idempotency-Key başlığı gönderin.
| Gövde (JSON) |
| carrier * |
string |
Kargo firması anahtarı (/carriers), ör. yurtici. |
| tracking_number * |
string |
Takip numarası, 4-64 karakter; harf, rakam, boşluk ve - _ . / içerebilir. |
| notify_buyer |
boolean |
Alıcıya kargo e-postası gönderilsin mi (varsayılan false). |
İstek
curl -X POST "https://infudex.com/api/v1/orders/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12/shipments" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"carrier":"yurtici","tracking_number":"YK123456789","notify_buyer":false}'
Yanıt · 201
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000c001",
"carrier": "yurtici",
"carrier_name": "Yurtiçi Kargo",
"service": null,
"tracking_number": "YK123456789",
"tracking_url": "https://www.yurticikargo.com/tr/online-servisler/gonderi-sorgula?code=YK123456789",
"status": "in_transit",
"shipped_at": "2026-10-10T10:00:00+03:00",
"delivered_at": null,
"pushed_to_channel_at": "2026-10-10T10:00:02+03:00",
"created_at": "2026-10-10T10:00:00+03:00"
}
}
Olası hata kodları: not_found, validation_failed, order_not_shippable, duplicate_tracking_number, shipment_failed
Ürünler ve stok
GET
/products
products:read
Ürünleri listele
Merkezi stok kalemleri ve her birinin kanallardaki ilanları. stock, stok takibi kapalı üründe null döner.
| Sorgu parametreleri |
| sku |
string |
Tam SKU eşleşmesi. |
| updated_since |
datetime |
Bu tarihten sonra değişen ürünler. |
| include_archived |
boolean |
Arşivlenmiş ürünler de gelsin (varsayılan false). |
| page |
integer |
Sayfa numarası (varsayılan 1). |
| per_page |
integer |
Sayfa başına kayıt, 1-100 (varsayılan 25). |
İstek
curl -X GET "https://infudex.com/api/v1/products" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": [
{
"id": "0199c3f2-0000-7000-8000-00000000b001",
"sku": "GML-M",
"title": "Keten gömlek — M",
"kind": "physical",
"image_url": "https://…/gomlek.jpg",
"track_stock": true,
"stock": 12,
"low_stock_threshold": 3,
"is_group": false,
"is_archived": false,
"weight_grams": 250,
"tax_rate": 20,
"listings": [
{
"id": "0199c3f2-0000-7000-8000-00000000d001",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"external_id": "8680001112223",
"title": "Keten gömlek",
"state": "active",
"price": 15000,
"currency": "TRY",
"quantity": 12,
"url": null
}
],
"created_at": "2026-09-01T09:00:00+03:00",
"updated_at": "2026-10-10T10:00:00+03:00"
}
],
"meta": {
"page": 1,
"per_page": 25,
"total": 1,
"last_page": 1
},
"links": {
"next": null,
"prev": null
}
}
Olası hata kodları: validation_failed
GET
/products/{id}
products:read
Ürün ayrıntısı
Tek ürün ve ilanları.
İstek
curl -X GET "https://infudex.com/api/v1/products/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json"
Yanıt · 200
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000b001",
"sku": "GML-M",
"title": "Keten gömlek — M",
"kind": "physical",
"image_url": "https://…/gomlek.jpg",
"track_stock": true,
"stock": 12,
"low_stock_threshold": 3,
"is_group": false,
"is_archived": false,
"weight_grams": 250,
"tax_rate": 20,
"listings": [
{
"id": "0199c3f2-0000-7000-8000-00000000d001",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"external_id": "8680001112223",
"title": "Keten gömlek",
"state": "active",
"price": 15000,
"currency": "TRY",
"quantity": 12,
"url": null
}
],
"created_at": "2026-09-01T09:00:00+03:00",
"updated_at": "2026-10-10T10:00:00+03:00"
}
}
Olası hata kodları: not_found
POST
/products
products:write
Ürün oluştur
Yeni stok kalemi açar. SKU çalışma alanında benzersizdir (büyük-küçük harf farkı gözetilmez); varsa 409 sku_exists ve mevcut ürünün id’si döner. Pazaryeri ilanları senkronda SKU ile bu ürüne bağlanır.
| Gövde (JSON) |
| sku * |
string |
Stok kodu, en çok 80 karakter. |
| title * |
string |
Ürün adı. |
| stock |
integer |
Başlangıç stoğu (varsayılan 0). |
| track_stock |
boolean |
Stok takibi (varsayılan true). |
| low_stock_threshold |
integer |
Az stok uyarı eşiği (varsayılan 3). |
| cost |
integer |
Birim maliyet (küçük birim); kâr hesabında kullanılır. |
| packaging_cost |
integer |
Paketleme maliyeti (küçük birim). |
| cost_currency |
string |
Maliyet para birimi (varsayılan çalışma alanınınki). |
| weight_grams |
integer |
Ağırlık (gram). |
| tax_rate |
number |
KDV oranı (%). |
| image_url |
string |
Görsel adresi (https). |
İstek
curl -X POST "https://infudex.com/api/v1/products" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"sku":"GML-L","title":"Keten gömlek — L","stock":8,"cost":6500,"weight_grams":260}'
Yanıt · 201
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000b001",
"sku": "GML-L",
"title": "Keten gömlek — L",
"kind": "physical",
"image_url": "https://…/gomlek.jpg",
"track_stock": true,
"stock": 8,
"low_stock_threshold": 3,
"is_group": false,
"is_archived": false,
"weight_grams": 250,
"tax_rate": 20,
"listings": [],
"created_at": "2026-09-01T09:00:00+03:00",
"updated_at": "2026-10-10T10:00:00+03:00"
}
}
Olası hata kodları: validation_failed, sku_exists
PATCH
/products/{id}
products:write
Ürünü güncelle
Yalnızca gönderdiğiniz alanlar değişir: sku, title, cost, packaging_cost, cost_currency, weight_grams, tax_rate, low_stock_threshold, track_stock, image_url, is_archived. Stok bu uçla değişmez; PUT /products/{id}/stock kullanın.
| Gövde (JSON) |
| title |
string |
Ürün adı. |
| cost |
integer |
Birim maliyet (küçük birim). |
| is_archived |
boolean |
Arşive al / çıkar. |
İstek
curl -X PATCH "https://infudex.com/api/v1/products/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-d '{"cost":7000,"low_stock_threshold":5}'
Yanıt · 200
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000b001",
"sku": "GML-M",
"title": "Keten gömlek — M",
"kind": "physical",
"image_url": "https://…/gomlek.jpg",
"track_stock": true,
"stock": 12,
"low_stock_threshold": 3,
"is_group": false,
"is_archived": false,
"weight_grams": 250,
"tax_rate": 20,
"listings": [
{
"id": "0199c3f2-0000-7000-8000-00000000d001",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"external_id": "8680001112223",
"title": "Keten gömlek",
"state": "active",
"price": 15000,
"currency": "TRY",
"quantity": 12,
"url": null
}
],
"created_at": "2026-09-01T09:00:00+03:00",
"updated_at": "2026-10-10T10:00:00+03:00"
}
}
Olası hata kodları: not_found, validation_failed, sku_exists
PUT
/products/{id}/stock
products:write
Stoğu güncelle
Stoğu verilen adede ayarlar (stock) ya da verilen miktar kadar artırır / azaltır (adjust). İkisinden yalnızca biri gönderilir. adjust eşzamanlı isteklerde güvenlidir (satır kilitlenir). Değişiklik, stok gönderimi açık olan kanallara kendiliğinden iletilir.
| Gövde (JSON) |
| stock |
integer |
Yeni stok adedi (0 ya da pozitif). |
| adjust |
integer |
Değişim miktarı, ör. -2 ya da 10 (0 olamaz). Sonuç eksiye düşerse istek reddedilir. |
İstek
curl -X PUT "https://infudex.com/api/v1/products/0199c3f2-7b1a-7c3e-9f10-2a4b6c8d0e12/stock" \
-H "Authorization: Bearer $INFUDEX_API_KEY" \
-H "Accept: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"adjust":-2}'
Yanıt · 200
{
"data": {
"id": "0199c3f2-0000-7000-8000-00000000b001",
"sku": "GML-M",
"title": "Keten gömlek — M",
"kind": "physical",
"image_url": "https://…/gomlek.jpg",
"track_stock": true,
"stock": 10,
"low_stock_threshold": 3,
"is_group": false,
"is_archived": false,
"weight_grams": 250,
"tax_rate": 20,
"listings": [
{
"id": "0199c3f2-0000-7000-8000-00000000d001",
"shop": {
"id": "0199c3f2-0000-7000-8000-00000000a001",
"name": "Trendyol mağazam",
"platform": "trendyol"
},
"external_id": "8680001112223",
"title": "Keten gömlek",
"state": "active",
"price": 15000,
"currency": "TRY",
"quantity": 12,
"url": null
}
],
"created_at": "2026-09-01T09:00:00+03:00",
"updated_at": "2026-10-10T10:00:00+03:00"
}
}
Olası hata kodları: not_found, validation_failed, product_is_group, stock_would_be_negative