תיעוד
API לשותפים
לשותפים מאושרים: צרו קודי הפעלה ל-Chart Premium עבור הלקוחות שלכם מהמערכות שלכם (CRM, אזור לקוחות, קליטה), וראו אילו נוצלו. על תוכנית השותפים.
אימות
צרו מפתח בעמוד השותף שלכם ושלחו אותו בכותרת Authorization. מפתחות נראים כמו mdp_pk_3f9a1c07de_…; אנחנו שומרים רק טביעת אצבע, כך שמפתח שאבד לא יוצג שוב: צרו מפתח חדש.
curl https://app.marketapi.app/partner/v1/account \
-H "Authorization: Bearer mdp_pk_YOUR_KEY"
החלפה בלי השבתה: החלפה יוצרת מפתח חדש ומשאירה את הישן פועל 24 שעות. הכניסו את המפתח החדש למערכות שלכם, ואז הישן יפוג מעצמו (או בטלו אותו מיד). לעולם אל תשימו מפתח בדף אינטרנט או באפליקציה: קראו ל-API מהשרת שלכם.
מגבלות: 120 בקשות בדקה לשותף; יותר מדי מפתחות שגויים מכתובת אחת נחסמים ל-10 דקות. שגיאות הן JSON: {"error": "…", "code": "invalid"} עם HTTP 400, 401, 405 או 429.
המושבים שלכם
GET /partner/v1/account
{"partner_id": "MP-7KQ3TA", "name": "Example Broker", "status": "active",
"seats": [{"plan": "pro", "name": "Pro", "days": 30, "left": 48, "trial": false, "expires_at": null}]}
כל מושב הוא קוד הפעלה לתוכנית ולמשך (30, 91, 182 או 365 ימים). קנו חבילות מושבים בעמוד השותף שלכם (30% הנחה מהמחיר הרגיל, חבילות של 10, 50, 250).
יצירת קודים
POST /partner/v1/codes עם גוף JSON:
| שדה | משמעות |
|---|---|
plan | pro או proplus |
months | 1, 3, 6 או 12 (משך המושב), או days |
count | כמה קודים (1–5000); אפשר להשמיט כשמספקים אסמכתאות |
customer_refs | אופציונלי: אסמכתא משלכם לכל קוד (למשל מספר החשבון של הלקוח), עד 120 תווים כל אחת. אנחנו שומרים אותה במיסוך (45•••68) עם טביעת אצבע מפתחית, כך שאפשר למצוא קוד לפי האסמכתא המלאה, אבל אנחנו לעולם לא שומרים אותה. |
expires_days | כמה זמן קוד שלא נוצל נשאר תקף (ברירת מחדל 365; מושבי ניסיון מסתיימים מוקדם יותר). קוד שלא נוצל ופג מחזיר את המושב שלו. |
batch | שם אופציונלי לזיהוי האצווה |
שלחו כותרת Idempotency-Key (כל טקסט ייחודי): אם הבקשה נשלחת שוב, תקבלו את אותם קודים במקום חדשים (למשך 24 שעות).
curl -X POST https://app.marketapi.app/partner/v1/codes \
-H "Authorization: Bearer mdp_pk_YOUR_KEY" -H "Content-Type: application/json" \
-H "Idempotency-Key: onboarding-45123468" \
-d '{"plan": "pro", "months": 1, "customer_refs": ["45123468"]}'
201 {"count": 1, "codes": [{"code": "K7QM-3XTP-9RWA-FD2H", "hint": "FD2H", "customer_ref": "45•••68",
"plan": "pro", "days": 30, "expires_at": "2027-10-17T08:00:00+00:00"}]}
הקודים מופיעים בתשובה פעם אחת בלבד. תנו לכל לקוח את הקוד שלו; הוא מזין אותו ב-https://app.marketapi.app/premium (מחובר) והתוכנית מתחילה מיד, או אחרי התוכנית שכבר יש לו.
אצוות גדולות: יותר מ-100 קודים נוצרים על ידי תור המשימות שלנו. התשובה היא 202 {"job": 812, "url": "/partner/v1/jobs/812"}; פנו לכתובת הזו עד ש-status יהיה done; הקודים מופיעים בתשובה הזו רק בפעם הראשונה.
GET /partner/v1/jobs/812
{"status": "queued", "position": 2, "eta_s": 4.0} → {"status": "done", "count": 2000, "codes": [ … ]}
חיפוש קודים
GET /partner/v1/codes?customer_ref=45123468&status=unused&limit=100&offset=0 — סטטוס: unused, redeemed או cancelled.
{"codes": [{"id": 9134, "hint": "FD2H", "customer_ref": "45•••68", "plan": "pro", "days": 30, "status": "redeemed",
"created_at": "…", "expires_at": "…", "redeemed_at": "…"}]}
ביטול קוד
POST /partner/v1/codes/9134/cancel — רק קודים שלא נוצלו; המושב מתפנה מיד.
אבטחה
- כל קריאה עוברת ב-HTTPS; מפתחות מושווים בזמן קבוע ורק טביעת האצבע המפתחית שלהם נשמרת.
- אנחנו שולחים דוא״ל לכתובת הקשר שלכם בכל פעם שמפתח נוצר או מוחלף.
- הקודים הם 16 תווים מתוך 32 סמלים (80 ביט), מוצגים פעם אחת, נשמרים רק כטביעת אצבע ומוגבלים ל-10 ניסיונות בשעה לחשבון בעת ההזנה.