Diese Seite gilt für Apigee und Apigee Hybrid.
Apigee Edge-Dokumentation aufrufen
Auf dieser Seite wird beschrieben, wie Sie Ihre Prepaid-Rechnungskonten verwalten können.
Sie können die Apigee APIs verwenden, um die Prepaid-Rechnungskonten Ihrer App-Entwickler und AppGroups zu verwalten. Mit den APIs können Sie die folgenden Aufgaben ausführen:
- Monetarisierungskonfiguration ansehen
- Monetarisierungskonfiguration aktualisieren
- Guthaben ansehen
- Guthaben
- Guthaben anpassen
Monetarisierungskonfiguration ansehen
Senden Sie eine GET-Anfrage an die folgende API, um die Monetarisierungskonfiguration eines App-Entwicklers aufzurufen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Senden Sie eine GET-Anfrage an diese API, um die Monetarisierungskonfiguration einer AppGroup aufzurufen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/appgroups/APPGROUP_ID/monetizationConfig
Mit der API können Sie den Abrechnungstyp anzeigen. Weitere Informationen zur API finden Sie unter organizations.developers.getMonetizationConfig oder organizations.appgroups.getMonetizationConfig.
Das folgende Beispiel zeigt, wie Sie die Monetarisierungskonfiguration für einen App-Entwickler mit dem Befehl curl aufrufen:
curl -H "Authorization: Bearer $TOKEN" \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"billingType": "PREPAID",
}Monetarisierungskonfiguration aktualisieren
Um die Monetarisierungskonfiguration eines App-Entwicklers zu aktualisieren, senden Sie eine PUT-Anfrage an die folgende API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Um die Monetarisierungskonfiguration einer AppGroup zu aktualisieren, senden Sie eine PUT-Anfrage an die folgende API:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/appgroups/$APPGROUP_NAME/monetizationConfig
Mit dieser API können Sie den Abrechnungstyp aktualisieren. Weitere Informationen zur API finden Sie unter updateMonetizationConfig oder organizations.appgroups.updateMonetizationConfig.
Das folgende Beispiel zeigt, wie Sie die Monetarisierungskonfiguration für einen App-Entwickler mit dem Befehl curl aktualisieren:
curl -H "Authorization: Bearer $TOKEN" \
-H "Content-type: application/json" \
-X PUT \
-d '{
"billingType": "POSTPAID",
}' \
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/monetizationConfig
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"billingType": "POSTPAID",
}Änderung des Abrechnungstyps
Ihre App-Entwickler und AppGroups können ihre Abrechnung von Prepaid in Postpaid und umgekehrt ändern. In diesem Abschnitt werden die Änderungen in Apigee beschrieben, wenn ein Abrechnungstyp geändert wird.
Von Postpaid zu Prepaid
Beim Wechsel von Postpaid zu Prepaid setzt Apigee in der Konfiguration sofort den billingType auf PREPAID. Der App-Entwickler oder die AppGroup kann die APIs im Rahmen des eingezahlten Prepaid-Guthabens verwenden. Auf Grundlage Ihrer benutzerdefinierten Monetarisierungsberichte wird jede vorhandene Nutzung im Postpaid-Konto von Ihnen (API-Anbieter) separat abgerechnet.
Von Prepaid zu Postpaid
Beim Wechsel von Prepaid zu Postpaid setzt Apigee in der Konfiguration sofort den billingType auf POSTPAID. In Ihren benutzerdefinierten Monetarisierungsberichten wird ein vorhandenes Guthaben (alle Währungen) im Prepaid-Konto als Guthabentransaktion angezeigt. Bei der Berechnung des fälligen Betrags nach dem Abrechnungszeitraum müssen Sie (der API-Anbieter) das Guthaben im Konto berücksichtigen.
Kontostand ansehen
Senden Sie eine GET-Anfrage an die folgende API, um den Kontostand im Prepaid-Konto eines App-Entwicklers aufzurufen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance
Senden Sie eine GET-Anfrage an die folgende API, um den Kontostand im Prepaid-Konto einer AppGroup aufzurufen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/appgroups/$APPGROUP_NAME/balance
Weitere Informationen zur API finden Sie unter organizations.developers.getBalance oder organizations.appgroups.getBalance.
Dieses Beispiel zeigt, wie Sie das Guthaben im Prepaid-Konto eines App-Entwicklers aufrufen:
curl -H "Authorization: Bearer $TOKEN" \ https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"wallets": [
{
"balance": {
"currencyCode": "USD",
"units": "150",
"nanos": 500000000
},
"lastCreditTime": 1234567890
},
{
"balance": {
"currencyCode": "INR",
"units": "10000",
"nanos": 600000000
},
"lastCreditTime": 9876543210
}
]
}In der Beispielantwort hat der App-Entwickler zwei Prepaid-Guthaben, jeweils eines für jede Währung.
Sie können den Kontostand aus den Feldern units und nanos erfahren. Das Feld lastCreditTime hat das Epochenformat und gibt den Zeitpunkt an, zu dem das Guthaben zuletzt gutgeschrieben wurde.
Negativer Kontostand
Wenn ein App-Entwickler oder eine AppGroup innerhalb einer kurzen Zeitspanne mehrere API-Aufrufe tätigt, kann es sein, dass die zulässigen API-Aufrufe überschritten werden, was zu einem negativen Wallet-Guthaben führt.
Dieses Szenario tritt auf, wenn mehrere Message Processors die API-Aufrufe von demselben App-Entwickler oder derselben AppGroup verarbeiten. Jeder Nachrichtenverarbeiter hat eine Kopie des Saldos, auf der die API-Aufrufe zugelassen sind. Alle Message Processors synchronisieren ihre Salden regelmäßig mit dem Hauptsaldo. Aufgrund der geringfügigen Verzögerung bei der Synchronisierung ist das Guthaben in einem Nachrichtenprozessor möglicherweise nicht mit dem Hauptsaldo synchron. Wenn zum Beispiel das Guthaben in einem Nachrichtenprozessor zu einem bestimmten Zeitpunkt 2 $ beträgt, kann der Hauptsaldo 0 $ betragen. Der Nachrichtenprozessor lässt beispielsweise die API-Aufrufe zu, da er der Meinung ist, dass die Wallet noch 2 $ hat.
Apigee synchronisiert das Wallet-Guthaben eines Message Processors nahezu in Echtzeit, jedoch mit sehr geringen Verzögerungen. Sie können dieses Verhalten von Apigee nicht steuern oder konfigurieren. In diesem Fall werden die überschüssigen API-Aufrufe jedoch berücksichtigt. Nach der Verarbeitung aller API-Aufrufe des App-Entwicklers oder der AppGroup spiegelt der endgültige Betrag in der Wallet auch die Kosten für solche überschüssige API-Aufrufe wider. Wenn der App-Entwickler oder die AppGroup das Konto das nächste Mal neu lädt, muss der App-Entwickler oder die AppGroup zuerst einen eventuellen negativen Saldobetrag begleichen, um ein positives Guthaben zu haben.
Guthaben
Senden Sie eine POST-Anfrage an die folgende API, um dem Prepaid-Konto eines App-Entwicklers ein Guthaben gutzuschreiben:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:credit
Senden Sie eine POST-Anfrage an die folgende API, um dem Prepaid-Konto einer AppGroup ein Guthaben gutzuschreiben:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/appgroups/$APPGROUP_NAME/balance:credit
Weitere Informationen zur API finden Sie unter organizations.developers.balance.credit oder organizations.appgroups.balance.credit.
Das Gutschreiben eines Guthabens umfasst folgende Schritte in der angegebenen Reihenfolge:
- Ein App-Entwickler oder eine AppGroup zahlt über das Entwicklerportal mithilfe eines Zahlungs-Gateways auf das Konto ein.
- Das Entwicklerportal generiert eine eindeutige Transaktions-ID für die Einzahlung.
- Das Entwicklerportal aktualisiert das Entwicklerguthaben mithilfe der entsprechenden API, unabhängig davon, ob es sich um einen App-Entwickler oder eine AppGroup handelt.
Das folgende Beispiel zeigt den API-Aufruf für Schritt 3 und eine Gutschrift für den App-Entwickler von 150,21 $.
transactionId ist auf den Wert der Transaktions-ID der Einzahlungstransaktion gesetzt (Schritt 3).
curl -H "Authorization: Bearer $TOKEN" \
-H "Content-type: application/json" \
-X POST \
-d '{
"transactionAmount": {
"currencyCode": "USD",
"units": "150",
"nanos": 210000000
},
"transactionId": "ab31b63e-f8e8-11eb-9a03-0242ac130003"
}' \
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:credit
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"wallets": [
{
"balance": {
"currencyCode": "USD",
"units": "300",
"nanos": 710000000
},
"lastCreditTime": "9876543210"
},
{
"balance": {
"currencyCode": "INR",
"units": "10000",
"nanos": 600000000
},
"lastCreditTime": "1234567890"
}
]
}Guthaben anpassen
Wenn Sie ein Konto zu niedrig oder zu stark belastet haben, können Sie den adjustBalance verwenden, um den Kontostand zu verringern oder zu erhöhen.
Senden Sie eine POST-Anfrage an die folgende API, um beim Prepaid-Konto eines App-Entwicklers das Guthaben anzupassen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Senden Sie eine POST-Anfrage an die folgende API, um beim Prepaid-Konto einer AppGroup das Guthaben anzupassen:
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/appgroups/$APPGROUP_NAME/balance:adjust
Weitere Informationen zur API finden Sie unter organizations.developers.balanceadjustBalance oder organizations.appgroups.balance.adjustBalance.
Wenn Sie den Kontostand eines App-Entwicklers oder einer AppGroup reduzieren möchten, der nicht belastet wird, setzen Sie das Feld units in der Anfrage auf einen positiven Wert.
Im folgenden Beispiel wird das Guthaben im Prepaid-Konto eines App-Entwicklers um 50 USD verringert:
curl -H "Authorization: Bearer $TOKEN" \
-H "Content-type: application/json" \
-X POST \
-d '{
"adjustment": {
"units": "50",
"currencyCode": "USD"
}
}' \
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"wallets": [
{
"balance": {
"currencyCode": "USD",
"units": "150"
},
"lastCreditTime": "1635489199530"
}
]
}
Wenn Sie den Kontostand eines überlasteten App-Entwicklers oder einer überlasteten AppGroup erhöhen möchten, setzen Sie das Feld units in der Anfrage auf einen negativen Wert.
Im folgenden Beispiel wird das Guthaben im Prepaid-Konto eines App-Entwicklers um 50.1 USD erhöht:
curl -H "Authorization: Bearer $TOKEN" \
-H "Content-type: application/json" \
-X POST \
-d '{
"adjustment": {
"units": "-50",
"nanos": "100000000",
"currencyCode": "USD"
}
}' \
https://apigee.googleapis.com/v1/organizations/$YOUR_GOOGLE_PROJECT_ID/developers/$DEVELOPER_EMAIL_ID/balance:adjust
Wenn Sie den Befehl ausführen, wird eine Antwort ähnlich der folgenden angezeigt:
{
"wallets": [
{
"balance": {
"currencyCode": "USD",
"units": "200",
"nanos": 100000000
},
"lastCreditTime": "1635489199530"
}
]
}