Loader4D API
Yükleme optimizasyonunu kendi ERP, WMS veya nakliye yönetim sisteminizin içinden çağırın. Tarayıcıda çalışan yerleştirme motorunun aynısı, tek bir HTTP isteğiyle.
Neler yapabilirsiniz
Alanlarınızı ve yük listenizi JSON olarak gönderin, yerleşim planını her parçanın koordinatıyla birlikte geri alın. Aks yükleri ve yerleştirilemeyen kalemler de yanıtın içinde.
Optimizasyon saniyeler sürer. Yanıtı beklerken kopan bir bağlantı senkron tasarımda sonucu yok eder; burada iş kimliğiyle geri dönüp alırsınız ve aynı hesabı iki kez ödemezsiniz.
Kredi parça başına değil bantlı hesaplanır. Motor küçük gönderiye de büyüğe de aynı arama bütçesini harcadığı için parça başına ücret küçük çağrıları cezalandırır ve faturanızı tahmin edilemez kılardı.
Test anahtarları gerçek sonucu döndürür ve krediden düşmez; ayda 25 çağrı ile sınırlıdır. Entegrasyonunuz bitene kadar deneyin; canlıya geçerken yalnızca anahtarı değiştirirsiniz.
Uç noktalar
Kimlik doğrulama, anahtarınızı taşıyan bir bearer başlığıyla yapılır. Anahtar hiçbir zaman adres satırında kabul edilmez.
Authorization: Bearer l4d_live_...
| Çağrı | Ne yapar |
|---|---|
| POST /api/v1/pack | Yerleşim işi açar; 202 yanıtı ve bir iş kimliği döner. |
| GET /api/v1/jobs/{id} | İşin durumunu, bittiğinde de sonucunu verir. |
| GET /api/v1/usage | Dönem kotanızı ve kalan kredinizi verir. |
Örnek istek
Ölçüler santimetre, ağırlıklar kilogramdır. İstek başına birim ayarı yoktur; dönüşümü kendi tarafınızda yapın. Inch cinsinden gönderilen bir istek, on kat uzun bir tır yükler.
POST /api/v1/pack
Authorization: Bearer l4d_test_...
Content-Type: application/json
Idempotency-Key: 7f3c1a9e4b6d4c2f
{
"reference": "SO-2026-4417",
"spaces": [
{ "id": "sp1", "name": "40HC", "type": "container",
"length": 1200, "width": 235, "height": 269,
"max_weight": 26000, "available": 2 }
],
"items": [
{ "id": "A1", "name": "Karton", "length": 120, "width": 100, "height": 40,
"weight": 8, "quantity": 24, "group": "Siparis-1",
"constraints": { "no_tilt": true } },
{ "id": "B1", "name": "Varil", "shape": "cylinder",
"diameter": 58, "length": 88, "weight": 190, "quantity": 12,
"constraints": { "floor_only": true } }
],
"strategy": { "group_items": true, "balance_load": true }
}
Yanıt hemen döner; sonucu almak için iş kimliğini yoklarsınız.
HTTP/1.1 202 Accepted
Location: /api/v1/jobs/ba7189d3b1824da3806ca3ee973b2294
{ "id": "ba7189d3...", "status": "queued", "progress": 0,
"reference": "SO-2026-4417", "credits": 1 }
İş bittiğinde her parçanın yeri koordinatıyla gelir. Başlangıç noktası alanın ön-sol-alt köşesidir ve verilen değer parçanın merkezi değil, o köşesidir.
{ "id": "ba7189d3...", "status": "succeeded", "credits": 1,
"result": {
"summary": { "spaces_used": 1, "pieces_requested": 36,
"pieces_packed": 36, "weight": 2472,
"volume_utilization": 0.7431 },
"spaces": [
{ "space_id": "sp1", "name": "40HC",
"placements": [
{ "item_id": "A1", "sequence": 1,
"x": 0, "y": 0, "z": 0,
"length": 120, "width": 100, "height": 40, "weight": 8 }
],
"axle_loads": [] }
],
"unpacked": []
} }
Alanların ve kısıtların tam listesi, hata kodları ve OpenAPI dosyası için API referansına bakın
Kredi ve sınırlar
Kredi, iş kabul edilirken düşülür — bittiğinde değil. Aksi hâlde aynı anda gelen yüz çağrının hepsi, biri bile sayılmadan kota denetiminden geçerdi.
| İstekteki toplam parça | Kredi |
|---|---|
| 1 – 100 | 1 |
| 101 – 1 000 | 5 |
| 1 001 – 10 000 | 25 |
| 10 001 ve üzeri | 100 |
- İstek başına en fazla 50 alan.
- İstek başına en fazla 2 000 yük satırı.
- İstek başına en fazla 20 000 toplam parça.
- Ekip başına en fazla 10 etkin anahtar.
Bu sınırlar, tek bir çağrının servisi dakikalarca meşgul etmesini önlemek için var. İş yükünüz daha fazlasını gerektiriyorsa bölün ya da bize yazın.
Sık sorulanlar
Hangi dille entegre edebilirim?
HTTP isteği atabilen her dille. Ayrıca OpenAPI 3.0 dosyamızı indirip çoğu dilde tipli bir istemci üretebilirsiniz; bu, saatler süren bir entegrasyonla günler sürenin arasındaki fark.
Ücretlendirme nasıl işliyor?
API ücretli planlara dahildir; canlı çağrı için kredi paketi alırsınız ve paket her dönem yenilenir. Kullanılmayan krediler bir sonraki döneme devretmez. Denemek için kredi gerekmez: test anahtarı ayda 25 çağrı hakkı verir.
Anahtarlarım nasıl korunuyor?
Anahtar yalnızca oluşturulurken bir kez gösterilir; veritabanında yalnızca şifreli özeti tutulur. Anahtarlar kişiye değil ekibe aittir — kuran kişi ekipten ayrılsa da entegrasyonunuz çalışmaya devam eder. Her entegrasyona ayrı anahtar verin; böylece sızma şüphesinde yalnızca onu iptal edersiniz ve diğerleri durmaz.
Aynı isteği yanlışlıkla iki kez gönderirsem?
Her mantıksal istek için ürettiğiniz bir Idempotency-Key başlığı gönderin. Aynı anahtar ve aynı gövdeyle gelen tekrar, ikinci bir iş açmak yerine ilk işi döndürür. Aynı anahtarı farklı bir gövdeyle kullanırsanız istek reddedilir: sessizce eski yanıtı vermek, sizi hiç kuyruğa girmemiş bir işi beklerken bırakırdı.
Yarıda kalan iş kaldığı yerden devam eder mi?
Hayır, ve bunu açıkça söylemek doğru. Arama tek parça bir hesaptır ve ara durumu saklanmaz; başarısız bir iş baştan çalışır. İş kimliğinin kazancı sürekliliğin kendisi değil, sonucun kaybolmamasıdır.
Sonuçları arayüzde de görebilir miyim?
API ile açılan işler bağımsızdır ve proje listenize eklenmez; sonuç doğrudan yanıtta döner. API çağrıları koltuk değil kredi harcar, dolayısıyla arayüzü kullanan ekip üyelerinizin koltuklarını etkilemez.