Değişiklik günlüğü
Şimdiye kadarki tüm değişiklikler v1 içindedir. Neyin değişebileceği ve nasıl duyurulduğu için bkz. Sürümleme.
2026-10-19
Bölüm başlığı “2026-10-19”Idempotency anahtarı taşıyan bir yazma asla korumasız çalışmaz. v1 içinde, yeni bir retle.
- Günde 1.000 yazmadan sonra bir anahtarın yazmaları yanıtları saklanmadan çalışıyordu; zaman aşımından sonraki tekrar yeniden çalışıyordu (bir yükleme ikinci bir kopya bırakıyordu). Artık her anahtarın UTC günü başına 5.000 yeni idempotency anahtarı hakkı var; hak dolunca yazma çağrısı UTC gece yarısına kadar süren bir
Retry-Afterile429Idempotency.DailyLimitalır, hiçbir şey çalışmaz. Yanıtlanmış anahtarların tekrarı sayılmaz. Bkz. Hız sınırları. - 256 KB’tan büyük ya da anahtarın yanıtlar için günlük saklama hakkı dolduktan sonra verilen bir yanıt durum koduyla saklanır: tekrar yeniden çalışmaz, gövdesiz olarak
X-Idempotency-Replayed: trueveX-Idempotency-Body-Omitted: trueile yanıtlanır. Bkz. Idempotency.
2026-10-16
Bölüm başlığı “2026-10-16”Maliyet toplamları yalnız anlaşılan maliyetleri sayar. v1 içinde ekleme niteliğinde, bir anlam değişikliğiyle.
GET /deals/{id}/costsyanıtındaadditionalTotalvegrandTotalyalnız anlaşılan ek maliyetleri sayar; uygulamadaki operasyon hesap özeti de 2026-10-16’dan beri böyle sayar. Henüz anlaşılmamış beyan edilen maliyetler artık bu toplamlara girmez.- Her toplamda yeni alan:
declaredTotal, o para birimindeki henüz anlaşılmamış beyan edilen maliyetler; çevrilmez ve genel toplama hiçbir zaman girmez. Hiç yoksa ve deneme alanında0.00olur. statusdeğeriApprovedolan ya da gönderenin kendi girdiği (recordedByShipper) satır anlaşılmış sayılır: onu gönderen öder. Taşıyıcının girdiğiDeclaredsatırdeclaredTotaliçindedir.- Entegrasyonunuz beyan edilen maliyetleri toplamlardan alıyorsa
declaredTotalalanını okuyun ya da taşıyıcının girdiğiDeclaredsatırları toplayın.
2026-10-13
Bölüm başlığı “2026-10-13”Referans numaraları. Tümü v1 içinde ve ekleme niteliğinde.
- Her sevkiyat talebinin, teklifin, anlaşmanın ve operasyonun kimliğinin yanında bir referans numarası vardır:
REQ-048213,QTE-731905,DEAL-206447,SHPT-012618. Daha önce açılmış kayıtların da numarası vardır. Bkz. Referans numaraları. - Okumalar adını verdikleri kayıtların numaralarını taşır: talep durumuna
requestNumber,quoteNumber,dealNumberveshipmentNumber; anlaşmayadealNumber,requestNumber,quoteNumberveshipmentNumber; operasyonashipmentNumbervedealNumber; belgeler, maliyetler ve yükleme yanıtınadealNumber; oluşturma yanıtınarequestNumbereklendi. - Kimlik rotalarının kapsamı ve kurallarıyla numarayla okuma:
GET /shipment-requests/by-number/{number},GET /deals/by-number/{number}veGET /operations/by-number/{number}. Büyük küçük harf fark etmez, önek isteğe bağlıdır; başka bir türün öneki400Integration.InvalidBusinessNumber, şirketinizin okuyamayacağı bir numara404döner. - Webhook’lar: her teslimatın
dataalanınarequestNumber,quoteNumber,dealNumberveshipmentNumbereklendi; kayıt henüz yoksa her birinullolur.request.bid_receivedolayındaquoteNumbergelen teklifin numarasıdır. - Deneme alanı deneme kayıtlarını aynı biçimde numaralar; hiçbir zaman canlı bir kaydın numarasıyla.
2026-10-13
Bölüm başlığı “2026-10-13”Entegrasyon API’si her planda. Rotalarda, alanlarda ve kodlarda değişiklik yok.
- API, Exchange dahil her planda açıktır: 1 canlı ve 1 test entegrasyonu, anahtar başına dakikada 60 çağrı ve şirket başına günde 50 belge yükleme (250 MB). Enterprise bunları 5 canlı ve 5 test entegrasyonuna, anahtar başına dakikada 300 çağrıya ve günde 200 yüklemeye (1 GiB) çıkarır. Bkz. Erişim.
- Hız sınırı ve yükleme hakkı her çağrıda şirketinizin planına göre uygulanır.
- Güvenlik özellikleri (OAuth, IP izin listesi, bitiş ve yenileme, iki adımlı doğrulama, çağrı kaydı ve denetim kaydı) her planda aynıdır.
2026-10-13
Bölüm başlığı “2026-10-13”Wave 3 ek düzeltmeleri. Tümü v1 içinde.
X-Idempotency-Keybir isteği yazılışıyla değil içeriğiyle karşılaştırır: aynı isteği başka alan sırası, alan adı harfi, sayı yazılışı ya da metadata anahtar sırasıyla yeniden kuran bir tekrar,422Integration.IdempotencyKeyReusedyerine ilk yanıtı alır. Yüklemede kategori büyük küçük harfe bakılmadan, dosya türü parametreleri olmadan karşılaştırılır.- İptal, bekleyen teklifleri ancak iptal kaydedildikten sonra düşürür ve taşıyıcılara bildirir. Güncelleme, taşıyıcılara ancak her parçası yazıldıktan sonra bildirilir.
- Oluşturma gövdesinin her metni (notlar, adresler, iletişim bilgileri, yükün tanımı), güncellemedeki gibi,
U+0000gibi bir denetim karakterini alanı gösteren400Integration.InvalidBodyile reddeder. - DOCX ve XLSX, Office’in okuduğu gibi, paketin ana parçasından tanınır; kök ilişkileri olmayan ya da 5.000’den fazla girdisi olan bir ZIP belge değildir. XLSX diye gönderilen bir Word belgesi ya da DOCX diye gönderilen bir çalışma kitabı olduğu şey olarak saklanır:
contentTypevefileNameuzantısı gerçek türe uyar (list.xlsx,list.docxolur).415dosyanın ne olduğunu söyler. - Güncellemede bozuk bir surrogate kaçışı (
"\ud800"gibi) alanı gösteren400Integration.InvalidBodyya da metadata anahtarını gösterenIntegration.MetadataInvaliddöner.
2026-10-13
Bölüm başlığı “2026-10-13”Güncelleme, iptal, metadata ve belge yükleme. Tümü v1 içinde, ekleme olarak.
PATCH /shipment-requests/{id}talebi uygulamanın sahibine izin verdiği yerde günceller (ilanı Published iken, kendi kayıtlarınızı her durumda); en fazla 64 KB’lık bir JSON merge patch olarak, tek bir işlemde. Bkz. Güncelleme ve iptal.requests:writeartık API’den açılan taleplerin güncellemesini ve iptalini de kapsar. Uygulamada açılmış talep API’den okunur, ama yalnız uygulamada değiştirilir ve iptal edilir (409Integration.RequestNotCreatedViaApi).POST /shipment-requests/{id}/canceltalebi verilmeden önce iptal eder; iki kez iptal iptal edilmiş talebi döner, verilmiş talepdealIdile409Integration.RequestAwardeddöner.- Talep okumaları
ETagtaşır; güncelleme ve iptal isteğe bağlıIf-Matchalır ve talep arada değiştiyse412döner. Karşılaştırma talebin kilidi altında yapılır; aynı etiketi gönderen iki yazardan ikisi birden kazanamaz. - Talepte
metadata: en fazla 20 kendi alanınız; oluşturmada verilir, güncellemede birleşir, yalnız şirketinizce görülür. Bkz. Metadata. POST /deals/{id}/documentsuygulamanın yükleme kuralları ve virüs taramasıyla belge yükler; şirket başına günlük hak vardır. Kategori, uygulamanın anlaşmanın aşamasında tarafınıza sunduğuna uyar (400Document.CategoryNotOffered); kullanımdan kalkan kategoriler veAdditionalCostReceiptalınmaz. DOCX ya da XLSX bir Word ya da Excel paketi olmalıdır. Yeni kapsam:documents:write. Bkz. Belge yükleme.- Talep durum gövdesine
metadata,revisionvecancellationReasoneklendi. - Webhook’lar: yeni olay
request.updated, her güncellemede bir tane, değişen her şeyi sayarak;request.cancelledreasontaşır; talep sahibine giden olaylar talebinmetadatadeğerini taşır. X-Idempotency-Keyher yazmada zorunlu (oluşturma, güncelleme, iptal, yükleme). Aynı anahtar başka bir istekte422Integration.IdempotencyKeyReuseddöner.412ve429hiçbir zaman tekrar edilmez; aynı anahtarla tekrar gerçekten çalışır.- Denetim karakteri (
U+0000gibi) içeren metin, alanda da metadata’da da adıyla reddedilir. - Deneme alanı güncelleme, iptal ve yükleme alır; yüklenen dosya denetlenir ve taranır, sonra yalnız kaydı tutulur.
2026-10-12
Bölüm başlığı “2026-10-12”Entegrasyon API’si v1.
- Taşıma talepleri: oluşturma (
POST /shipment-requests; zorunluX-Idempotency-Keyve tekilexternalReferenceile), kimlikle okuma veexternalReferenceile bulma. - Anlaşmalar: bir talepten doğan anlaşmaları listeleme; anlaşmayı, belgelerini (temiz dosyalar için 5 dakikalık indirme bağlantısıyla), operasyonunu (kilometre taşları ve teslim tahmini) ve maliyetlerini okuma.
- Anahtarın kendisiyle ya da 15 dakikalık OAuth 2.0 erişim belirteciyle (client credentials) kimlik doğrulama; “Yalnız OAuth” ayarı, kapsamlar, hatırlatmalı 12 aylık bitiş, 7 günlük geçişle yenileme ve IP izin listesi.
- Her anahtar entegrasyonun kendi servis kimliğiyle çalışır.
- 11 olay türü ve
webhook.testiçin imzalı webhook’lar; yeniden deneme, otomatik kapanma, yeniden gönderim ve sır yenileme. - Deneme alanıyla test anahtarları (
qk_test_...) ve test talebini adım adım ilerletenPOST /sandbox/shipment-requests/{id}/advance. - Self servis: şirketin Sahip ve Yöneticileri Ayarlar > Entegrasyonlar altında entegrasyon oluşturur, anahtar yeniler ve iptal eder, webhook’ları yönetir.
- Tekrarlanan
externalReferenceiçin dönen409, mevcut talebin durumunurequestStatusalanında verir;statusyalnız HTTP durum kodudur.
