Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation weitere Informationen
Fassen Sie ein oder mehrere API-Produkte in einem einzelnen monetarisierten Container zusammen, der als API-Produktset bezeichnet wird, wie in den folgenden Abschnitten beschrieben.
Was ist ein API-Produktset?
Ein API-Produktpaket ist eine Sammlung von API-Produkten, die Entwicklern als Gruppe präsentiert wird und in der Regel mit einem oder mehreren Tarifen für die Monetarisierung verknüpft ist. Sie können mehrere API-Produktsets erstellen und jeweils ein oder mehrere API-Produkte hinzufügen. Sie können dasselbe API-Produkt oder dieselben Produkte in verschiedenen Sets zusammenfassen und mit unterschiedlichen (oder identischen) Preisplänen verknüpfen.
Entwickler können ihre Apps nur für die Nutzung eines API-Produktpakets registrieren, indem sie einen der derzeit gültigen Preispläne erwerben. Ein API-Produktpaket wird Entwicklern erst angezeigt, wenn Sie einen Preisplan für das Produktpaket (mit einem Startdatum mit dem aktuellen oder einem zukünftigen Datum) hinzufügen und (als öffentlich) veröffentlichen, wie unter Preispläne verwalten beschrieben. Nachdem Sie einen Preisplan hinzugefügt und veröffentlicht haben, können Entwickler, die sich in Ihrem Entwicklerportal anmelden, das API-Produktpaket und den Preisplan auswählen. Alternativ können Sie einen Preisplan für einen Entwickler mithilfe der Verwaltungs-API akzeptieren. Weitere Informationen finden Sie unter Veröffentlichte Preispläne mit der API erwerben.
Nachdem Sie einem API-Produktpaket ein API-Produkt hinzugefügt haben, müssen Sie möglicherweise Preispunkte für das API-Produkt festlegen. Dies ist nur erforderlich, wenn alle folgenden Bedingungen erfüllt sind:
- Sie richten einen Tarif für die Umsatzbeteiligung für das API-Produkt ein.
- Entwickler berechnen Drittanbietern die Nutzung von Ressourcen im API-Produkt.
- Es gibt eine Mindest- oder Höchstgrenze für den Betrag, den Entwickler berechnen können, und Sie möchten die Entwickler über die Einschränkung informieren.
Die Mindest- und Höchstpreise finden Sie in den Details zum API-Produktset.
Seite mit Produktsets
Rufen Sie wie unten beschrieben die Seite mit Produktsets auf.
Edge
Um über die Edge-Benutzeroberfläche auf die Seite mit den API-Produktpaketen zuzugreifen, wählen Sie in der linken Navigationsleiste Veröffentlichen > Monetarisierung > Produktsets aus.
Wie in der vorherigen Abbildung gezeigt, können Sie auf der Seite mit Produktsets Folgendes tun:
- Zusammenfassungsinformationen für alle Produktsets abrufen, einschließlich des Paketnamens und der Liste der darin enthaltenen API-Produkte
- Produktset hinzufügen
- Produktsets bearbeiten
- In der Liste der Produktsets nach einem sichtbaren Feld suchen
Sie können die API-Produkte in einem Produktset verwalten oder ein Produktset löschen (wenn keine Preispläne definiert sind), ausschließlich mit der API.
Classic Edge (Private Cloud)
Um über die Classic Edge-Benutzeroberfläche auf die Seite mit den API-Paketen zuzugreifen, wählen Sie in der oberen Navigationsleiste Veröffentlichen > Pakete aus.
Auf der Seite „API-Pakete“ können Sie:
- Zusammenfassungsinformationen für alle API-Pakete anzeigen, einschließlich der darin enthaltenen API-Produkte und der zugehörigen Preispläne
- API-Paket hinzufügen
- API-Paket bearbeiten
- Preispläne hinzufügen und verwalten
- Einstellung für den Preisplan-Zugriff umschalten (öffentlich/privat)
- Liste der Pakete filtern
Sie können nur mit der API die API-Produkte in einem API-Paket verwalten oder ein API-Paket löschen, wenn keine Preispläne definiert sind.
Produktset hinzufügen
So fügen Sie ein API-Produktset hinzu:
- Klicken Sie auf der Seite Produktsets auf + API-Produktpaket.
- Geben Sie einen Namen für das API-Produktset ein.
Geben Sie den Namen eines API-Produkts in das Feld Produkt hinzufügen ein.
Während Sie den Namen eines API-Produkts eingeben, wird eine Liste von API-Produkten, die den String enthalten, in einem Drop-down-Menü angezeigt. Klicken Sie auf den Namen eines API-Produkts, um es dem Bundle hinzuzufügen. Wiederholen Sie diese Schritte, um weitere API-Produkte hinzuzufügen.
- Wiederholen Sie Schritt 3, um weitere API-Produktnamen hinzuzufügen.
- Konfigurieren Sie für jedes hinzugefügte API-Produkt die Richtlinie zur Transaktionsaufzeichnung.
- Klicken Sie auf Produktset speichern.
Produktsets bearbeiten
So bearbeiten Sie ein Produktset:
Klicken Sie auf der Seite Produktsets in die Zeile des Produktsets, das Sie bearbeiten möchten.
Der Bereich für das Produktset wird angezeigt.
Bearbeiten Sie die Felder für Produktsets nach Bedarf.
Weitere Informationen finden Sie unter Richtlinie zur Transaktionsaufzeichnung konfigurieren.
- Klicken Sie auf Produktset aktualisieren.
API-Produktsets mit der API verwalten
In den folgenden Abschnitten wird beschrieben, wie Sie API-Produktsets mithilfe der API verwalten.
API-Produktpaket mithilfe der API erstellen
Senden Sie eine POST-Anfrage an /organizations/{org_name}/monetization-packages
, um ein API-Produktpaket zu erstellen. Wenn Sie den Antrag stellen, müssen Sie:
- Geben Sie die API-Produkte an, die in das API-Produktset aufgenommen werden sollen.
- Geben Sie einen Namen und eine Beschreibung für das API-Produktset an.
- Legen Sie eine Statusanzeige für das API-Produktset fest. Die Statusanzeige kann einen der folgenden Werte haben: CREATED, ACTIVE oder INACTIVE. Derzeit wird der von Ihnen angegebene Wert für den Statusanzeiger im API-Produktpaket beibehalten, aber für keinen Zweck verwendet.
Optional können Sie die Organisation angeben.
Eine Liste der für die API bereitgestellten Optionen finden Sie unter Konfigurationseigenschaften für API-Produktsets.
Beispiel:
$ 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
Im Folgenden finden Sie ein Beispiel für die Antwort:
{ "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" }
Die Antwort enthält zusätzliche Informationen zu den API-Produkten und allen benutzerdefinierten Attributen, die für diese API-Produkte angegeben wurden. Benutzerdefinierte Attribute werden beim Erstellen eines API-Produkts festgelegt. Benutzerdefinierte Attribute für ein API-Produkt können in verschiedene Preispläne einbezogen werden. Wenn Sie beispielsweise einen Preislistenplan einrichten, bei dem Sie dem Entwickler jede Transaktion in Rechnung stellen, können Sie den Preis für den Plan auf der Grundlage eines benutzerdefinierten Attributs festlegen, z. B. der Anzahl der in einer Transaktion übertragenen Byte.
API-Produkte in einem API-Produktset mithilfe der API verwalten
Mithilfe der API können Sie ein API-Produkt zu einem API-Produktpaket hinzufügen oder daraus löschen. Dies wird in den folgenden Abschnitten beschrieben.
API-Produkt einem API-Produktpaket hinzufügen
Wenn Sie einem API-Produktpaket ein API-Produkt hinzufügen möchten, senden Sie eine POST-Anfrage an organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
, wobei {org_name}
den Namen Ihrer Organisation, {package_id}
den Namen des API-Produktsets und {product_id}
die ID des API-Produkts angibt.
Beispiel:
$ 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-Produkt zu einem API-Produktpaket mit produktspezifischen API-Preisplänen hinzufügen
Wenn Sie ein API-Produkt zu einem API-Produktpaket hinzufügen möchten, für das mindestens ein produktspezifischer API-Preisplan (Preisliste oder Umsatzbeteiligung) definiert ist, senden Sie eine POST-Anfrage an organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
, wobei {org_name}
den Namen Ihrer Organisation, {package_id}
den Namen des API-Produktsets und {product_id}
die ID des API-Produkts angibt.
Sie müssen die Preisplandetails für das neue API-Produkt im Anfragetext übergeben. Mit Ausnahme des Arrays ratePlanRates
müssen die Preisplanwerte mit denen für alle anderen API-Produkte übereinstimmen. Weitere Informationen zu den Preisplanattributen, die definiert werden können, finden Sie unter Konfigurationsattribute für Preispläne.
Beispiel:
$ 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-Produkt aus einem API-Produktpaket löschen
Wenn Sie ein API-Produkt aus einem API-Produktpaket löschen möchten, senden Sie eine DELETE-Anfrage an organizations/{org_name}/monetization-packages/{package_id}/products/{product_id}
, wobei {org_name}
den Namen Ihrer Organisation, {package_id}
den Namen des API-Produktsets und {product_id}
die ID des API-Produkts angibt.
Beispiel:
$ 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-Produktpakete mithilfe der API ansehen
Sie können ein bestimmtes API-Produktset oder alle API-Produktsets in einer Organisation abrufen. Sie können auch API-Produktpakete mit Transaktionen in einem bestimmten Zeitraum abrufen. Das sind nur Pakete, für die Nutzer Anwendungen aufrufen, die innerhalb eines bestimmten Start- und Enddatums auf APIs in diesen Paketen zugreifen.
Ein bestimmtes API-Produktpaket aufrufen:Wenn Sie ein bestimmtes API-Produktpaket abrufen möchten, senden Sie eine GET-Anfrage an /organizations/{org_name}/monetization-packages/{package_id}
. Dabei ist {package_id} die Identifizierung des API-Produktpakets. Die ID wird beim Erstellen des API-Produktpakets in der Antwort zurückgegeben. Beispiel:
$ 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
Alle API-Produktpakete ansehen:Senden Sie eine GET-Anfrage an /organizations/{org_name}/monetization-packages
, um alle API-Produktsets für eine Organisation abzurufen. Beispiel:
$ curl -H "Accept:application/json" -X GET \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages" \ -u email:password
Sie können die folgenden Abfrageparameter übergeben, um die Ergebnisse zu filtern:
Suchparameter | Beschreibung |
---|---|
all |
Flag, das angibt, ob alle API-Produktsets zurückgegeben werden sollen. Bei Einstellung auf false wird die Anzahl der pro Seite zurückgegebenen API-Produktsets durch den Abfrageparameter size definiert. Die Standardeinstellung ist false. |
size |
Anzahl der pro Seite zurückgegebenen API-Produktsets. Der Standardwert ist 20. Wenn der Abfrageparameter all auf true festgelegt ist, wird dieser Parameter ignoriert. |
page |
Nummer der Seite, die zurückgegeben werden soll (bei paginierten Inhalten). Wenn der Abfrageparameter all auf true gesetzt ist, wird dieser Parameter ignoriert. |
Die Antwort zum Aufrufen aller API-Produktpakete in einer Organisation sollte so aussehen (nur ein Teil der Antwort wird angezeigt):
{ "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-Produktpakete mit Transaktionen ansehen:Zum Abrufen von API-Produktpaketen mit Transaktionen in einem bestimmten Zeitraum senden Sie eine GET-Anfrage an /organizations/{org_name}/packages-with-transactions
. Wenn Sie die Anfrage senden, müssen Sie als Abfrageparameter ein Start- und ein Enddatum für den Zeitraum angeben. Die folgende Anfrage ruft beispielsweise API-Produktpakete mit Transaktionen im August 2013 ab.
$ 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
Die Antwort sollte in etwa so aussehen (nur ein Teil der Antwort wird angezeigt):
{ "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" }, ... } ] }
Von einem Entwickler oder Unternehmen akzeptierte API-Produktpakete mithilfe der API aufrufen
Sehen Sie sich die von einem bestimmten Entwickler oder Unternehmen akzeptierten API-Produktsets an, indem Sie eine GET-Anfrage an die folgenden APIs senden:
/organizations/{org_name}/developers/{developer_id}/monetization-packages
, wobei {developer_id} die ID (E-Mail-Adresse) des Entwicklers ist./organizations/{org_name}/companies/{company_id}/monetization-packages
, wobei {company_id} die ID des Unternehmens ist.
Wenn Sie die Anfrage senden, können Sie optional die folgenden Abfrageparameter angeben:
Suchparameter | Beschreibung | Standard |
---|---|---|
current |
Flag, das angibt, ob nur aktive API-Produktsets (current=true ) oder alle Pakete (current=false ) abgerufen werden sollen. Alle Preispläne in einem aktiven Paket gelten als verfügbar. |
current=false |
allAvailable |
Flag, das angibt, ob alle verfügbaren API-Produktsets (allAvailable=true ) oder nur API-Produktsets abgerufen werden sollen, die speziell für den Entwickler oder das Unternehmen (allAvailable=false ) verfügbar sind. „Alle verfügbaren“ bezieht sich auf die API-Produktpakete, die für den angegebenen Entwickler oder das angegebene Unternehmen sowie andere Entwickler oder Unternehmen zur Verfügung stehen. API-Produktpakete, die speziell für ein Unternehmen oder einen Entwickler verfügbar sind, enthalten nur Preispläne, die ausschließlich für dieses Unternehmen oder diesen Entwickler verfügbar sind. |
allAvailable=true |
Mit der folgenden Anfrage werden beispielsweise alle von einem bestimmten Entwickler akzeptierten API-Produktsets abgerufen:
$ 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
Die folgende Anfrage ruft nur aktive API-Pakete ab, die von einem bestimmten Unternehmen akzeptiert wurden:
$ 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-Produktset über die API löschen
Sie können ein API-Produktpaket nur löschen, wenn für das keine Preispläne definiert sind.
Wenn Sie ein API-Produktpaket löschen möchten, für das keine Preispläne definiert sind, senden Sie eine DELETE-Anfrage an organizations/{org_name}/monetization-packages/{package_id}
, wobei {org_name}
den Namen Ihrer Organisation und {package_id}
den Namen des API-Produktsets angibt.
Beispiel:
$ curl -H "Accept:application/json" -X DELETE \ "https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/{package_id}" \ -u email:password
Konfigurationseigenschaften des API-Produktpakets für die API
Die folgenden Konfigurationsoptionen für API-Produktsets sind in der API verfügbar:
Name | Beschreibung | Standard | Erforderlich? |
---|---|---|---|
description |
Eine Beschreibung des API-Produktpakets |
– | Ja |
displayName |
Der Name, der für das API-Produktpaket angezeigt werden soll (z. B. in einem Katalog von API-Paketen). |
– | Ja |
name |
Der Name des API-Produktsets. |
– | Ja |
organization |
Die Organisation, die das API-Produktset enthält. |
– | Nein |
product |
Ein Array mit einem oder mehreren Produkten im API-Produktset. |
– | Nein |
status |
Statusanzeige für das API-Produktset Die Statusanzeige kann einen der folgenden Werte haben: CREATED, ACTIVE oder INACTIVE. |
– | Ja |