REST Resource: monetization.subscriptions.basePlans.offers

Ressource: SubscriptionOffer

Ein einzelnes, zeitlich begrenztes 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, für das dieses Angebot eine Verlängerung ist.

offerId

string

Erforderlich. Nicht veränderbar. Eindeutige ID dieses Aboangebots. Darf innerhalb des Basis-Abos nur einmal vorkommen.

state

enum (State)

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

phases[]

object (SubscriptionOfferPhase)

Erforderlich. Die Phasen dieses Aboangebots. Muss mindestens einen Eintrag enthalten, darf aber höchstens fünf enthalten. Die Nutzer erhalten immer alle diese Phasen in der angegebenen Reihenfolge. Nach der anfänglichen Erstellung können Phasen nicht mehr hinzugefügt, entfernt oder neu angeordnet werden.

targeting

object (SubscriptionOfferTargeting)

Die Anforderungen, die Nutzer erfüllen müssen, um dieses Angebot in Anspruch nehmen zu können. Stellt die Anforderungen dar, die Google Play prüft, um zu entscheiden, ob ein Angebot zurückgegeben werden soll. Entwickler können diese Angebote auch selbst 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, die Google Play möglicherweise in Zukunft veröffentlicht.

offerTags[]

object (OfferTag)

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

Status

Der aktuelle Status des Aboangebots.

Enums
STATE_UNSPECIFIED Standardwert, sollte niemals verwendet werden.
DRAFT Das Aboangebot ist für Nutzer nicht verfügbar und war dies auch noch nie.
ACTIVE Das Aboangebot gilt sowohl für neue als auch für bestehende Nutzer.
INACTIVE Das Aboangebot ist für neue Nutzer nicht verfügbar. Bestehende Nutzer haben weiterhin 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 einer einzelnen Wiederholung dieser Phase. Im Format ISO 8601 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 Google Play eingeführt werden kann.

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 in dieser 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 zahlt. Der Preis darf nicht unter dem für diese Region zulässigen Mindestpreis liegen.

relativeDiscount

number

Der Anteil des Basis-Abos-Preises, der anteilig für die Laufzeit der Phase berechnet wird, die der Nutzer für diese Angebotsphase zahlt. Wenn der Preis für das Basis-Abo für diese Region beispielsweise 12 € für einen Zeitraum von einem Jahr beträgt, würde ein Rabatt von 50% für eine Phase von 3 Monaten einem Preis von 1, 50 € entsprechen. Der Rabatt muss als Bruch größer als 0 und kleiner als 1 angegeben werden. Der resultierende Preis wird auf die nächste abrechenbare Einheit aufgerundet (z.B. Cent für USD). Der relative Rabatt gilt als ungültig, wenn der Rabattpreis am Ende unter dem in dieser Region zulässigen Mindestpreis liegt.

absoluteDiscount

object (Money)

Der absolute Geldbetrag, der vom Preis des Basis-Abos anteilig über die Dauer der Phase abgezogen wird, die der Nutzer für diese Angebotsphase zahlt. Wenn der Preis für das Basis-Abo für diese Region beispielsweise 12 € für einen Zeitraum von 1 Jahr beträgt, würde ein absoluter Rabatt von 1 € für eine Phase von 3 Monaten einem Preis von 2 € entsprechen. Der resultierende Preis darf nicht unter dem für diese Region zulässigen Mindestpreis liegen.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Legen Sie fest, dass dieses Angebot kostenlos abgerufen werden kann.

RegionalSubscriptionOfferPhaseFreePriceOverride

Dieser Typ hat keine Felder.

Stellt die Konfiguration der kostenlosen Preisüberschreibung für eine einzelne Phase eines Aboangebots dar

OtherRegionsSubscriptionOfferPhaseConfig

Konfiguration für neue Standorte, an denen Google Play für eine einzelne Angebotsphase eingeführt werden kann.

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 in dieser 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 zahlt. Der Preis darf nicht unter dem Mindestpreis für neue Orte liegen, an denen Google Play eingeführt werden kann.

relativeDiscount

number

Der Anteil des Basis-Abos-Preises, der anteilig für die Laufzeit der Phase berechnet wird, die der Nutzer für diese Angebotsphase zahlt. Wenn der Preis für das Basis-Abo für diese Region beispielsweise 12 € für einen Zeitraum von einem Jahr beträgt, würde ein Rabatt von 50% für eine Phase von 3 Monaten einem Preis von 1, 50 € entsprechen. Der Rabatt muss als Bruch größer als 0 und kleiner als 1 angegeben werden. Der resultierende Preis wird auf die nächste abrechenbare Einheit aufgerundet (z.B. Cent für USD). Der relative Rabatt gilt als ungültig, wenn der Rabattpreis am Ende unter dem Mindestpreis liegt, der in einer neuen Google Play-Umgebung zulässig ist.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Der absolute Geldbetrag, der vom Preis des Basis-Abos anteilig über die Dauer der Phase abgezogen wird, die der Nutzer für diese Angebotsphase zahlt. Wenn der Preis für das Basis-Abo für diese Region beispielsweise 12 € für einen Zeitraum von 1 Jahr beträgt, würde ein absoluter Rabatt von 1 € für eine Phase von 3 Monaten einem Preis von 2 € entsprechen. Der resultierende Preis darf nicht unter dem Mindestpreis für neue Google Play-Standorte liegen.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Legen Sie fest, dass dieses Angebot kostenlos abgerufen werden kann.

