Katalog API'si2026-11Önizleme

Ürünler

Bir içe aktarmadan kaydettiğiniz; başlığınız, fiyatlarınız ve satıldığı mağazalarla birlikte bir ilan.
  • Ürünler Shopify'a gönderilir. Shopify mağazanızın satış yaptığı pazaryerlerinden gelen siparişler de bize Shopify üzerinden ulaşır: Mağaza bağla.
  • Bir WooCommerce ya da Wix mağazası kendi ürünlerini tutar ve siparişlerini Sipariş oluştur ile gönderir.

Product nesnesi

idstring
prd_ ile başlar.
titlestring
Başlığınız. Satıcınınki içe aktarmada kalır.
statusstring
active ya da paused (sizin tarafınızdan ya da maliyet çok yükseldiğinde veya satıcının stoğu bittiğinde bir senkronizasyon kuralı tarafından).
sourceobject
Pazaryeri, ilan bağlantısı ve Çin'deki satıcı.
options[]array
Mağazanızın gösterdiği şekliyle en fazla üç seçenek adı.
price_range, cost_rangeobject
Varyantlar genelinde sizin ve satıcının fiyatları.
channels[]array
Nerede listelendiği: mağaza, oradaki kendi ürün id'si ve oradaki durumu.
syncobject
İzlediği senkronizasyon kuralı ve ilanı en son ne zaman okuduğumuz.
importstring
Kaydedildiği içe aktarma.
product
{
  "id": "prd_8f2k",
  "title": "Heavyweight Washed Hoodie",
  "status": "active",
  "source": {
    "marketplace": "weidian",
    "url": "https://weidian.com/item.html?itemID=7750970856",
    "seller": "Ruoyi Studio"
  },
  "options": ["Color", "Size"],
  "variants_count": 6,
  "price_range": {
    "min": { "amount": "49.99", "currency": "USD" },
    "max": { "amount": "54.99", "currency": "USD" }
  },
  "cost_range": {
    "min": { "amount": "38.00", "currency": "CNY" },
    "max": { "amount": "42.00", "currency": "CNY" }
  },
  "channels": [
    {
      "channel": "shopify",
      "shop": "acme-goods.myshopify.com",
      "external_id": "gid://shopify/Product/8812042",
      "status": "draft",
      "pushed_at": "2026-11-04T09:20:03Z"
    }
  ],
  "sync": {
    "rule": "rule_default",
    "last_checked_at": "2026-11-04T09:12:40Z"
  },
  "import": "imp_2c9d",
  "created_at": "2026-11-04T09:20:01Z",
  "updated_at": "2026-11-04T09:20:03Z"
}

Ürünleri listele

GET/v1/products

Ürünleriniz, en yenisi önce.

Kapsamproducts:read

Sorgu parametreleri

statusstring
İsteğe bağlı. active ya da paused.
channelstring
İsteğe bağlı. Orada listelenenler için shopify.
changed_sincestring
İsteğe bağlı. Bir zaman: yalnızca o zamandan sonra maliyeti ya da stoğu değişen ürünler.
limit, cursor
Pagination
curl "https://www.ninjabuy.com/api/v1/products?status=active&limit=2" \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "NinjaBuy-Version: 2026-11"
Response 200
HTTP/2 200 OK

{
  "data": [
    {
      "id": "prd_8f2k",
      "title": "Heavyweight Washed Hoodie",
      "status": "active",
      "variants_count": 6
    },
    {
      "id": "prd_1x0a",
      "title": "Canvas Tote",
      "status": "active",
      "variants_count": 3
    }
  ],
  "has_more": true,
  "cursor": "c_1x0a"
}

Ürünü getir

GET/v1/products/{id}

Kaynağı, kanalları ve senkronizasyon durumuyla tek bir ürün. Varyantlarının kendi rotası vardır.

Kapsamproducts:read

Yol parametreleri

idstringzorunlu
Ürünün id'si.

Hatalar

DurumTürNe zaman
404not-foundBu hesapta böyle bir ürün yok.
curl "https://www.ninjabuy.com/api/v1/products/prd_8f2k" \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "NinjaBuy-Version: 2026-11"
Response 200
HTTP/2 200 OK

{
  "id": "prd_8f2k",
  "title": "Heavyweight Washed Hoodie",
  "status": "active",
  "source": {
    "marketplace": "weidian",
    "url": "https://weidian.com/item.html?itemID=7750970856",
    "seller": "Ruoyi Studio"
  },
  "options": ["Color", "Size"],
  "variants_count": 6,
  "price_range": {
    "min": { "amount": "49.99", "currency": "USD" },
    "max": { "amount": "54.99", "currency": "USD" }
  },
  "cost_range": {
    "min": { "amount": "38.00", "currency": "CNY" },
    "max": { "amount": "42.00", "currency": "CNY" }
  },
  "channels": [
    {
      "channel": "shopify",
      "shop": "acme-goods.myshopify.com",
      "external_id": "gid://shopify/Product/8812042",
      "status": "draft",
      "pushed_at": "2026-11-04T09:20:03Z"
    }
  ],
  "sync": {
    "rule": "rule_default",
    "last_checked_at": "2026-11-04T09:12:40Z"
  },
  "import": "imp_2c9d",
  "created_at": "2026-11-04T09:20:01Z",
  "updated_at": "2026-11-04T09:20:03Z"
}

Ürünü güncelle

PATCH/v1/products/{id}

Başlığı ya da açıklamayı değiştirin veya duraklatıp sürdürün. Yalnızca değişeni gönderin. Fiyatlar varyant bazındadır (Varyantlar); gönderilmiş bir ürün, değişikliği bir sonraki gönderimde mağazanıza taşır.

