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 de package de l'application à laquelle appartient l'abonnement parent.

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 forfait de base.

state

enum (State)

Uniquement en sortie. État actuel de l'offre. Peut être modifié à 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. Les 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 que les utilisateurs doivent remplir pour 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 comportant jusqu'à 20 tags personnalisés spécifiés pour cette offre et renvoyée à l'application via la bibliothèque Billing.

É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 et n'a jamais été proposée aux utilisateurs.
ACTIVE L'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 répétitions de cette phase. Si cette phase de l'offre n'est pas gratuite, le prix de cette phase est facturé à l'utilisateur à chaque récurrence.

duration

string

Obligatoire. Durée d'une seule récurrence 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 dans lesquels 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. Remplacement du prix de cette phase. Obligatoire. price_override ne peut être qu'un des éléments suivants :
price

object (Money)

Prix absolu payé par l'utilisateur pour cette phase d'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 sur la durée de la phase que l'utilisateur paie pour cette phase d'offre. Par exemple, si le prix du forfait de base dans cette région est de 12 $pour une période d'un an, une remise de 50% pour une phase de trois mois correspondra au 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 devient 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 dans cette région est de 12 $pour une période d'un an, une remise absolue de 1 $pour une phase de 3 mois correspondra au prix de 2 $. Le prix final ne peut pas être inférieur au prix minimal autorisé pour cette région.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Spécifiez que l'offre est sans frais.

RegionalSubscriptionOfferPhaseFreePriceOverride

Ce type ne comporte aucun champ.

Représente la configuration de remplacement 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 sera arrondi à l'unité facturable la plus proche (par exemple, des cents pour des dollars américains). 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 calculé au prorata sur la durée de la phase pendant laquelle l'utilisateur paie pour cette phase d'offre. Par exemple, si le prix du forfait de base dans cette région est de 12 $pour une période d'un an, une remise absolue de 1 $pour une phase de 3 mois correspondra au prix de 2 $. Le prix final ne peut pas être inférieur au prix minimal autorisé pour les nouvelles régions dans lesquelles Play peut être lancé.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Spécifiez que l'offre est sans frais.

OtherRegionsSubscriptionOfferPhasePrices

Informations sur les tarifs pour 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 EUR à utiliser dans toutes les nouvelles régions dans lesquelles Play peut être lancé.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Ce type ne comporte aucun champ.

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

SubscriptionOfferTargeting

Définit la règle à laquelle l'utilisateur doit se conformer 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é à l'offre définie 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 de l'offre pour la mise à niveau des utilisateurs les forfaits existants.

AcquisitionTargetingRule

Représente une règle de ciblage au format suivant : "Utilisateur n'avait jamais eu {scope} auparavant".

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

object (TargetingRuleScope)

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

TargetingRuleScope

Définit le champ d'application des abonnements qu'une règle de ciblage peut mettre en correspondance pour cibler des offres d'utilisateurs en fonction de 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 correspond à l'abonnement dans lequel cette offre est définie.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

La règle de ciblage actuelle s'applique à tout abonnement dans l'application parente.

specificSubscriptionInApp

string

Le champ d'application de la règle de ciblage actuelle correspond à l'abonnement avec l'ID d'abonnement spécifié. Doit être 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 pour 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 au format suivant: l'utilisateur dispose actuellement de {scope} [avec une période de facturation {billing_period}].

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

boolean

Offre limitée à une seule utilisation par utilisateur. Si elle est définie sur "True", un utilisateur ne pourra plus jamais en bénéficier s'il s'y est déjà abonné.

scope

object (TargetingRuleScope)

Obligatoire. Champ d'application des abonnements pris en compte par cette règle. 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 région auquel 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 est disponible pour les nouveaux abonnés dans la région spécifiée. L'abonnement des abonnés existants ne sera pas annulé si cette valeur est définie sur "false". Si aucune valeur n'est spécifiée, la valeur par défaut est "false".

OtherRegionsSubscriptionOfferConfig

Configuration pour tous les nouveaux pays où Play peut être lancé dans les pays spécifiés dans une offre d'abonnement.

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

boolean

Indique si l'offre d'abonnement est disponible dans de nouveaux pays où Play peut être 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'offre 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 offre unique

list

Répertorie toutes les offres associées à un abonnement donné.

patch

Met à jour une offre d'abonnement existante.