OtherRegionsSubscriptionOfferPhasePrices

Preisinformationen für alle neuen Standorte, an denen Google Play eingeführt werden kann.

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

object (Money)

Erforderlich. Preis in US-Dollar, der für neue Play-Standorte verwendet werden soll.

eurPrice

object (Money)

Erforderlich. Der Preis in Euro, der für neue Play-Standorte verwendet werden soll.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Dieser Typ hat keine Felder.

Stellt die Konfiguration der kostenlosen Preisüberschreibung für alle neuen Standorte dar, die Google Play für eine einzelne Angebotsphase starten 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. Wenn Sie das Feld leer lassen, wird der vom Entwickler festgelegte Anspruch auf das Angebot erhoben. Für rule ist nur einer der folgenden Werte zulässig:
acquisitionRule

object (AcquisitionTargetingRule)

Targeting-Regel für Angebot für die Gewinnung neuer Nutzer.

upgradeRule

object (UpgradeTargetingRule)

Targeting-Regel für Angebot für Upgrade von Nutzern bestehenden Abos.

AcquisitionTargetingRule

Stellt eine Ausrichtungsregel mit folgendem Format dar: Nutzer hatte noch nie {scope}.

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

object (TargetingRuleScope)

Erforderlich. Der Umfang der Abos, die für diese Regel berücksichtigt werden. Erlaubt nur „dieses Abo“ und „Alle Abos in der App“.

TargetingRuleScope

Definiert den Umfang von Abos, die mit einer Targeting-Regel abgeglichen werden können, um Angebote basierend auf vergangenen 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 Geltungsbereich der aktuellen Ausrichtungsregel bezieht sich auf das Abo, in dem dieses Angebot definiert ist.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

Die aktuelle Ausrichtungsregel bezieht sich auf ein beliebiges Abo in der übergeordneten App.

specificSubscriptionInApp

string

Der Geltungsbereich 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.

Der Geltungsbereich der Ausrichtungsregel für die Abos, in denen dieses Angebot definiert ist.

TargetingRuleScopeAnySubscriptionInApp

Dieser Typ hat keine Felder.

Der Geltungsbereich der Ausrichtungsregel, der einem Abo in der übergeordneten App entspricht

UpgradeTargetingRule

Ausrichtungsregel mit folgendem Format: Nutzer hat derzeit {scope} [mit Abrechnungszeitraum {billing_period}].

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

boolean

Dieses Angebot ist auf einmal pro Nutzer beschränkt. Wenn die Richtlinie auf „true“ gesetzt ist, kann ein Nutzer das Angebot nicht mehr in Anspruch nehmen, wenn er dieses Angebot schon einmal abonniert hat.

scope

object (TargetingRuleScope)

Erforderlich. Der Umfang der Abos, die für diese Regel berücksichtigt werden. Erlaubt nur „dieses Abo“ und „Bestimmtes Abo in der App“.

billingPeriodDuration

string

Die Dauer des Abrechnungszeitraums im Format ISO 8601, die ein Nutzer derzeit abonniert haben muss, um diese Regel anwenden zu können. Wenn nicht angegeben, werden Nutzer mit einem beliebigen Abrechnungszeitraum abgeglichen.

RegionalSubscriptionOfferConfig

Konfiguration für ein Aboangebot in einer einzelnen Region.

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

string

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

newSubscriberAvailability

boolean

Gibt an, ob das Aboangebot in der angegebenen Region für neue Abonnenten verfügbar ist. Das Abo für bestehende 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 Google Play eingeführt werden kann, wie im Rahmen eines Aboangebots angegeben.

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

boolean

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

Methoden

activate

Aktiviert ein Aboangebot.

batchGet

Liest ein oder mehrere Aboangebote.

batchUpdate

Aktualisiert eine Reihe von Aboangeboten.

batchUpdateStates

Aktualisiert einen Batch von Aboangebotsstatus.

create

Erstellt ein neues Aboangebot.

deactivate

Deaktiviert ein Aboangebot.

delete

Löscht ein Aboangebot.

get

Liest ein einzelnes Angebot

list

Listet alle Angebote unter einem bestimmten Abo auf.

patch

Aktualisiert ein bestehendes Aboangebot.