REST Resource: monetization.subscriptions.basePlans.offers

Ressource: SubscriptionOffer

Ein einzelnes, vorübergehendes Angebot

JSON-Darstellung
{
  "packageName": string,
  "productId": string,
  "basePlanId": string,
  "offerId": string,
  "state": enum (State),
  "phases": [
    {
      object (SubscriptionOfferPhase)
    }
  ],
  "targeting": {
    object (SubscriptionOfferTargeting)
  },
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferConfig)
  },
  "offerTags": [
    {
      object (OfferTag)
    }
  ]
}
Felder
packageName

string

Erforderlich. Nicht veränderbar. Der Paketname der App, zu der das übergeordnete Abo gehört.

productId

string

Erforderlich. Nicht veränderbar. Die ID des übergeordneten Abos, zu dem dieses Angebot gehört.

basePlanId

string

Erforderlich. Nicht veränderbar. Die ID des Basis-Abos, auf das sich dieses Angebot bezieht.

offerId

string

Erforderlich. Nicht veränderbar. Eindeutige ID dieses Aboangebots. Muss innerhalb des Basis-Tarifs eindeutig sein.

state

enum (State)

Nur Ausgabe. Der aktuelle Status dieses Angebots. Kann mit den Aktionen „Aktivieren“ und „Deaktivieren“ geändert werden. Hinweis: Der Status des Basis-Abos hat Vorrang vor diesem Status. Ein aktives Angebot ist also möglicherweise nicht verfügbar, wenn das Basis-Abo nicht aktiv ist.

phases[]

object (SubscriptionOfferPhase)

Erforderlich. Die Phasen dieses Abo-Angebots. Muss mindestens einen und höchstens zwei Einträge enthalten. Nutzer durchlaufen diese Phasen immer in der angegebenen Reihenfolge.

targeting

object (SubscriptionOfferTargeting)

Die Voraussetzungen, die Nutzer erfüllen müssen, um für dieses Angebot infrage zu kommen. Stellt die Anforderungen dar, die von Play ausgewertet werden, um zu entscheiden, ob ein Angebot zurückgegeben werden soll. Entwickler können diese Angebote selbst weiter filtern.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

Erforderlich. Die regionsspezifische Konfiguration dieses Angebots. Muss mindestens einen Eintrag enthalten.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

Die Konfiguration für alle neuen Standorte, an denen Play in Zukunft eingeführt wird.

offerTags[]

object (OfferTag)

Liste mit bis zu 20 benutzerdefinierten Tags, die für dieses Angebot angegeben und über die Abrechnungsbibliothek an die App zurückgegeben werden.

Status

Der aktuelle Status des Aboangebots.

Enums
STATE_UNSPECIFIED Standardwert, sollte nie verwendet werden.
DRAFT Das Aboangebot ist und war für Nutzer nie verfügbar.
ACTIVE Das Aboangebot ist für neue und bestehende Nutzer verfügbar.
INACTIVE Das Aboangebot ist nicht für neue Nutzer verfügbar. Bestehende Nutzer behalten den Zugriff.

SubscriptionOfferPhase

Eine einzelne Phase eines Aboangebots.

JSON-Darstellung
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
Felder
recurrenceCount

integer

Erforderlich. Die Anzahl der Wiederholungen dieser Phase. Wenn diese Angebotsphase nicht kostenlos ist, wird dem Nutzer bei jeder Wiederholung der Preis dieser Angebotsphase in Rechnung gestellt.

duration

string

Erforderlich. Die Dauer eines einzelnen Wiederholungszeitraums dieser Phase. Im ISO 8601-Format angegeben.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

Erforderlich. Die regionsspezifische Konfiguration dieser Angebotsphase. Diese Liste muss genau einen Eintrag für jede Region enthalten, für die das Aboangebot eine regionale Konfiguration hat.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Preisinformationen für alle neuen Standorte, an denen Play eingeführt wird.

RegionalSubscriptionOfferPhaseConfig

Konfiguration für eine einzelne Phase eines Aboangebots in einer einzelnen Region.

