ניהול חבילות מוצרים של API

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

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

מהי חבילת מוצרי API?

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

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

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

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

המחירים המינימליים והמקסימליים מוצגים בפרטים של חבילת המוצרים ב-API.

סקירת הדף 'חבילות מוצרים'

נכנסים לדף 'חבילות מוצרים' כמו שמתואר בהמשך.

Edge

כדי לגשת לדף חבילות המוצרים של ה-API דרך ממשק המשתמש של Edge, בוחרים באפשרות פרסום > מונטיזציה > חבילות מוצרים בסרגל הניווט הימני.

כפי שמודגש באיור הקודם, הדף 'חבילות מוצרים' מאפשר לך:

תוכלו לנהל את מוצרי ה-API בחבילת מוצרים או למחוק חבילת מוצרים (אם לא הוגדרו תוכניות תעריפים) באמצעות ה-API בלבד.

Classic Edge (ענן פרטי)

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

הדף API Packages מאפשר לכם:

  • הצגת פרטי סיכום של כל חבילות ה-API, כולל מוצרי ה-API שהיא מכילה ותוכניות התעריפים המשויכות אליה
  • הוספה של חבילת API
  • עריכה של חבילת API
  • הוספה וניהול של תוכניות תמחור ותשלומים
  • החלפת המצב של הגדרת הגישה לתוכנית התמחור (ציבורי/פרטי)
  • סינון רשימת החבילות

תוכלו לנהל את מוצרי ה-API בחבילת API או למחוק חבילת API (אם לא הוגדרו תוכניות תעריפים) באמצעות ה-API בלבד.

הוספה של חבילת מוצרים

כדי להוסיף חבילת מוצרים של API:

  1. לוחצים על + API Product Bundle בדף Product Bundles (חבילות מוצרים).
  2. צריך להזין שם לחבילת המוצרים של ה-API.
  3. מזינים שם של מוצר ב-API בשדה 'הוספת מוצר'.

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

  4. חוזרים על שלב 3 כדי להוסיף עוד שמות של מוצרי API.
  5. לכל מוצר API שמוסיפים, צריך להגדיר את המדיניות בנושא תיעוד עסקאות.
  6. לוחצים על שמירה של חבילת המוצרים.

עריכת חבילת מוצרים

כדי לערוך חבילת מוצרים:

  1. בדף של חבילות המוצרים, לוחצים בתוך השורה של חבילת המוצרים שרוצים לערוך.

    החלונית של חבילת המוצרים תוצג.

  2. עורכים את השדות של חבילת המוצרים לפי הצורך.

    מידע נוסף זמין במאמר הגדרת המדיניות בנושא תיעוד עסקאות.

  3. לוחצים על עדכון חבילת המוצרים.

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

בקטעים הבאים מוסבר איך לנהל חבילות מוצרי API באמצעות ה-API.

יצירת חבילת מוצרים של API באמצעות ה-API

כדי ליצור חבילת מוצרים של API, צריך לשלוח בקשת POST אל /organizations/{org_name}/monetization-packages כששולחים את הבקשה, חייב:

  • לזהות את מוצרי ה-API שייכללו בחבילת המוצרים של ה-API.
  • צריך לציין שם ותיאור לחבילת המוצרים של ה-API.
  • צריך להגדיר אינדיקטור של סטטוס לחבילת המוצרים של ה-API. מחוון הסטטוס יכול לכלול הערכים הבאים: CREATED, ACTIVE, INACTIVE. כרגע, הערך של מחוון הסטטוס שתציינו נשמר בחבילת המוצרים של ה-API, אבל לא משמש לשום מטרה.

אפשר גם לציין את הארגון.

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

לדוגמה:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "description": "payment messaging package",
     "displayName": "Payment Messaging Package",
     "name": "Payment Messaging Package",
     "organization": { "id": "{org_name}" },
     "product": [
       { "id": "messaging" },
       { "id": "payment" }
     ],
     "status": "CREATED"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \
