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

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

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

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

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

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

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

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

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

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

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

Edge

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

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

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

Classic Edge (ענן פרטי)

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

הדף 'חבילות API' מאפשר לך:

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

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

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

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

  1. לוחצים על + API Product Bundle בדף Product Bundle (חבילות מוצרים).
  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.

לא רלוונטי כן