JSON-Darstellung
{
  "regionCode": string,

  // Union field price_override can be only one of the following:
  "price": {
    object (Money)
  },
  "relativeDiscount": number,
  "absoluteDiscount": {
    object (Money)
  },
  "free": {
    object (RegionalSubscriptionOfferPhaseFreePriceOverride)
  }
  // End of list of possible types for union field price_override.
}
Felder
regionCode

string

Erforderlich. Nicht veränderbar. Die Region, für die diese Konfiguration gilt.

Union-Feld price_override. Die Preisüberschreibung für diese Phase. Erforderlich. Für price_override ist nur einer der folgenden Werte zulässig:
price

object (Money)

Der absolute Preis, den der Nutzer für diese Angebotsphase bezahlt. Der Preis darf nicht niedriger als der für diese Region zulässige Mindestpreis sein.

relativeDiscount

number

Der Bruchteil des Basis-Abo-Preises, der anteilig über die Dauer des Zeitraums berechnet wird und den der Nutzer für diesen Angebotszeitraum bezahlt. Wenn der Basis-Abo-Preis für diese Region beispielsweise 12 $für einen Zeitraum von einem Jahr beträgt, entspricht ein Rabatt von 50% für einen Zeitraum von 3 Monaten einem Preis von 1, 50 $. Der Rabatt muss als Bruch angegeben werden, der größer als 0 und kleiner als 1 ist. Der resultierende Preis wird auf die nächste abrechenbare Einheit gerundet (z.B. Cent für US-Dollar). Der relative Rabatt gilt als ungültig, wenn der Rabattpreis unter dem in dieser Region zulässigen Mindestpreis liegt.

absoluteDiscount

object (Money)

Der absolute Geldbetrag, der vom anteilig berechneten Preis für das Basis-Abo abgezogen wird und den der Nutzer für diese Angebotsphase zahlt. Wenn der Basis-Abo-Preis für diese Region beispielsweise 12 $für einen Zeitraum von einem Jahr beträgt, entspricht ein absoluter Rabatt von 1 $für einen Zeitraum von 3 Monaten einem Preis von 2 $. Der resultierende Preis darf nicht niedriger sein als der für diese Region zulässige Mindestpreis.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Gibt an, dass dieses Angebot kostenlos ist.

RegionalSubscriptionOfferPhaseFreePriceOverride

Dieser Typ hat keine Felder.

Stellt die Konfiguration für die Überschreibung des kostenlosen Preises für eine einzelne Phase eines Aboangebots dar.

OtherRegionsSubscriptionOfferPhaseConfig

Konfiguration für alle neuen Standorte, an denen Play für eine einzelne Angebotsphase eingeführt wird.

JSON-Darstellung
{

  // Union field price_override can be only one of the following:
  "otherRegionsPrices": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "relativeDiscount": number,
  "absoluteDiscounts": {
    object (OtherRegionsSubscriptionOfferPhasePrices)
  },
  "free": {
    object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)
  }
  // End of list of possible types for union field price_override.
}
Felder
Union-Feld price_override. Die Preisüberschreibung für diese Phase. Erforderlich. Für price_override ist nur einer der folgenden Werte zulässig:
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Der absolute Preis, den der Nutzer für diese Angebotsphase bezahlt. Der Preis darf nicht niedriger sein als der Mindestpreis, der für neue Standorte gilt, an denen Play eingeführt wird.

relativeDiscount

number

Der Bruchteil des Basis-Abo-Preises, der anteilig über die Dauer des Zeitraums berechnet wird und den der Nutzer für diesen Angebotszeitraum bezahlt. Wenn der Basis-Abo-Preis für diese Region beispielsweise 12 $für einen Zeitraum von einem Jahr beträgt, entspricht ein Rabatt von 50% für einen Zeitraum von 3 Monaten einem Preis von 1, 50 $. Der Rabatt muss als Bruch angegeben werden, der größer als 0 und kleiner als 1 ist. Der resultierende Preis wird auf die nächste abrechenbare Einheit gerundet (z.B. Cent für US-Dollar). Der relative Rabatt gilt als ungültig, wenn der Rabattpreis niedriger ist als der Mindestpreis, der an neuen Standorten, an denen Google Play eingeführt wird, zulässig ist.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Der absolute Geldbetrag, der vom anteilig berechneten Preis für das Basis-Abo abgezogen wird und den der Nutzer für diese Angebotsphase zahlt. Wenn der Basis-Abo-Preis für diese Region beispielsweise 12 $für einen Zeitraum von einem Jahr beträgt, entspricht ein absoluter Rabatt von 1 $für einen Zeitraum von 3 Monaten einem Preis von 2 $. Der resultierende Preis darf nicht niedriger sein als der Mindestpreis, der für neue Standorte gilt, an denen Play eingeführt wird.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Gibt an, dass dieses Angebot kostenlos ist.

