REST Resource: monetization.subscriptions.basePlans.offers

Ressource: SubscriptionOffer

Une seule offre temporaire

Représentation JSON
{
  "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)
    }
  ]
}
Champs
packageName

string

Obligatoire. Immuable. Nom du package de l'application à laquelle l'abonnement parent appartient.

productId

string

Obligatoire. Immuable. ID de l'abonnement parent auquel cette offre appartient.

basePlanId

string

Obligatoire. Immuable. ID du forfait de base auquel cette offre est une extension.

offerId

string

Obligatoire. Immuable. Identifiant unique de cette offre d'abonnement. Doit être unique dans le plan de base.

state

enum (State)

Uniquement en sortie. État actuel de cette offre. Vous pouvez modifier cet état à l'aide des actions "Activer" et "Désactiver". Remarque: l'état du forfait de base remplace cet état. Il est donc possible qu'une offre active ne soit pas disponible si le forfait de base ne l'est pas.

phases[]

object (SubscriptionOfferPhase)

Obligatoire. Phases de cette offre d'abonnement. Doit contenir au moins une et au plus deux entrées. Les utilisateurs recevront toujours toutes ces phases dans l'ordre spécifié.

targeting

object (SubscriptionOfferTargeting)

Conditions requises pour que les utilisateurs puissent bénéficier de cette offre. Représente les exigences que Play évaluera pour déterminer si une offre doit être renvoyée. Les développeurs peuvent filtrer davantage ces offres eux-mêmes.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

Obligatoire. Configuration spécifique à la région de cette offre. Doit contenir au moins une entrée.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

Configuration de toutes les nouvelles zones géographiques où Play sera lancé à l'avenir.

offerTags[]

object (OfferTag)

Liste de 20 balises personnalisées maximum spécifiées pour cette offre et renvoyées à l'application via la bibliothèque de facturation.

État

État actuel de l'offre d'abonnement.

Enums
STATE_UNSPECIFIED Valeur par défaut, ne doit jamais être utilisée.
DRAFT L'offre d'abonnement n'est pas disponible pour les utilisateurs et ne l'a jamais été.
ACTIVE Cette offre d'abonnement est disponible pour les nouveaux utilisateurs et les utilisateurs existants.
INACTIVE L'offre d'abonnement n'est pas disponible pour les nouveaux utilisateurs. Les utilisateurs existants conservent leur accès.

SubscriptionOfferPhase

Phase unique d'une offre d'abonnement.

Représentation JSON
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
Champs
recurrenceCount

integer

Obligatoire. Nombre de fois où cette phase se répète. Si cette phase de l'offre n'est pas sans frais, le prix de cette phase est facturé à l'utilisateur à chaque récurrence.

duration

string

Obligatoire. Durée d'une seule occurrence de cette phase. Spécifié au format ISO 8601.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

Obligatoire. Configuration spécifique à la région de cette phase de l'offre. Cette liste doit contenir exactement une entrée pour chaque région pour laquelle l'offre d'abonnement dispose d'une configuration régionale.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Informations tarifaires pour tous les nouveaux pays et régions où Play peut être lancé.

RegionalSubscriptionOfferPhaseConfig

Configuration d'une seule phase d'une offre d'abonnement dans une seule région.

Représentation JSON
{
  "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.
}
Champs
regionCode

string

Obligatoire. Immuable. Région à laquelle cette configuration s'applique.

Champ d'union price_override. Prix ignoré de cette phase. Obligatoire. price_override ne peut être qu'un des éléments suivants :
price

object (Money)

Prix absolu que l'utilisateur paie pour cette phase de l'offre. Le prix ne doit pas être inférieur au prix minimal autorisé pour cette région.

relativeDiscount

number

Fraction du prix du forfait de base au prorata de la durée de la phase que l'utilisateur paie pour cette phase de l'offre. Par exemple, si le prix du forfait de base pour cette région est de 12 $pour une période d'un an, une remise de 50% pour une phase de trois mois correspondra à un prix de 1,50 $. La remise doit être spécifiée sous la forme d'une fraction strictement supérieure à 0 et strictement inférieure à 1. Le prix obtenu est arrondi à l'unité facturable la plus proche (par exemple, centimes pour les USD). La remise relative est considérée comme non valide si le prix réduit est inférieur au prix minimal autorisé dans cette région.