-u email:password

הדוגמה הבאה ממחישה את התשובה:

{
   "description" : "payment messaging package",
   "displayName" : "Payment Messaging Package",
   "id" : "payment_messaging_package",
   "name" : "Payment Messaging Package",
   "organization" : {
     "id" : "{org_name}",
     "separateInvoiceForFees" : false
   },
   "product" : [ {
     "customAtt1Name" : "user",
     "description" : "Messaging",
     "displayName" : "Messaging",
     "id" : "messaging",
     "name" : "messaging",
     "organization" : {
       "id" : "{org_name}",
       "separateInvoiceForFees" : false
     },
     "status" : "CREATED"
   }, {
     "customAtt1Name" : "user",
     "description" : "Payment",
     "displayName" : "Payment",
     "id" : "payment",
     "name" : "payment",
     "organization" : {
       "id" : "{org_name}",
       "separateInvoiceForFees" : false
     },
     "status" : "CREATED"
   }],
   "status" : "CREATED"
 }

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

ניהול מוצרי ה-API בחבילת מוצרי API באמצעות ה-API

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

הוספת מוצר של API לחבילת מוצרי API

כדי להוסיף מוצר API לחבילת מוצרים של API, צריך לשלוח בקשת POST אל organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}, כאשר {org_name} מציין את שם הארגון, {package_id} מציין את השם של חבילת המוצרים של ה-API, וה-{product_id} מציין את המזהה של ה-API המוצר.

לדוגמה:

$ curl -H "Accept:application/json" -X POST -d \
'{}'\
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password

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

כדי להוסיף מוצר של API לחבילת מוצרי API שכוללת תוכנית תעריפים אחת או יותר שספציפיות למוצר API מוגדר (כרטיס תעריף או חלוקת הכנסות), לשלוח בקשת POST אל organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}, כאשר {org_name} מציין את שם הארגון, {package_id} מציין את השם של חבילת המוצרים של ה-API, וה-{product_id} מציין את המזהה של ה-API המוצר.

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

לדוגמה:

$ curl -H "Content-Type:application/json" -X POST -d \
'{
    "ratePlan": [ 
        {
            "id": "mypackage_rateplan1",
            "ratePlanDetails": [
                {
                    "currency": {
                        "id": "usd"
                    },
                    "duration": 1,
                    "durationType": "MONTH",
                    "meteringType": "UNIT",
                    "organization" : {
                        "id": "{org_name}",
                    "paymentDueDays": "30",
                    "ratePlanRates": [
                        {
                            "rate": "1.99",
                            "startUnit": "0",
                            "type": "RATECARD"
                        }
                    ],
                    "ratingParameter": "VOLUME",
                    "type": "RATECARD"
                }
            ]
        }
    ]
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password

מחיקה של מוצר API מחבילת מוצרי API

כדי למחוק מוצר API מחבילת מוצרי API, צריך לשלוח בקשת DELETE אל organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}, כאשר {org_name} מציין את שם הארגון, {package_id} מציין את השם של חבילת המוצרים של ה-API, וה-{product_id} מציין את המזהה של ה-API המוצר.

לדוגמה:

$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}" \
-u email:password

צפייה בחבילות מוצרי API באמצעות ה-API

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

צפייה בחבילת מוצרי API ספציפית: כדי לאחזר חבילת מוצרי API ספציפית, יש לשלוח בקשת GET אל /organizations/{org_name}/monetization-packages/{package_id}, כאשר {package_id} הוא המזהה של חבילת המוצרים של ה-API (המזהה מוחזר בקטע בזמן היצירה של חבילת המוצרים של ה-API). לדוגמה:

$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/payment_messaging_package" \
-u email:password

צפייה בכל חבילות המוצרים של ה-API: כדי לאחזר את כל חבילות המוצרים של ה-API לארגון, צריך לשלוח בקשת GET בקשה אל /organizations/{org_name}/monetization-packages. לדוגמה:

$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \
-u email:password

