products
50 uç · /api/shop/v1/products
İstek örnekleri ucun GERÇEK metodu ve yolundan üretilir. 50 ucun elle doğrulanmış gövde örneği henüz yok; o uçlarda iskelet gövdesizdir — uydurma bir alan yazmıyoruz.
VPOS tanımı ekle/güncelle (upsert bank). bank 1-32 char, threed_mode 3d|non3d. config_ref saklanır
Oturum
ama response'ta dönmez.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Admin: retention config oku (gün eşikleri; null = o tablo için kapalı).
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Slot güncelle. capacity, mevcut booked'ın altına inemez (pre-check → 409).
OturumYol parametresi:
product_idİstek
curl -X PATCH "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}BLE-5057 · sil (kalıcı; kullanım-geçmişi orders snapshot'ında yaşar).
OturumYol parametresi:
product_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Adjust prices
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/adjust-prices" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product category assign
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/categories" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product category unassign
OturumYol parametresi:
product_idcategory_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/categories/<category_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product channels
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/channels" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/channels" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Unpublish
OturumYol parametresi:
product_idchannel_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/channels/<channel_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Ürün gümrük alanlarını ayarla (HS-code rakam ≤12; menşei ISO-2/3 harf). Yoksa 404.
OturumYol parametresi:
product_idİstek
curl -X PUT "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/customs" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Credential-listesi + kaldırma (müşteri-oturumu).
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/digital-assets" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}VPOS tanımı ekle/güncelle (upsert bank). bank 1-32 char, threed_mode 3d|non3d. config_ref saklanır
OturumYol parametresi:
product_idama response'ta dönmez.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/digital-assets" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/duplicate" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/featured" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}BLE-5103/5116 · toplu kod-üretici: prefix + rastgele-sonek havuzu; çakışma önleme
OturumYol parametresi:
product_idon-conflict-do-nothing + yeniden-deneme (deterministik olmayan sonek UUID'den türetilir — pratikte çakışma sıfıra yakın; teoride tükenirse 409). Üretilen kodlar yanıtta döner.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/generate-content" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Credential-listesi + kaldırma (müşteri-oturumu).
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}BLE-5057 · sil (kalıcı; kullanım-geçmişi orders snapshot'ında yaşar).
OturumYol parametresi:
product_idmedia_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media/<media_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Slot güncelle. capacity, mevcut booked'ın altına inemez (pre-check → 409).
OturumYol parametresi:
product_idmedia_idİstek
curl -X PATCH "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media/<media_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X PATCH "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media/reorder" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}POST .../media/upload (StaffCtx PRODUCT_WRITE) — ENFORCED proxy: ham baytlar → validate_upload
OturumYol parametresi:
product_id(magic-byte + boyut) → storage.put → product_media satırı (gerçek storage_key). attach'ın GÜVENLİ hali.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media/upload" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}POST .../media/upload-url (StaffCtx PRODUCT_WRITE) — yükleme PLANI (declared tip/boyut ön-doğrulama;
OturumYol parametresi:
product_ids3 → presigned direct-PUT, local → proxy uç). Gerçek magic-byte ENFORCE proxy'de.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/media/upload-url" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/options" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/options" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Credential-listesi + kaldırma (müşteri-oturumu).
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/personalization" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}VPOS tanımı ekle/güncelle (upsert bank). bank 1-32 char, threed_mode 3d|non3d. config_ref saklanır
OturumYol parametresi:
product_idama response'ta dönmez.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/personalization" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}BLE-5057 · sil (kalıcı; kullanım-geçmişi orders snapshot'ında yaşar).
OturumYol parametresi:
product_idfield_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/personalization/<field_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Credential-listesi + kaldırma (müşteri-oturumu).
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/recommendations" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Karşılaştırmaya ürün ekle (CAP=4; owner başına). Ürün yoksa 404; liste dolu → 409; tekrar → idempotent.
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/recommendations" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Public-api durum ucu: geçerli API versiyonu + deprecation/sunset (X-Api-Version başlığıyla).
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/status" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/tags" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/tags" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product tag remove
OturumYol parametresi:
product_idtag_idİstek
curl -X DELETE "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/tags/<tag_id>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product tags bulk
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/tags/bulk" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/variants" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Variant create
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/variants" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Variant generate
OturumYol parametresi:
product_idİstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/<product_id>/variants/generate" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}TF6 · toplu durum-değişikliği: her sipariş KENDİ tx'inde (kısmi başarı raporlanır; tek
Oturum
bozuk sipariş diğerlerini bloklamaz). En çok 200 id.
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/bulk-status" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Temayı ZIP olarak indir. Ajans temayı müşteriye verir, satıcı yedek alır.
Oturum
İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/export.csv" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}ZIP'ten tema dosyalarını içeri al. Ham gövde (application/zip).
Oturum
İstek
curl -X POST "https://{slug}.shop.blesyum.app/api/shop/v1/admin/products/import" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Yayınlı ürünler (read_products). Public storefront list_products'ı REUSE eder (active+published).
Oturum
İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/headless/products" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Tek ürün detayı (read_products). Public get_detail'i REUSE eder (yalnız active+published; yoksa 404).
OturumYol parametresi:
handleİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/headless/products/<handle>" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Yayınlı ürünler (read_products). Public storefront list_products'ı REUSE eder (active+published).
Oturum
İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/products" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/products/<handle>/recommendations" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}İstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/products/<handle>/related" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Product plans
OturumYol parametresi:
product_idİstek
curl -X GET "https://{slug}.shop.blesyum.app/api/shop/v1/storefront/products/<product_id>/selling-plans" \
-H "Authorization: Bearer <oturum-token>" \
-H "Accept: application/json"Yanıt
{
"data": "…",
"trace_id": "01JC…"
}Bu sayfa işine yaradı mı?