WMS / 3PL · API 1.0

חיבור למערכת המחסן

ממשק לבדיקת יתרות, יצירת הוראות הוצאה וקבלת סטטוסים. כל מפתח API משויך לבעל סחורה אחד.

חזרה למערכתהורדת OpenAPI JSON ↓
כל בקשת שינוי מחייבת Idempotency-Key ייחודי. בניסיון חוזר שולחים בדיוק אותו תוכן ואת אותו המפתח. בקשה עם אותו מפתח ותוכן אחר תחזיר 409. חשבונית בלינט אינה מעידה שהמוצר יצא מהמחסן.

תהליך לדוגמה

  1. בעל הסחורה יוצר הוראה דרך POST /api/orders.
  2. שולח למחסן באמצעות /submit ומשריין באמצעות /reserve.
  3. עובד המחסן מלקט /pick, מסמן /ready ומאשר /dispatch.
  4. האינטגרציה קוראת GET /api/documents/{id} או מקבלת shipment.dispatched.
Authorization: Bearer YOUR_OWNER_SCOPED_TOKEN
Idempotency-Key: external-order-2026-001
Content-Type: application/json

POST /api/orders
{
  "ownerId": 1, "warehouseId": 1,
  "externalNo": "WEB-1001", "customer": "לקוח לדוגמה",
  "delivery": "Shipping", "notes": "כתובת למשלוח",
  "lines": [{ "productId": 1, "quantity": 1 }]
}

Webhooks

האירועים receipt.approved, shipment.dispatched, order.cancelled ו־return.approved נשמרים בעסקת המלאי ונשלחים בנפרד. המסירה היא לפחות פעם אחת: המקבל חייב למנוע כפילויות באמצעות X-WMS-Event-Id.

X-WMS-Event-Id: 123
X-WMS-Timestamp: 1791590400
X-WMS-Signature: sha256=HEX_HMAC

HMAC-SHA256(secret, timestamp + "." + raw_request_body)

אמתו חתימה בהשוואה בזמן קבוע, דחו חותמת זמן שסטתה ביותר מחמש דקות ושמרו מזהי אירועים שכבר טופלו. החזירו 2xx רק לאחר שמירה. המערכת מנסה שוב עד שמונה פעמים עם השהיה עולה; כישלונות מוצגים במסך הניהול. לאחר תיקון יעד ניתן ליצור מנוי חדש; הפעלה חוזרת ידנית של משלוחים שנכשלו מחייבת מפעיל מורשה.

אין חיבור אמיתי ללינט. mock://local מדמה קבלה; mock://fail-once מדמה כישלון ראשון. משלוח לרשת חיצונית מחייב הפעלה מפורשת ורשימת מארחים בשרת. לקבלת הדמיית חשבונית: GET /api/integrations/linet/mock/{documentId}.

מסלולים ונתונים

מודלי קלט

שמות שדות בקלט הם camelCase. רשומות טבלאיות המוחזרות מהמסד משתמשות ב־PascalCase, כפי שמוצג בפלט בפועל. כל הזמנים הם UTC. כמויות הן יחידות שלמות. פירוט התקנה ואבטחה נמצא ב־README של הפרויקט.