כדי לסנן את התוצאות, אפשר להעביר את הפרמטרים הבאים של שאילתה:

פרמטר שאילתה תיאור
all סימון שמציין אם להחזיר את כל חבילות המוצרים של ה-API. אם הערך שמוגדר הוא false, מספר חבילות המוצרים של ה-API שהוחזרו בכל דף הוא מוגדר על ידי פרמטר השאילתה size. ברירת המחדל היא false.
size מספר חבילות מוצרי ה-API שהוחזרו בכל דף. ברירת המחדל היא 20. אם השאילתה all הפרמטר מוגדר ל-true, המערכת מתעלמת מהפרמטר הזה.
page מספר הדף שרוצים להחזיר (אם התוכן מחולק לדפים). אם המיקום פרמטר השאילתה all מוגדר ל-true, המערכת מתעלמת מהפרמטר הזה.

התגובה להצגת כל חבילות מוצרי ה-API בארגון אמורה להיראות כך (רק חלק של התגובה שמוצגת):

{
  "monetizationPackage" : [ {
    "description" : "payment messaging package",
    "displayName" : "Payment Messaging Package",
    "id" : "payment_messaging_package",
    "name" : "Payment Messaging Package",
    "organization" : {
      ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "description" : "Messaging",
      "displayName" : "Messaging",
      "id" : "messaging",
      "name" : "messaging",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    }, {
      "customAtt1Name" : "user",
      "description" : "Payment",
      "displayName" : "Payment",
      "id" : "payment",
      "name" : "payment",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    } ],
    "status" : "CREATED"
  }, {
    "description" : "Communications",
    "displayName" : "Communications",
    "id" : "communications",
    "name" : "Communications",
    "organization" : {
      ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "description" : "Location",
      "displayName" : "Location",
      "id" : "location",
      "name" : "location",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    }, {
      "customAtt1Name" : "user",
      "description" : "Messaging",
      "displayName" : "Messaging",
      "id" : "messaging",
      "name" : "messaging",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    } ],
    "status" : "CREATED"
  }, {
    "description" : "Payment",
    "displayName" : "Payment",
    "id" : "payment",
    "name" : "Payment",
    "organization" : {
     ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "description" : "Payment",
      "displayName" : "Payment",
      "id" : "payment",
      "name" : "payment",
      "organization" : {
        ...
      },
      "status" : "CREATED"
    } ],
    "status" : "CREATED"
  } ],
  "totalRecords" : 3
}

צפייה בחבילות מוצרי API עם עסקאות: כדי לאחזר חבילות מוצרי API עם עסקאות בטווח תאריכים נתון, יש לשלוח בקשת GET אל /organizations/{org_name}/packages-with-transactions. כששולחים את הבקשה, עליכם לציין כפרמטרים של שאילתה תאריך התחלה ותאריך סיום בטווח התאריכים. עבור לדוגמה, הבקשה הבאה מאחזרת חבילות מוצרי API עם עסקאות במהלך חודש אוגוסט 2013.

$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/packages-with-transactions?START_DATE=2013-08-01&END_DATE=2013-08-31" \
-u email:password

התשובה אמורה להיראות בערך כך (מוצג רק חלק מהתשובה):

{
  "monetizationPackage" : [ {
    "description" : "Payment Package",
    "displayName" : "Payment Package",
    "id" : "payment_package",
    "name" : "Payment Package",
    "organization" : {
      ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "customAtt2Name" : "response size",
      "customAtt3Name" : "content-length",
      "description" : "payment api product",
      "displayName" : "payment",
      "id" : "payment",
      "name" : "payment",
      "organization" : {
        ...
      },
      "status" : "CREATED",
      "transactionSuccessCriteria" : "status == 'SUCCESS'"
    } ],
    "status" : "CREATED"
  }, {
    "description" : "messaging package",
    "displayName" : "Messaging Package",
    "id" : "messaging_package",
    "name" : "Messaging Package",
    "organization" : {
      ...
    },
    "product" : [ {
      "customAtt1Name" : "user",
      "customAtt2Name" : "response size",
      "customAtt3Name" : "content-length",
      "description" : "messaging api product",
      "displayName" : "messaging",
      "id" : "messaging",
      "name" : "messaging",
      "organization" : {
        ...
      },
      "status" : "CREATED",
      "transactionSuccessCriteria" : "status == 'SUCCESS'"
    } ],
    "status" : "CREATED"
  },
     ...
  } ]
}

