Back-End Ihrer SaaS-Anwendung für private Angebote einbinden

Auf dieser Seite wird erläutert, wie Sie das Back-End Ihres SaaS-Produkts für Private Offers (Version 2) einbinden, das im Producer Portal verfügbar ist.

Diese Schritte sind für VM-Produkte nicht erforderlich. Weitere Anleitungen zur Verwendung von Berechtigungen zum Verfolgen der Nutzung finden Sie in der Dokumentation unter Back-End Ihrer Anwendung einbinden.

Hinweis

  • Ihr Produkt muss in Google Cloud Marketplace eingebunden und dort aufgeführt sein. Mindestens eines Ihrer Preismodelle muss öffentlich verfügbar sein.

  • Sie müssen das Produkt in das Producer Portal aufgenommen und das Back-End Ihrer Anwendung für das für das Angebot relevante Preismodell eingebunden haben. Die relevanten Schritte finden Sie unter Back-End Ihrer Anwendung einbinden.

Berechtigungen verwalten

Wenn ein Kunde ein privates Angebot kauft, erstellt Google eine Berechtigung, die angibt, dass der Kunde das Angebot über Google Cloud Marketplace gekauft hat. In diesem Abschnitt wird beschrieben, wie Sie Berechtigungen für Ihre privaten Angebote mit der Partner Procurement API verwalten können.

Weitere Informationen zur Verwendung der Partner Procurement API für private Angebote finden Sie in der Referenzdokumentation.

Einige Verwaltungsaufgaben wie das Genehmigen von Berechtigungen können im Producer Portal ausgeführt werden, wenn Sie die Liste Ihrer Angebote aufrufen.

Berechtigung genehmigen oder ablehnen

Wenn ein Kunde ein privates Angebot kauft, erstellt Google Cloud Marketplace eine Berechtigung und sendet die folgende Pub/Sub-Nachricht an Ihre Anwendung:

{
  "eventId": "...",
  "eventType": "ENTITLEMENT_CREATION_REQUESTED",
  "entitlement": {
  "id": "ENTITLEMENT_ID",
  "updateTime": "...",
  "newOfferDuration": "P1Y6M", // Contract duration for the offer
  "newOfferEndTime": "", // Ending time for the offer
  },
}

ENTITLEMENT_ID ist in diesem Fall eine vom Google Cloud Marketplace erstellte ID.

Wenn das Angebot mit einer Dauer erstellt wurde, wird in der Nachricht die Dauer in Jahren und Monaten angezeigt. Das Feld newOfferEndTime ist dann leer. Wurde das Angebot mit einer bestimmten Endzeit erstellt, wird in der Nachricht die Endzeit des Angebots angezeigt und das Feld newOfferDuration ist leer.

Aktualisieren Sie in Ihrem System das Konto des Nutzers, um anzuzeigen, dass er das Angebot erworben hat. Senden Sie zum Genehmigen der Berechtigung eine HTTP POST-Anfrage an die Partnerbeschaffungs-API und senden Sie die ENTITLEMENT_ID, die Sie genehmigen:

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approve

Wenn Sie eine Berechtigung ablehnen möchten, verwenden Sie stattdessen die Methode reject in Ihrer HTTP POST-Anfrage:

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:reject

Aktives Angebot ersetzen

Je nachdem, wie Sie Ihr privates Angebot eingerichtet haben, kann Ihr Kunde sein Angebot möglicherweise ersetzen. Wenn ein Kunde ein neues privates Angebot auswählt, erhalten Sie eine Pub/Sub-Nachricht im folgenden Format:

{
  "eventId": "...",
  "eventType": "ENTITLEMENT_PLAN_CHANGE_REQUESTED",
  "entitlement": {
  "id": "ENTITLEMENT_ID",
  "newPlan": "ultimate",   // New plan for the offer,
  "newOffer": "OFFER2",    // New offer,
  "updateTime": "...",
  "newOfferDuration": "P2Y",   // Contract duration for the new offer
  },
}

OFFER2 ist das Ersatzangebot und ENTITLEMENT_ID eine vom Google Cloud Marketplace erstellte ID. Die Angebotsdauer wird in Jahren und Monaten angegeben.

Stellen Sie zum Genehmigen der Angebotsersetzung die folgende HTTP POST-Anfrage an die Partnerbeschaffungs-API:

POST v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID:approvePlanChange

Die Antragsstelle muss den Tarif für das genehmigte Angebot haben:

{
  "pendingPlanName": PLAN_NAME
}

Nachdem die Änderung genehmigt wurde, erhalten Sie eine weitere Pub/Sub-Nachricht, sobald die Änderung wirksam wird. In der Nachricht ändert sich das Feld eventType in ENTITLEMENT_PLAN_CHANGED. Stellen Sie zum Prüfen des Status eines Tarifs die folgende HTTP GET-Anfrage an die Partnerbeschaffungs-API.

GET v1/providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID

Die Antwort ähnelt der folgenden, wobei das Feld „state“ anzeigt, ob das neue Preismodell aktiv ist oder ob der Wechsel noch aussteht.

{
  "name": "providers/YOUR_PARTNER_ID/entitlements/ENTITLEMENT_ID",
  "provider": "YOUR_PARTNER_ID",
  "account": "USER_ACCOUNT_ID",
  "product": "example-server",
  "Offer":   "OFFER1",
  "plan": "pro",
  "state": "ENTITLEMENT_PENDING_PLAN_CHANGE",
  "newPendingOffer": "OFFER2",
  "newPendingPlan": "ultimate",
  "newOfferDuration": "P2Y",
  "newOfferEndTime": "",
  ...
}

Sonstige Berechtigungsaufgaben beenden

Weitere Berechtigungsaufgaben finden Sie in der öffentlichen Dokumentation zum Google Cloud Marketplace:

Liste der Ereignistypen für Kontoaufgaben privater Angebote

Die folgende Tabelle enthält eventTypes, die Ihre Anwendung in Pub/Sub-Nachrichten für private Angebote empfangen kann.

Eine vollständige Liste finden Sie unter Liste der Ereignistypen für Kontoaufgaben.

eventType Beschreibung
ENTITLEMENT_OFFER_ENDED Zeigt an, dass das private Angebot eines Kunden beendet wurde. Das Angebot löst entweder ein ENTITLEMENT_CANCELLED-Ereignis aus oder bleibt mit nicht rabattierten Preisen aktiv.