תוכניות של תעריפי רכישה באמצעות ה-API

אתם צופים במסמכי העזרה של Apigee Edge.
לעיון במאמרי העזרה של Apigee X.
מידע

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

רכישה של תוכנית תעריפים שפורסמה באמצעות ה-API

לאחר פרסום של תוכנית תמחור ותשלומים, מפתח או חברה יכולים לרכוש אותה (או "לאשר") אותה על ידי שליחת בקשת POST אל /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans. כאשר {org_name} הוא שם הארגון ו-{developer_or_company_id} הוא מזהה המפתח או החברה.

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

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

שם תיאור ברירת מחדל חובה?
startDate

התאריך שבו מתחילה תוכנית התמחור. לדוגמה: 2017-03-24.

לא רלוונטי כן
endDate

התאריך שבו מסתיים מחיר תוכנית השירות. לדוגמה: 2017-09-24.

תוכנית התעריפים תהיה בתוקף עד סוף היום בתאריך שצוין. לדוגמה, אם רוצים שהתוקף של תוכנית התמחור יפוג ב-1 בדצמבר 2017, צריך להגדיר את הערך של endDate בתור 2017-11-30. במקרה כזה, התוקף של תוכנית התמחור יפוג בסוף היום ב-30 בנובמבר 2017, וכל הבקשות שיוגשו ב-1 בדצמבר 2017 ייחסמו.

לא רלוונטי לא
developer

נכס id שמגדיר את המזהה של המפתח או החברה שרוכשים את תוכנית התעריפים.

לא רלוונטי כן
quotaTarget

מספר העסקאות המותרות למפתח האפליקציה. אפשר להגדיר אם ומתי יישלחו התראות לפי האחוז ממספר היעד שהושג, למשל 90%, 100% או 150%. עסקאות נוספות לא חסומות אחרי שמגיעים למספר היעד.

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

0 לא
ratePlan

המאפיין id שמגדיר את המזהה של תוכנית התמחור.

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

לא רלוונטי כן
suppressWarning

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

  • true – המונטיזציה תפסיק את כל תוכניות התמחור שנרכשו על ידי המפתח לחבילות API שמכילות את מוצרי ה-API שנמצאים בהתנגשות. לאחר מכן, היא רוכשת חבילת API חדשה למפתח.
  • false – אם יש חפיפה בין תוכניות התמחור, מתקבלת הודעת שגיאה.
לא רלוונטי לא
waveTerminationCharge

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

  • true – צריך לוותר על עמלת הסיום כשתוכנית תמחור ותשלומים פעילה מסתיימת כחלק מהפעלת תוכנית התמחור החדשה.
  • false – אין לוותר על עמלת הסיום כשתוכנית תמחור ותשלומים פעילה מסתיימת כחלק מהפעלת תוכנית תמחור ותשלומים חדשה.
לא רלוונטי לא

לדוגמה, הבקשה הבאה רוכשת את תוכנית התמחור והתשלומים של location_&_messaging עבור המפתח שצוין:

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "startDate":"2017-08-30",
   "ratePlan":{
     "id":"location_&_messaging"
   },
   "suppressWarning":false
  }'

בדוגמה הזו, המאפיין suppressWarning מוגדר לערך false. במקרה כזה, תופיע שגיאה במקרה של התנגשויות. לדוגמה, אם המפתח מנסה לרכוש תוכנית תעריפים שחופפת לתוכנית תעריפים אחרת שכבר נרכש, תופיע הודעת שגיאה. כך אפליקציה שמספקת ממשק משתמש למונטיזציה יכולה ליירט את השגיאה ולהציג למפתח את המוצרים שנמצאים בהתנגשות לצורך אישור (לפי הצורך). אם המדיניות suppressWarning מוגדרת לערך true, המונטיזציה תעצור את כל תוכניות התמחור והתשלומים שנרכשו שהמפתח צריך לרכוש לחבילות API שמכילות את המוצרים המתנגשים. לאחר מכן, הוא רוכש חבילת API חדשה למפתח.

הבקשה הבאה רוכשת תוכנית עם שיעור התראות שניתן לשינוי ומגדירה את מספר העסקאות היעד ל-4,000.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/5cTWgdUvdr6JW3xU/developer-rateplans" \
  -X POST \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "developer":{
     "id":"5cTWgdUvdr6JW3xU"
   },
   "ratePlan":{
     "id":"adjustable-notification-plan"
   },
   "startDate": "2017-03-24",
   "quotaTarget": 4000,
   "suppressWarning":false
  }'

בכל אחת מהדוגמאות שלמעלה, אם תופיע הודעת השגיאה הבאה:

Developer legal name not specified. 

לאחר מכן צריך להגדיר את מאפייני המונטיזציה MINT_DEVELOPER_ADDRESS ו-MINT_DEVELOPER_LEGAL_NAME, ואז לחזור על קריאת ה-API.

תפוגת התוקף של תוכנית תמחור שרכש מפתח באמצעות ה-API

כדי לסיים את התוקף (או לבטל) של תוכנית תמחור שנרכשה על ידי מפתח, מעדכנים את פרטי תוכנית התמחור שנרכשה ומציינים את המאפיין endDate בגוף הבקשה בבקשת PUT למשאב /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id}.

תוכנית התמחור תיכנס לתוקף עד סוף היום בתאריך הסיום שצוין. לדוגמה, אם רוצים שתוקף תוכנית התמחור והתשלומים יפוג ב-1 בדצמבר 2017, צריך להגדיר את הערך של endDate לערך 2017-11-30. במקרה כזה, תוקף תוכנית התעריפים יפוג בסוף היום ב-30 בנובמבר 2017. כל הבקשות ב-1 בדצמבר 2017 ייחסמו.

הערך של {developer_rateplan_id} מוחזר בתגובה כשרוכשים את תוכנית התמחור שפורסמה.

לדוגמה:

{
  "created": "2017-03-31 18:59:54",
  "developer": {
    ...
  },
  "id": "b1c600b8-f871-496d-8173-12b9950d6ab1",
  "quotaTarget": 3000,
  "ratePlan": {
    ...
  },
  "startDate": "2017-03-31 00:00:00",
  "updated": "2017-03-31 18:59:54",
  "waiveTerminationCharge": false
}

לחלופין, אפשר לקבל את {developer-rateplan-id} של תוכנית התעריפים למפתחים על ידי שליחת בקשת GET ל-/organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, כאשר {developer_id} היא כתובת האימייל של המפתח. למידע נוסף, ראו הצגת כל תוכניות התמחור שרכש מפתח.

הבקשה הבאה מעדכנת את תאריך הסיום ל-1 בדצמבר 2017. כלומר, תוקף תוכנית התמחור יפוג בסוף היום ב-30 בנובמבר 2017, וכל הבקשות שיוגשו ב-1 בדצמבר 2017 ייחסמו.

curl "https://api.enterprise.apigee.com/v1/mint/organizations/myorg/developers/dev@mycompany.com/developer-rateplans/b1c600b8-f871-496d-8173-12b9950d6ab1"
  -X PUT \
  -H "Content-Type:application/json" \
  -u email:password \
  -d '{
   "id" : "b1c600b8-f871-496d-8173-12b9950d6ab1",
   "developer":{
     "id":"dev@mycompany.com"
   },
   "ratePlan":{
     "id":"p1_adjustable-notification-plan"
   },
   "startDate": "2017-04-15 00:00:00",
   "endDate": "2017-11-30",
   "quotaTarget": 3000,
   "suppressWarning":false
  }'