הצגה של חבילות מוצרי ה-API שהמפתחים או החברה אישרו באמצעות ה-API

הצגת חבילות מוצרי ה-API שמפתח או חברה ספציפיים אישרו באמצעות הנפקת GET לשלוח בקשה לממשקי ה-API הבאים, בהתאמה:

  • /organizations/{org_name}/developers/{developer_id}/monetization-packages, כאשר {developer_id} הוא המזהה (כתובת האימייל) של המפתח.
  • /organizations/{org_name}/companies/{company_id}/monetization-packages, כאשר {company_id} הוא מזהה החברה.

כששולחים את הבקשה, אפשר לציין את הפרמטרים הבאים של השאילתה:

פרמטר שאילתה תיאור ברירת מחדל
current סימון שמציין אם לאחזר רק חבילות מוצרים פעילות של API (current=true) או את כולן חבילות (current=false). כל תוכניות התמחור והתשלומים בחבילה פעילה נחשבות זמינים. current=false
allAvailable סימון שמציין אם לאחזר את כל חבילות המוצרים הזמינות של API (allAvailable=true) או רק חבילות מוצרי API שזמינות במיוחד למפתח או לחברה (allAvailable=false). 'כל המוצרים הזמינים' מתייחסים לחבילות מוצרי ה-API שזמינות למפתח או לחברה שצוינו בנוסף ל: מפתחים או חברות אחרים. חבילות מוצרי API שזמינות באופן ספציפי לחברה או למפתח כוללות רק תוכניות תעריפים שזמינים באופן בלעדי לאותה חברה או מפתח. allAvailable=true

לדוגמה, הבקשה הבאה מאחזרת את כל חבילות מוצרי ה-API שאושרו על ידי אירוע ספציפי מפתח:

$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/developers/dev1@myorg.com/monetization-packages" \
-u email:password

הבקשה הבאה מאחזרת רק חבילות API פעילות שאושרו על ידי חברה ספציפית:

$ curl -H "Accept:application/json" -X GET \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/companies/myCompany/monetization-packages?current=true" \
-u email:password

מחיקה של חבילת מוצרים של API באמצעות ה-API

אפשר למחוק חבילת מוצרים של API רק אם לא הוגדרו בה תוכניות תמחור ותשלומים.

כדי למחוק חבילת מוצרים של API שלא הוגדרו בה תוכניות תמחור ותשלומים, צריך לשלוח בקשת DELETE אל organizations/{org_name}/monetization-packages/{package_id}, כאשר {org_name} מציין את שם הארגון ו-{package_id} מציין את השם של חבילת המוצרים של ה-API.

לדוגמה:

$ curl -H "Accept:application/json" -X DELETE \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}" \
-u email:password

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

אפשרויות ההגדרה הבאות של חבילת מוצרי API נחשפות ל-API:

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

תיאור של חבילת המוצרים של ה-API.

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

השם שיוצג עבור חבילת המוצרים של ה-API (לדוגמה, בקטלוג של API ).

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

השם של חבילת המוצרים של ה-API.

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

הארגון שמכיל את חבילת המוצרים של ה-API.

לא רלוונטי לא
product

מערך של מוצר אחד או יותר בחבילת המוצרים של ה-API.

לא רלוונטי לא
status

אינדיקטור של סטטוס לחבילת המוצרים של API. מחוון הסטטוס יכול לכלול הערכים הבאים: CREATED, ACTIVE, INACTIVE.

לא רלוונטי כן