absoluteDiscount

object (Money)

Montant absolu soustrait du prix du forfait de base au prorata de la durée de la phase pour laquelle l'utilisateur paie cette offre. Par exemple, si le prix du forfait de base pour cette région est de 12 $pour une période d'un an, une remise absolue de 1 $pour une phase de trois mois correspondra à un prix de 2 $. Le prix obtenu ne peut pas être inférieur au prix minimal autorisé pour cette région.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Définissez cette valeur pour indiquer que cette offre est sans frais.

RegionalSubscriptionOfferPhaseFreePriceOverride

Ce type ne comporte aucun champ.

Représente la configuration du forçage du prix sans frais pour une seule phase d'une offre d'abonnement

OtherRegionsSubscriptionOfferPhaseConfig

Configuration pour tous les nouveaux pays où Play peut être lancé pour une seule phase d'offre.

Représentation JSON
{

  // 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.
}
Champs
Champ d'union price_override. Prix ignoré de cette phase. Obligatoire. price_override ne peut être qu'un des éléments suivants :
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Prix absolu que l'utilisateur paie pour cette phase de l'offre. Le prix ne doit pas être inférieur au prix minimal autorisé pour les nouveaux pays dans lesquels Play peut être lancé.

relativeDiscount

number

Fraction du prix du forfait de base au prorata de la durée de la phase que l'utilisateur paie pour cette phase de l'offre. Par exemple, si le prix du forfait de base pour cette région est de 12 $pour une période d'un an, une remise de 50% pour une phase de trois mois correspondra à un prix de 1,50 $. La remise doit être spécifiée sous la forme d'une fraction strictement supérieure à 0 et strictement inférieure à 1. Le prix obtenu est arrondi à l'unité facturable la plus proche (par exemple, centimes pour les USD). La remise relative est considérée comme non valide si le prix réduit est inférieur au prix minimal autorisé dans les nouveaux pays où Play peut être lancé.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Montant absolu soustrait du prix du forfait de base au prorata de la durée de la phase pour laquelle l'utilisateur paie cette offre. Par exemple, si le prix du forfait de base pour cette région est de 12 $pour une période d'un an, une remise absolue de 1 $pour une phase de trois mois correspondra à un prix de 2 $. Le prix obtenu ne peut pas être inférieur au prix minimal autorisé pour les nouvelles zones géographiques dans lesquelles Play peut être lancé.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Définissez cette valeur pour indiquer que cette offre est sans frais.

OtherRegionsSubscriptionOfferPhasePrices

Informations tarifaires pour tous les nouveaux pays et régions où Play peut être lancé.

Représentation JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
Champs
usdPrice

object (Money)

Obligatoire. Prix en USD à utiliser pour tous les nouveaux pays dans lesquels Play peut être lancé.

eurPrice

object (Money)

Obligatoire. Prix en euros à utiliser pour tous les nouveaux pays dans lesquels Play peut être lancé.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Ce type ne comporte aucun champ.

Représente la configuration de remplacement du prix sans frais pour tous les nouveaux emplacements que Play peut lancer pour une seule phase d'offre.

SubscriptionOfferTargeting

Définit la règle à laquelle un utilisateur doit répondre pour recevoir cette offre.

Représentation JSON
{

  // 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.
}
Champs
Champ d'union rule. Laissez ce champ vide pour déterminer l'éligibilité des offres par le développeur. rule ne peut être qu'un des éléments suivants :
acquisitionRule

object (AcquisitionTargetingRule)

Règle de ciblage des offres pour l'acquisition de nouveaux utilisateurs.

upgradeRule

object (UpgradeTargetingRule)

Règle de ciblage des offres pour la mise à niveau des forfaits existants des utilisateurs.

AcquisitionTargetingRule