Kapsamproducts:write

Yol parametreleri

idstringzorunlu
Ürünün id'si.

Gövde

titlestring
İsteğe bağlı.
descriptionstring
İsteğe bağlı. Mağazanızın gösterdiği HTML.
statusstring
İsteğe bağlı. active ya da paused. Paused, kanallarınızda stoğu 0 yapar.
sync_rulestring
İsteğe bağlı. Bir senkronizasyon kuralı id'si; null ise varsayılan kural.

Hatalar

DurumTürNe zaman
404not-foundBu hesapta böyle bir ürün yok.
curl -X PATCH "https://www.ninjabuy.com/api/v1/products/prd_8f2k" \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "NinjaBuy-Version: 2026-11" \
  -H "Content-Type: application/json" \
  -d '{ "status": "paused" }'
Response 200
HTTP/2 200 OK

{
  "id": "prd_8f2k",
  "title": "Heavyweight Washed Hoodie",
  "status": "paused",
  "source": {
    "marketplace": "weidian",
    "url": "https://weidian.com/item.html?itemID=7750970856",
    "seller": "Ruoyi Studio"
  },
  "options": ["Color", "Size"],
  "variants_count": 6,
  "price_range": {
    "min": { "amount": "49.99", "currency": "USD" },
    "max": { "amount": "54.99", "currency": "USD" }
  },
  "cost_range": {
    "min": { "amount": "38.00", "currency": "CNY" },
    "max": { "amount": "42.00", "currency": "CNY" }
  },
  "channels": [
    {
      "channel": "shopify",
      "shop": "acme-goods.myshopify.com",
      "external_id": "gid://shopify/Product/8812042",
      "status": "draft",
      "pushed_at": "2026-11-04T09:20:03Z"
    }
  ],
  "sync": {
    "rule": "rule_default",
    "last_checked_at": "2026-11-04T09:12:40Z"
  },
  "import": "imp_2c9d",
  "created_at": "2026-11-04T09:20:01Z",
  "updated_at": "2026-11-04T09:20:03Z"
}

Shopify'a gönder

POST/v1/products/{id}/push

Ürünü bağlı Shopify mağazanızda listeler: tek bir Shopify ürünü, tuttuğunuz her SKU için bir varyant, fotoğrafları ve her varyant Fulfilled by NinjaBuy konumunda stoklu; böylece siparişleri bize gelir.

  • İlk gönderim onu taslak olarak oluşturur: başlık ve fotoğraflar bir Çin pazaryerinden geldi; alıcılarınızdan önce siz okuyun, sonra Shopify'da yayımlayın.
  • Yeniden göndermek aynı Shopify ürününü günceller: fiyatlar ve stok yeniden ayarlanır, çıkardığınız varyantlar kaldırılır. Durum, başlık, açıklama ve fotoğraflar, yenilerini göndermediğiniz sürece Shopify'da bıraktığınız gibi kalır.
  • Stok, satıcının sayısıdır ve en fazla 100'dür: talep geldikçe satın aldığımız için Shopify'ın tükendi göstermeden önce kaç sipariş alacağını belirler.
  • Fiyatlar US$ cinsinden olduğu için mağazanız US$ ile satış yapmalıdır. Tükenmiş varyantlar atlanır ve skipped[] içinde belirtilir.

Kapsamproducts:write

Yol parametreleri

idstringzorunlu
Ürünün id'si.

Gövde

shopstring
Hangi bağlı mağaza; acme-goods.myshopify.com biçiminde. Yalnızca birden fazla bağladıysanız gerekir.
title, descriptionstring
İsteğe bağlı. Yalnızca siz gönderdiğinizde Shopify'a gönderilir.

Hatalar

DurumTürNe zaman
409no-linked-storeBu hesaba bağlı bir Shopify mağazası yok ya da birden fazla var ve shop eksik.
409store-not-readyMağazanın erişim süresi doldu ya da konumumuz henüz kurulmadı: Shopify'da NinjaBuy uygulamasını bir kez açın.
422store-currencyMağaza US$ ile satış yapmıyor.
422too-many-optionsİlanın üçten fazla seçeneği var; Shopify üç tane kabul eder.
422unprocessableTüm varyantlar tükenmiş ya da Shopify bir alanı reddetmiş; detail onun ifadesini aktarır.
curl -X POST "https://www.ninjabuy.com/api/v1/products/prd_8f2k/push" \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "NinjaBuy-Version: 2026-11" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{ "shop": "acme-goods.myshopify.com" }'
Response 200
HTTP/2 200 OK

{
  "channel": "shopify",
  "shop": "acme-goods.myshopify.com",
  "external_id": "gid://shopify/Product/8812042",
  "status": "draft",
  "created": true,
  "variants": 5,
  "skipped": [{ "sku": "5187209555", "reason": "sold_out" }],
  "admin_url": "https://admin.shopify.com/store/acme-goods/products/8812042"
}

Ürün sil

DELETE/v1/products/{id}

Senkronizasyonunu durdurur ve kanallarınızda stoğunu 0 yapar; Shopify ürünü arşivlemeniz için kalır. Zaten verilmiş siparişler yine gönderilir.

Kapsamproducts:write

Yol parametreleri

idstringzorunlu
Ürünün id'si.

Hatalar

DurumTürNe zaman
404not-foundBu hesapta böyle bir ürün yok.
curl -X DELETE "https://www.ninjabuy.com/api/v1/products/prd_8f2k" \
  -H "Authorization: Bearer $NINJABUY_API_KEY" \
  -H "NinjaBuy-Version: 2026-11"
Response 200
HTTP/2 200 OK

{ "id": "prd_8f2k", "deleted": true }