Preispläne mithilfe der API kaufen

Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur Dokumentation zu Apigee X.
info

In diesem Abschnitt wird beschrieben, wie Sie mit der API ein veröffentlichtes Tarifpaket erwerben und ein erworbenes Tarifpaket bei Bedarf ablaufen lassen oder kündigen.

Veröffentlichtes Tarifpaket mit der API erwerben

Nachdem ein Tarifpaket veröffentlicht wurde, kann ein Entwickler oder Unternehmen es erwerben (oder „annehmen“), indem er eine POST-Anfrage an /mint/organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans sendet. Dabei ist {org_name} der Name der Organisation und {developer_or_company_id} die ID des Entwicklers oder Unternehmens.

Wenn Sie beim Erwerb eines Tarifpakets auf die Einrichtungsgebühren verzichten möchten, setzen Sie den waivefees Abfrageparameter auf true. Dieses Flag ist nützlich, wenn Sie Entwickler zur Monetarisierung migrieren, wie unter Entwickler zur Monetarisierung migrieren beschrieben.

In der folgenden Tabelle sind die Konfigurationseigenschaften zusammengefasst, die Sie im Anfragetext angeben können. Außerdem sind die Standardwerte und die Angabe, ob sie erforderlich sind, aufgeführt.

Name Beschreibung Standard Erforderlich?
startDate

Datum, an dem das Tarifpaket beginnt. Beispiel: 2017-03-24.

Ja
endDate

Datum, an dem das Tarifpaket endet. Beispiel: 2017-09-24.

Das Tarifpaket gilt bis zum Ende des Tages am angegebenen Datum. Wenn Sie beispielsweise ein Tarifpaket am 1. Dezember 2017 ablaufen lassen möchten, sollten Sie den Wert für endDate auf 2017-11-30 setzen. In diesem Fall läuft das Tarifpaket am Ende des Tages am 30. November 2017 ab. Alle Anfragen vom 1. Dezember 2017 werden blockiert.

Nein
developer

id-Eigenschaft, die die ID des Entwicklers oder Unternehmens definiert, der das Tarifpaket erwirbt.

Ja
quotaTarget

Zielanzahl der Transaktionen, die für den App-Entwickler zulässig sind. Sie können konfigurieren, ob und wann Benachrichtigungen gesendet werden, je nachdem, welcher Prozentsatz der Zielanzahl erreicht wurde, z. B. 90%, 100 % oder 150%. Zusätzliche Transaktionen werden nicht blockiert, nachdem die Zielanzahl erreicht wurde.

Setzen Sie diesen Wert auf eine positive Ganzzahl oder 0, um Benachrichtigungen für einen App Entwickler zu deaktivieren.

0 Nein
ratePlan

id-Eigenschaft, die die ID des Tarifpakets definiert.

Die Tarifpaket-ID unterscheidet sich vom Anzeigenamen. Informationen zum Aufrufen von Tarifpaketdetails einschließlich der ID finden Sie unter Die Seite „Tarifpakete“ verwenden.

Ja
suppressWarning

Flag, das angibt, ob der Fehler unterdrückt werden soll, wenn der Entwickler versucht, ein Tarifpaket zu erwerben, das sich mit einem anderen erworbenen Tarifpaket überschneidet. Der Wert kann einer der folgenden sein:

  • true - `true`: Bei der Monetarisierung werden alle erworbenen Tarifpakete beendet, die der Entwickler für API-Pakete mit den in Konflikt stehenden API-Produkten hat. Anschließend wird ein neues API-Paket für den Entwickler erworben.
  • false – Im Falle eines sich überschneidenden Tarifpakets wird ein Fehler ausgegeben.
Nein
waveTerminationCharge

Flag, das angibt, ob die Kündigungsgebühren entfallen, wenn ein aktives Tarifpaket im Rahmen der Aktivierung des neuen Tarifpakets beendet wird. Der Wert kann einer der folgenden sein:

  • true – Die Kündigungsgebühr entfällt, wenn ein aktives Tarifpaket im Rahmen der Aktivierung des neuen Tarifpakets beendet wird.
  • false - `false`: Die Kündigungsgebühr entfällt nicht, wenn ein aktives Tarifpaket im Rahmen der Aktivierung des neuen Tarifpakets beendet wird.
Nein

Mit der folgenden Anfrage wird beispielsweise das location_&_messaging Tarifpaket für den angegebenen Entwickler erworben:

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
  }'

In diesem Beispiel ist die Eigenschaft suppressWarning auf false gesetzt. In diesem Fall wird bei einem Konflikt ein Fehler ausgegeben. Wenn der Entwickler beispielsweise versucht, ein Tarifpaket zu erwerben, das sich mit einem anderen erworbenen Tarifpaket überschneidet, wird ein Fehler ausgegeben. So kann eine Anwendung, die eine Benutzeroberfläche für die Monetarisierung bietet, den Fehler abfangen und die in Konflikt stehenden Produkte dem Entwickler zur Bestätigung anzeigen (falls zutreffend). Wenn suppressWarning auf true gesetzt ist, werden bei der Monetarisierung alle erworbenen Tarifpakete beendet, die der Entwickler für API-Pakete mit den in Konflikt stehenden Produkten hat. Anschließend wird ein neues API-Paket für den Entwickler erworben.

Mit der folgenden Anfrage wird ein Tarifpaket mit anpassbarer Benachrichtigungsrate erworben und die Zielanzahl der Transaktionen auf 4.000 gesetzt.

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
  }'

Wenn in einem der obigen Beispiele die folgende Fehlermeldung zurückgegeben wird:

Developer legal name not specified. 

Dann müssen Sie die Monetarisierungsattribute MINT_DEVELOPER_ADDRESS und MINT_DEVELOPER_LEGAL_NAME festlegen und den API-Aufruf wiederholen.

Von einem Entwickler erworbenes Tarifpaket mit der API ablaufen lassen

Wenn Sie ein von einem Entwickler erworbenes Tarifpaket ablaufen lassen (oder kündigen) möchten, aktualisieren Sie die Details des erworbenen Tarifpakets und geben Sie die endDate Eigenschaft im Anfragetext einer PUT-Anfrage an die /organizations/{org_name}/developers/{developer_or_company_id}/developer-rateplans/{developer_rateplan_id} Ressource an.

Das Tarifpaket gilt bis zum Ende des Tages am angegebenen End datum. Wenn Sie beispielsweise ein Tarifpaket am 1. Dezember 2017 ablaufen lassen möchten, sollten Sie den Wert für endDate auf 2017-11-30 setzen. In diesem Fall läuft das Tarifpaket am Ende des Tages am 30. November 2017 ab. Alle Anfragen vom 1. Dezember 2017 werden blockiert.

Die {developer_rateplan_id} wird in der Antwort zurückgegeben, wenn Sie das veröffentlichte Tarifpaket erwerben.

Beispiel:

{
  "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
}

Alternativ können Sie die {developer-rateplan-id} für das Entwicklertarifpaket abrufen, indem Sie eine GET-Anfrage an /organizations/{org_name}/developers/{developer_id}/developer-accepted-rateplans, senden. Dabei ist {developer_id} die E-Mail-Adresse des Entwicklers. Weitere Informationen finden Sie unter Alle von einem Entwickler erworbenen Tarifpakete ansehen.

Mit der folgenden Anfrage wird das Enddatum auf den 1. Dezember 2017 aktualisiert. Das Tarifpaket läuft also am Ende des Tages am 30. November 2017 ab. Alle Anfragen vom 1. Dezember 2017 werden blockiert.

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
  }'