אתם צופים במסמכי התיעוד של 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 |
המאפיין |
לא רלוונטי | כן |
quotaTarget |
מספר היעד של טרנזקציות שמותר למפתח האפליקציה לבצע. אתם יכולים להגדיר אם ומתי יישלחו התראות על סמך אחוז היעד שהושג, למשל 90%, 100% או 150%. עסקאות נוספות לא נחסמות אחרי שמגיעים למספר היעד. מגדירים את הערך הזה כמספר שלם חיובי או כ-0 כדי להשבית את ההתראות למפתח אפליקציה. |
0 |
לא |
ratePlan |
מאפיין מזהה תוכנית התמחור שונה מהשם המוצג. כדי לראות את פרטי תוכנית התמחור, כולל המזהה, אפשר לעיין במאמר בנושא הסבר על דף תוכניות התמחור. |
לא רלוונטי | כן |
suppressWarning |
דגל שמציין אם להסתיר את השגיאה אם המפתח מנסה לרכוש תוכנית תמחור שחופפת לתוכנית תמחור אחרת שנרכשה. הערך יכול להיות אחד מהערכים הבאים:
|
לא רלוונטי | לא |
waveTerminationCharge |
דגל שמציין אם יש ויתור על דמי ביטול כשמבטלים תוכנית מחירים פעילה במסגרת הפעלת תוכנית מחירים חדשה. הערך יכול להיות אחד מהערכים הבאים:
|
לא רלוונטי | לא |
לדוגמה, הבקשה הבאה רוכשת את תוכנית התמחור 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
}'