Représente une règle de ciblage de la forme: L'utilisateur n'a jamais eu {champ d'application} auparavant.

Représentation JSON
{
  "scope": {
    object (TargetingRuleScope)
  }
}
Champs
scope

object (TargetingRuleScope)

Obligatoire. Champ d'application de cette règle pour les abonnements. N'autorise que "cet abonnement" et "tout abonnement dans l'application".

TargetingRuleScope

Définit la portée des abonnements auxquels une règle de ciblage peut correspondre pour cibler des offres auprès des utilisateurs en fonction de leurs droits d'accès passés ou actuels.

Représentation JSON
{

  // 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.
}
Champs

Champ d'union scope.

scope ne peut être qu'un des éléments suivants :

thisSubscription

object (TargetingRuleScopeThisSubscription)

Le champ d'application de la règle de ciblage actuelle est l'abonnement dans lequel cette offre est définie.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

Le champ d'application de la règle de ciblage actuelle est tout abonnement dans l'application parente.

specificSubscriptionInApp

string

Le champ d'application de la règle de ciblage actuelle est l'abonnement associé à l'ID d'abonnement spécifié. Il doit s'agir d'un abonnement dans la même application parente.

TargetingRuleScopeThisSubscription

Ce type ne comporte aucun champ.

Représente le champ d'application de la règle de ciblage correspondant aux abonnements dans lesquels cette offre est définie.

TargetingRuleScopeAnySubscriptionInApp

Ce type ne comporte aucun champ.

Représente le champ d'application de la règle de ciblage correspondant à un abonnement dans l'application parente.

UpgradeTargetingRule

Représente une règle de ciblage de la forme: L'utilisateur dispose actuellement de {scope} [avec la période de facturation {billing_period}].

Représentation JSON
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
Champs
oncePerUser

boolean

Limitez cette offre à une seule fois par utilisateur. Si cette valeur est définie sur "true", un utilisateur ne pourra plus jamais bénéficier de cette offre s'il y a déjà souscrit.

scope

object (TargetingRuleScope)

Obligatoire. Champ d'application de cette règle pour les abonnements. N'autorise que "cet abonnement" et "abonnement spécifique dans l'application".

billingPeriodDuration

string

Durée spécifique de la période de facturation, spécifiée au format ISO 8601, à laquelle un utilisateur doit être actuellement abonné pour être éligible à cette règle. Si aucune valeur n'est spécifiée, les utilisateurs abonnés à n'importe quelle période de facturation sont mis en correspondance.

RegionalSubscriptionOfferConfig

Configuration d'une offre d'abonnement dans une seule région.

Représentation JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
Champs
regionCode

string

Obligatoire. Immuable. Code de la région à laquelle cette configuration s'applique, tel que défini par la norme ISO 3166-2 (par exemple, "US").

newSubscriberAvailability

boolean

Indique si l'offre d'abonnement dans la région spécifiée est disponible pour les nouveaux abonnés. Si cette valeur est définie sur "false", les abonnements existants ne seront pas résiliés. Si ce paramètre n'est pas spécifié, la valeur par défaut est "false".

OtherRegionsSubscriptionOfferConfig

Configuration pour les nouveaux pays dans lesquels Play peut être lancé, spécifiée dans une offre d'abonnement.

Représentation JSON
{
  "otherRegionsNewSubscriberAvailability": boolean
}
Champs
otherRegionsNewSubscriberAvailability

boolean

Indique si l'offre d'abonnement sera disponible dans les nouveaux pays où Play sera lancé à l'avenir. Si ce paramètre n'est pas spécifié, la valeur par défaut est "false".

Méthodes

activate

Active une offre d'abonnement.

batchGet

Lit une ou plusieurs offres d'abonnement.

batchUpdate

Met à jour un lot d'offres d'abonnement.

batchUpdateStates

Met à jour un lot d'états d'offres d'abonnement.

create

Crée une offre d'abonnement.

deactivate

Désactive une offre d'abonnement.

delete

Supprime une offre d'abonnement.

get

Lit une seule offre

list

Répertorie toutes les offres d'un abonnement donné.

patch

Met à jour une offre d'abonnement existante.