OtherRegionsSubscriptionOfferPhasePrices

Preisinformationen für alle neuen Standorte, an denen Play eingeführt wird.

JSON-Darstellung
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
Felder
usdPrice

object (Money)

Erforderlich. Preis in US-Dollar, der für alle neuen Standorte verwendet werden soll, an denen Play eingeführt wird.

eurPrice

object (Money)

Erforderlich. Preis in EUR, der für alle neuen Standorte verwendet werden soll, an denen Play eingeführt wird.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Dieser Typ hat keine Felder.

Stellt die Konfiguration für die Überschreibung des kostenlosen Preises für alle neuen Standorte dar, die Play für eine einzelne Angebotsphase einführen kann.

SubscriptionOfferTargeting

Definiert die Regel, die ein Nutzer erfüllen muss, um dieses Angebot zu erhalten.

JSON-Darstellung
{

  // Union field rule can be only one of the following:
  "acquisitionRule": {
    object (AcquisitionTargetingRule)
  },
  "upgradeRule": {
    object (UpgradeTargetingRule)
  }
  // End of list of possible types for union field rule.
}
Felder
Union-Feld rule. Lassen Sie das Feld leer, wenn die Angebotsberechtigung vom Entwickler festgelegt werden soll. Für rule ist nur einer der folgenden Werte zulässig:
acquisitionRule

object (AcquisitionTargetingRule)

Regel für die Ausrichtung von Angeboten zur Neukundenakquisition.

upgradeRule

object (UpgradeTargetingRule)

Regel für das Targeting von Angeboten zum Upgraden der bestehenden Abos von Nutzern.

AcquisitionTargetingRule

Stellt eine Targeting-Regel in der Form dar: Der Nutzer hatte {scope} noch nie.

JSON-Darstellung
{
  "scope": {
    object (TargetingRuleScope)
  }
}
Felder
scope

object (TargetingRuleScope)

Erforderlich. Der Geltungsbereich der Abos, die von dieser Regel berücksichtigt werden. Es sind nur „Dieses Abo“ und „Beliebiges Abo in der App“ zulässig.

TargetingRuleScope

Definiert den Umfang der Abos, die mit einer Ausrichtungsregel abgeglichen werden können, um Angebote basierend auf früheren oder aktuellen Berechtigungen auf Nutzer auszurichten.

JSON-Darstellung
{

  // Union field scope can be only one of the following:
  "thisSubscription": {
    object (TargetingRuleScopeThisSubscription)
  },
  "anySubscriptionInApp": {
    object (TargetingRuleScopeAnySubscriptionInApp)
  },
  "specificSubscriptionInApp": string
  // End of list of possible types for union field scope.
}
Felder

Union-Feld scope.

Für scope ist nur einer der folgenden Werte zulässig:

thisSubscription

object (TargetingRuleScopeThisSubscription)

Der Umfang der aktuellen Ausrichtungsregel ist das Abo, in dem dieses Angebot definiert ist.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

Der Bereich der aktuellen Targeting-Regel umfasst alle Abos in der übergeordneten App.

specificSubscriptionInApp

string

Der Umfang der aktuellen Targeting-Regel ist das Abo mit der angegebenen Abo-ID. Es muss sich um ein Abo innerhalb derselben übergeordneten App handeln.

TargetingRuleScopeThisSubscription

Dieser Typ hat keine Felder.

Stellt den Bereich der Targeting-Regel dar, der den Abos entspricht, in denen dieses Angebot definiert ist.

