Affilcore

API למפתחים

ממשק קריאה בלבד. הוא מחזיר בדיוק את מה שבעל המפתח רואה במסכים שלו — אותן שורות, מאותו מסד נתונים, תחת אותן מדיניות הרשאה. אין כאן פעולה שמשנה משהו.

OpenAPI 3.1יצירת מפתח

תוספת בתשלום

גישת API היא תוספת בתשלום, לחנויות ולשותפים כאחד. הדשבורד וייצוא ה-CSV נשארים חינמיים תמיד — כל קליק, כל המרה וכל עמלה נראים ונשמרים כקובץ בלי לשלם. מה שנוסף הוא הצינור האוטומטי.

עדיין אין חבילות מוגדרות. דברו איתנו ונתאים. עד שההפעלה נעשית, מפתח קיים מחזיר רשימה ריקה — לא שגיאה.

אימות

כל בקשה נושאת מפתח בכותרת Authorization: Bearer afp_live_…. המפתח נוצר במסך החשבון ומוצג פעם אחת בלבד — אצלנו נשמר ממנו רק גיבוב, ולכן גם לנו אין דרך להראות אותו שוב.

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

הסימון בזמן היצירה רק מצמצם. הוא לא מרחיב כלום: משאב שסומן למי שלא אמור לראות אותו יחזיר רשימה ריקה, לעולם לא נתונים של מישהו אחר.

דוגמה

curl -H "Authorization: Bearer $API_KEY" \
  "https://affilcore.com/api/v1/store-orders?days=30&limit=100"

התשובה היא { data: [...], meta: { resource, count, limit, from, to } }.count הוא מספר השורות בתשובה הזו, לא הסך הכול.

פרמטרים

  • from ו-to — טווח כולל, בפורמט yyyy-MM-dd. שניהם ביחד, אחרת הם מתעלמים.
  • days — 7, 30 או 90 ימים אחורה כולל היום. ברירת המחדל: 30.
  • limit — בין 1 ל-1000, ברירת מחדל 100. ערך מחוץ לטווח נחתך ולא נדחה.

בקשה חריגה לא מחזירה שגיאה אלא נופלת לברירת המחדל: מחרוזת שאילתה שנערכה ביד לא אמורה להפיל אינטגרציה.

מגבלת קצב

120 בקשות לדקה, נספרות לפי אדם ולא לפי מפתח — כך ששני מפתחות של אותו אדם חולקים את אותו מכסה. חריגה מחזירה 429 עם Retry-After.

המשאבים

חמישה, והם בדיוק אותם משאבים שאפשר להוריד כקובץ CSV מהמסכים. רשימת העמודות נבחרה אחת-אחת: מזהים פסבדונימיים ונתונים שאיש לא ביקש פשוט לא יוצאים מכאן.

GET /api/v1/affiliate-sales

המרות

למי: שותף · מסונן לפי occurred_at

  • occurred_atתאריך ושעה (ISO 8601)מתי
  • store_nameטקסטחנות
  • order_idטקסטמספר הזמנה
  • program_nameטקסטקמפיין
  • event_typeטקסט — purchase | lead | signup | trial | subscription | renewal | booking | installסוג
  • totalמספר עשרוניסכום ההזמנה
  • refunded_amountמספר עשרוניזיכוי ללקוח
  • currencyטקסטמטבע
  • attribution_reasonטקסטשויך לפי
  • coupon_codeטקסטקוד קופון
  • commission_amountמספר עשרוניעמלה
  • commission_adjustmentsמספר עשרוניהתאמות לעמלה
  • commission_statusטקסט — pending | approved | rejected | reversed | paidמצב העמלה

GET /api/v1/affiliate-commissions

לוח-שחרור

למי: שותף · ללא סינון תאריכים

  • release_onתאריך (yyyy-MM-dd)תאריך שחרור
  • kindטקסטמה יקרה
  • commissionsמספר שלםמספר עמלות
  • amountמספר עשרוניסכום

GET /api/v1/store-orders

הזמנות

למי: בעל חנות · מפעיל · מסונן לפי occurred_at

  • occurred_atתאריך ושעה (ISO 8601)מתי
  • order_idטקסטמספר הזמנה
  • totalמספר עשרוניסכום
  • currencyטקסטמטבע
  • refunded_amountמספר עשרוניזיכוי ללקוח
  • affiliate_nameטקסטשותף
  • program_nameטקסטקמפיין
  • coupon_codeטקסטקוד קופון
  • attribution_reasonטקסטשויך לפי
  • commission_amountמספר עשרוניעמלה
  • commission_adjustmentsמספר עשרוניתיקונים
  • commission_statusטקסטמצב העמלה

GET /api/v1/store-partners

שותפים

למי: בעל חנות · מפעיל · ללא סינון תאריכים

  • display_nameטקסטשותף
  • ref_codeטקסטקוד
  • affiliate_statusטקסט — pending | approved | rejected | paused | terminatedמצב
  • clicksמספר שלםקליקים
  • ordersמספר שלםהזמנות
  • revenueמספר עשרונימחזור
  • commission_pendingמספר עשרוניעמלה בהמתנה
  • commission_approvedמספר עשרוניעמלה מאושרת
  • commission_paidמספר עשרוניעמלה ששולמה

GET /api/v1/operator-commissions

עמלות

למי: מפעיל · מסונן לפי created_at

  • order_idטקסטמספר הזמנה
  • store_nameטקסטחנות
  • affiliate_nameטקסטשותף
  • affiliate_refטקסטקוד שותף
  • amountמספר עשרוניסכום
  • adjustmentsמספר עשרוניתיקונים
  • currencyטקסטמטבע
  • statusטקסט — pending | approved | rejected | reversed | paidסטטוס
  • locked_untilתאריך ושעה (ISO 8601)משוחררת ב

מה אין כאן, בכוונה

אין postback ואין webhook יוצא. הפלטפורמה לא שולחת נתונים של אף אחד ליעד חיצוני מיוזמתה — מי שרוצה נתונים מבקש אותם. זו החלטה על מה מותר לזרום החוצה, לא מגבלה טכנית.

אין גם כתיבה דרך ה-API. מדידה נכנסת דרך הפיקסל והוובהוקים, ששומרים על הפרדה בין שתי שכבות המדידה; פעולה שמשנה כסף נעשית במסך, עם מי שאחראי עליה מחובר.

שאלה על אינטגרציה