Sipariş paketlerini listele

GET /Orders/GetOrderPackages — OMS API · Paketler

Gönderi paketlerini filtreleyerek sayfalı döner. Depo/ERP entegrasyonunun işleyeceği paketleri çekmek için kullanılır.

Önerilen akış: clientStatus=Created (ya da kendi kullandığınız değerle) filtreleyerek yeni paketleri çekin, işledikten sonra Paket client statüsü yaz ile işaretleyin; işaretlenen paketler aynı filtreyle bir sonraki çekişte gelmez.

  • Tarihler milisaniye cinsinden Unix zaman damgasıdır.
  • Tarih verilmezse son N gün (kiracı ayarı, varsayılan 30) listelenir; aralık bu sınırı aşamaz.
  • size en fazla 200'dür; page 0'dan başlar.
  • Filtreye uyan paket yoksa HTTP 200, isSuccess: false, errorMesssage: "Arama Kriterlerinize Göre Uygun Sonuç Bulunamadı." döner.

Parametreler

  • page (query, integer): Sayfa numarası (0'dan başlar).
  • size (query, integer): Sayfa boyutu (en fazla 200).
  • startDate (query, integer<int64>): Başlangıç zamanı, Unix milisaniye.
  • endDate (query, integer<int64>): Bitiş zamanı, Unix milisaniye. Yalnızca bitiş verilirse başlangıç 7 gün öncesi alınır.
  • orderNumber (query, string): Sipariş numarası.
  • status (query, string): Paket statüsü (bkz. OrderPackageStatus).
  • clientStatus (query, string): Sizin yazdığınız client statüsü.
  • shipmentPackageIds (query, string): Paket kimlikleri (virgülle ayrılmış).
  • barcode (query, string): Ürün barkodu.
  • saleChannelCode (query, string): Satış kanalı kodu.
  • customerCode (query, string): Müşteri kodu.
  • customerEmail (query, string): Müşteri e-postası.
  • isGuest (query, boolean): Yalnızca üyeliksiz (true) ya da üyeli (false) siparişler.
  • erpNumberIsNull (query, boolean): true ise ERP numarası henüz yazılmamış paketler.
  • cargoCode (query, string): Kargo firması kodu.
  • orderByField (query, string): Sıralama alanı (paket alan adı, ör. orderDate, lastModifiedDate).
  • orderByDirection (query, string): Sıralama yönü; ASC dışındaki her değer azalan sıralar.

Yanıtlar

  • 200: Sorgu işlendi. isSuccess alanını kontrol edin.
  • 400: Gövde doğrulanamadı (zorunlu alan eksik, tip uyumsuz ya da JSON bozuk). Yanıt ASP.NET Core ValidationProblemDetails biçimindedir; errors alanı hangi alanın hatalı olduğunu gösterir.
  • 401: Authorization başlığı yok, token geçersiz ya da süresi dolmuş. Gövde boş döner; /Auth/login ile yeni token alın.
  • 500: Beklenmeyen sunucu hatası. Bu yanıt PascalCase alan adlarıyla döner (diğer yanıtlardan farklı olarak) ve null alanlar da yazılır.

200 yanıt alanları

  • data (object[]): Paketler.
    • data.id (integer<int64>): Paketin OMS kimliği. Paket bölme uçlarında yoldaki shipmentPackageId olarak kullanılır.
    • data.lines (object[]): Paketteki kalemler.
      • data.lines.id (integer<int64>): Paket kaleminin OMS kimliği. Adet bazlı bölmede orderLineId olarak kullanılır.
      • data.lines.sku (string): SKU.
      • data.lines.barcode (string): Barkod.
      • data.lines.dueDate (string<date-time>): Termin tarihi.
      • data.lines.currency (string): Para birimi.
      • data.lines.quantity (integer<int32>): Paketteki adet.
      • data.lines.itemLines (object[]): Kalemin adet bazlı satırları.
      • data.lines.listPrice (number<double>): Birim liste fiyatı.
      • data.lines.vendorSku (string): Satıcı SKU kodu.
      • data.lines.productName (string): Ürün adı.
      • data.lines.productSize (string): Beden.
      • data.lines.productColor (string): Renk.
      • data.lines.productPrice (number<double>): Birim satış fiyatı.
      • data.lines.lineSaleTotal (number<double>): Kalemin paketteki toplam satış tutarı.
      • data.lines.discountDetails (object[]): Kaleme uygulanan indirimler.
      • data.lines.productImageUrl (string): Ürün görseli.
    • data.status (string): Paketin güncel statüsü (bkz. OrderPackageStatus).
    • data.dueDate (string<date-time>): Termin tarihi.
    • data.parcels (object[]): Koliler.
      • data.parcels.cargoKey (string): Kargo anahtarı.
      • data.parcels.trackingURL (string): Takip bağlantısı.
      • data.parcels.cargoBarcode (string): Kargo barkodu.
      • data.parcels.orderPackage (integer<int64>): Paketin OMS kimliği.
      • data.parcels.trackingCode (string): Takip numarası.
      • data.parcels.parcelBarcode (string): Koli barkodu.
      • data.parcels.parcelOrderNo (integer<int32>): Koli sıra numarası.
      • data.parcels.carrierCompany (integer<int64>): Kargo firması kimliği.
    • data.cargoKey (string): Kargo anahtarı.
    • data.currency (string): Para birimi.
    • data.isFrozen (boolean): Paket dondurulmuş mu.
    • data.cargoCode (string): Kargo firması kodu.
    • data.cargoName (string): Kargo firması adı.
    • data.isSyncErp (boolean): ERP'ye aktarıldı mı.
    • data.orderDate (string<date-time>): Sipariş zamanı.
    • data.customerId (integer<int64>): Müşterinin OMS kimliği.
    • data.vendorCode (string): Satıcı kodu.
    • data.channelCode (string): Satış kanalı kodu.
    • data.channelName (string): Satış kanalı adı.
    • data.invoiceLink (string): Fatura bağlantısı.
    • data.orderNumber (string): Sipariş numarası.
    • data.cargoBarcode (string): Kargo barkodu.
    • data.clientStatus (string): SetPackageClientStatus/SetOrderClientStatus ile yazdığınız durum.
    • data.customerCode (string): Müşteri kodu.
    • data.customerEmail (string): Müşteri e-postası.
    • data.erpOrderNumber (string): ERP sipariş numarası.
    • data.invoiceAddress (object): Fatura adresi.
      • data.invoiceAddress.id (integer<int64>): Adresin OMS kimliği.
      • data.invoiceAddress.city (string): İl.
      • data.invoiceAddress.phone (string): Telefon.
      • data.invoiceAddress.company (string): Firma adı.
      • data.invoiceAddress.address1 (string): Adres satırı 1.
      • data.invoiceAddress.address2 (string): Adres satırı 2.
      • data.invoiceAddress.district (string): İlçe.
      • data.invoiceAddress.fullName (string): Ad soyad.
      • data.invoiceAddress.lastName (string): Soyad.
      • data.invoiceAddress.firstName (string): Ad.
      • data.invoiceAddress.taxNumber (string): Vergi numarası.
      • data.invoiceAddress.taxOffice (string): Vergi dairesi.
      • data.invoiceAddress.postalCode (string): Posta kodu.
      • data.invoiceAddress.countryCode (string): Ülke kodu.
      • data.invoiceAddress.fullAddress (string): Tam adres metni.
      • data.invoiceAddress.neighborhood (string): Mahalle.
    • data.totalListPrice (number<double>): Toplam liste fiyatı.
    • data.shipmentAddress (object): Teslimat adresi.
      • data.shipmentAddress.id (integer<int64>): Adresin OMS kimliği.
      • data.shipmentAddress.city (string): İl.
      • data.shipmentAddress.phone (string): Telefon.
      • data.shipmentAddress.company (string): Firma adı.
      • data.shipmentAddress.address1 (string): Adres satırı 1.
      • data.shipmentAddress.address2 (string): Adres satırı 2.
      • data.shipmentAddress.district (string): İlçe.
      • data.shipmentAddress.fullName (string): Ad soyad.
      • data.shipmentAddress.lastName (string): Soyad.
      • data.shipmentAddress.firstName (string): Ad.
      • data.shipmentAddress.postalCode (string): Posta kodu.
      • data.shipmentAddress.countryCode (string): Ülke kodu.
      • data.shipmentAddress.fullAddress (string): Tam adres metni.
      • data.shipmentAddress.neighborhood (string): Mahalle.
    • data.sourcePackageId (string): Paketin sizin gönderdiğiniz kimliği.
    • data.customerLastName (string): Müşteri soyadı.
    • data.lastModifiedDate (string<date-time>): Paketin son değişiklik zamanı.
    • data.packageHistories (object[]): Statü geçmişi.
      • data.packageHistories.status (string): Statü adı.
      • data.packageHistories.createdDate (string): Statünün oluştuğu zaman.
    • data.cargoTrackingLink (string): Kargo takip bağlantısı.
    • data.customerFirstName (string): Müşteri adı.
    • data.packageAttributes (object[]): Pakete ait ek alanlar.
      • data.packageAttributes.name (string): Ek alan adı.
      • data.packageAttributes.value (any): Ek alan değeri.
    • data.totalProductPrice (number<double>): Toplam satış fiyatı.
    • data.vendorCompanyName (string): Satıcı firma adı.
    • data.cargoTrackingNumber (string): Kargo takip numarası.
    • data.erpOrderCreatedDate (string<date-time>): ERP'de oluşma zamanı.
    • data.referenceSourcePackageId (string): Paket bölme/kısmi iptal ile oluştuysa kaynak paketin kimliği.
  • pageSize (integer<int32>): Sayfa boyutu.
  • isSuccess (boolean, zorunlu): Sorgu başarılıysa true. Sonuç yoksa false ve mesaj döner.
  • statusCode (string): Başarılı sorguda "200".
  • totalPages (integer<int32>): Toplam sayfa.
  • currentPage (integer<int32>): Dönen sayfa (0'dan başlar).
  • resultCount (integer<int32>): Bu sayfadaki kayıt sayısı.
  • errorMesssage (string): Hata mesajı. Yalnızca hata varsa döner.
  • totalResultCount (integer<int32>): Filtreye uyan toplam kayıt.