TargetingRuleScopeAnySubscriptionInApp

Dieser Typ hat keine Felder.

Stellt den Bereich der Targeting-Regel dar, der allen Abos in der übergeordneten App entspricht.

UpgradeTargetingRule

Stellt eine Targeting-Regel in der Form dar: Der Nutzer hat derzeit {scope} [mit dem Abrechnungszeitraum {billing_period}].

JSON-Darstellung
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
Felder
oncePerUser

boolean

Dieses Angebot kann nur einmal pro Nutzer genutzt werden. Wenn diese Option auf „true“ gesetzt ist, kann ein Nutzer dieses Angebot nie wieder in Anspruch nehmen, wenn er es bereits abonniert hat.

scope

object (TargetingRuleScope)

Erforderlich. Der Geltungsbereich der Abos, die von dieser Regel berücksichtigt werden. Es sind nur „Dieses Abo“ und „Bestimmtes Abo in der App“ zulässig.

billingPeriodDuration

string

Die Dauer des Abrechnungszeitraums, die ein Nutzer derzeit abonniert haben muss, um für diese Regel infrage zu kommen. Die Angabe erfolgt im ISO 8601-Format. Wenn nicht angegeben, werden Nutzer mit einem Abo für einen beliebigen Abrechnungszeitraum berücksichtigt.

RegionalSubscriptionOfferConfig

Konfiguration für ein Aboangebot in einer einzelnen Region.

JSON-Darstellung
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
Felder
regionCode

string

Erforderlich. Nicht veränderbar. Der Regionscode, für den diese Konfiguration gilt, gemäß ISO 3166-2, z.B. „US“.

newSubscriberAvailability

boolean

Gibt an, ob das Aboangebot in der angegebenen Region für neue Abonnenten verfügbar ist. Das Abo bestehender Abonnenten wird nicht gekündigt, wenn dieser Wert auf „false“ gesetzt ist. Wenn keine Angabe erfolgt, wird standardmäßig „false“ verwendet.

OtherRegionsSubscriptionOfferConfig

Konfiguration für alle neuen Standorte, an denen Play eingeführt werden kann, die in einem Aboangebot angegeben sind.

JSON-Darstellung
{
  "otherRegionsNewSubscriberAvailability": boolean
}
Felder
otherRegionsNewSubscriberAvailability

boolean

Ob das Aboangebot an neuen Standorten verfügbar sein wird, an denen Google Play in Zukunft eingeführt wird. Wenn keine Angabe erfolgt, wird standardmäßig „false“ verwendet.

Methoden

activate

Aktiviert ein Aboangebot.

batchGet

Liest mindestens ein Aboangebot.

batchUpdate

Aktualisiert eine Gruppe von Aboangeboten.

batchUpdateStates

Aktualisiert den Status einer Reihe von Abo-Angeboten.

create

Erstellt ein neues Aboangebot.

deactivate

Deaktiviert ein Aboangebot.

delete

Löscht ein Aboangebot.

get

Liest ein einzelnes Angebot

list

Listet alle Angebote für ein bestimmtes Abo auf.

patch

Aktualisiert ein vorhandenes Aboangebot.

Fehlercodes

Die Vorgänge dieser Ressource geben die folgenden HTTP-Fehlercodes zurück:

Fehlercode Grund Auflösung
5xx Allgemeiner Fehler auf dem Google Play-Server. Wiederholen Sie Ihre Anfrage.

Wenn das Problem weiterhin besteht, wenden Sie sich an Ihren Google Play-Kundenbetreuer oder senden Sie eine Supportanfrage. Prüfen Sie das Play-Status-Dashboard auf bekannte Ausfälle.

409 Fehler beim Aktualisieren der Gleichzeitigkeit.

Es wurde versucht, ein Objekt zu aktualisieren, das gerade aktualisiert wird. Beispiel: Ein Kauf wird bestätigt, indem gleichzeitig die Methode acknowledgePurchase() der Play Billing Library und die Methode purchases.products.acknowledge der Play Developer API aufgerufen werden.

Wiederholen Sie Ihre Anfrage.