תיעוד API
כתובת בסיס: https://api.cheapersal.co.il/api/v1
אימות
כל הבקשות דורשות מפתח API. העבירו אותו דרך הכותרת X-API-Key או פרמטר api_key.
פורמט תגובה
כל התגובות מגיעות במבנה הבא:
/chainsרשימת רשתות
מחזיר את כל רשתות הסופרמרקט עם מספרי סניפים ומטא-דאטה.
דוגמת בקשה
דוגמת תגובה
/chains/:chainIdפרטי רשת
מחזיר פרטים של רשת סופרמרקט בודדת.
דוגמת בקשה
דוגמת תגובה
/chains/:chainId/branchesסניפי רשת
מחזיר את כל הסניפים של רשת מסוימת.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| city | string | לא | סינון לפי שם עיר |
| limit | integer | לא | מקסימום תוצאות (ברירת מחדל 50, מקסימום 200) |
| skip | integer | לא | דילוג לעימוד |
דוגמת בקשה
דוגמת תגובה
/branchesחיפוש סניפים
חיפוש סניפים מכל הרשתות. תומך בסינון לפי עיר, רשת ושאילתות גיאוגרפיות.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| city | string | לא | סינון לפי שם עיר |
| chainId | string | לא | סינון לפי מזהה רשת (מ-/chains) |
| online | boolean | לא | סינון חנויות אונליין/פיזיות |
| lat | number | לא | קו רוחב לחיפוש גיאוגרפי (דורש lon) |
| lon | number | לא | קו אורך לחיפוש גיאוגרפי (דורש lat) |
| maxDistance | integer | לא | מרחק מקסימלי במטרים (ברירת מחדל 10,000, מקסימום 50,000) |
| limit | integer | לא | מקסימום תוצאות (ברירת מחדל 50, מקסימום 200) |
| skip | integer | לא | דילוג לעימוד |
דוגמת בקשה
דוגמת תגובה
/branches/:branchIdפרטי סניף
מחזיר פרטים של סניף בודד.
דוגמת בקשה
דוגמת תגובה
/branches/:branchId/productsמוצרים בסניף
מחזיר רשימת מוצרים בסניף מסוים עם מחירים, ממוינים לפי פופולריות.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| category | string | לא | סינון לפי slug קטגוריה |
| limit | integer | לא | מקסימום תוצאות (ברירת מחדל 50, מקסימום 200) |
| skip | integer | לא | דילוג לעימוד |
דוגמת בקשה
דוגמת תגובה
/products/:barcodeמידע על מוצר
מחזיר מידע על מוצר לפי ברקוד (שם, יצרן, תמונה, קטגוריה).
דוגמת בקשה
דוגמת תגובה
/products/:barcode/pricesהשוואת מחירים
נקודת הקצה המרכזית. מחזיר מחירים של מוצר לפי ברקוד מכל הרשתות והסניפים, כולל מידע על מבצעים וסיכום סטטיסטי.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| city | string | לא | סינון לפי שם עיר |
| branchId | string | לא | סינון לסניף בודד |
| lat | number | לא | קו רוחב לחיפוש גיאוגרפי |
| lon | number | לא | קו אורך לחיפוש גיאוגרפי |
| maxDistance | integer | לא | מרחק מקסימלי במטרים |
| online | string | לא | הגדירו 'true' לחנויות אונליין בלבד |
דוגמת בקשה
דוגמת תגובה
/products/:barcode/price-historyהיסטוריית מחירים
מחזיר היסטוריית מחירים יומית של מוצר בסניף מסוים.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| branchId | string | כן | מזהה סניף (חובה) |
דוגמת בקשה
דוגמת תגובה
/promosמבצעים בסניף
מחזיר מבצעים פעילים בסניף מסוים.
פרמטרים
| שם | סוג | חובה | תיאור |
|---|---|---|---|
| branchId | string | כן | מזהה סניף (חובה) |
| category | string | לא | סינון לפי slug קטגוריה |
| sort | string | לא | 'smart' לדירוג חכם, ברירת מחדל לפי אחוז הנחה |
| limit | integer | לא | מקסימום תוצאות (ברירת מחדל 50, מקסימום 200) |
| skip | integer | לא | דילוג לעימוד |
דוגמת בקשה
דוגמת תגובה
/promos/product/:barcodeמבצעים למוצר
מחזיר את כל המבצעים הפעילים לברקוד מסוים.
דוגמת בקשה
דוגמת תגובה
/citiesרשימת ערים
מחזיר את כל הערים עם מספרי חנויות ורשתות.
דוגמת בקשה
דוגמת תגובה
/categoriesרשימת קטגוריות
מחזיר את עץ הקטגוריות עם מספרי מוצרים.
דוגמת בקשה
דוגמת תגובה
קודי שגיאה
| HTTP | קוד | תיאור |
|---|---|---|
| 401 | MISSING_API_KEY | לא סופק מפתח API |
| 401 | INVALID_API_KEY | מפתח לא נמצא או בפורמט שגוי |
| 403 | KEY_REVOKED | המפתח בוטל |
| 403 | IP_NOT_ALLOWED | בקשה מכתובת IP לא מורשית |
| 429 | DAILY_LIMIT_EXCEEDED | מכסה יומית הגיעה למקסימום |
| 429 | MONTHLY_LIMIT_EXCEEDED | מכסה חודשית הגיעה למקסימום |
| 429 | RATE_LIMIT_EXCEEDED | יותר מדי בקשות בדקה |
| 404 | NOT_FOUND | המשאב לא נמצא |
| 400 | MISSING_PARAM | פרמטר חובה חסר |
מגבלות קצב
מגבלות הקצב מוחלות לפי מפתח API. כשמגבלה נחרגת, ה-API מחזיר סטטוס 429.
| יומי | חודשי | לדקה |
|---|---|---|
| 100 | 3,000 | 10 |
מגבלות יומיות מתאפסות בחצות UTC. מגבלות חודשיות מתאפסות ב-1 לכל חודש. צריכים מגבלות גבוהות יותר? צרו קשר.