REST Resource: monetization.subscriptions.basePlans.offers

Ressource: SubscriptionOffer

Une offre temporaire unique

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. ID unique de cette offre d'abonnement. Doit être unique dans le forfait de base.

state

enum (State)

Uniquement en sortie. État actuel de cette offre. Peut être modifié à l'aide des actions Activer et Désactiver. Remarque: L'état du forfait de base prévaut sur celui-ci. Il est donc possible qu'une offre active ne soit pas disponible si le forfait de base n'est pas actif.

phases[]

object (SubscriptionOfferPhase)

Obligatoire. Phases de cette offre d'abonnement. Doit contenir au moins une entrée et peut en contenir cinq au maximum. Les utilisateurs recevront toujours toutes ces phases dans l'ordre spécifié. Les phases ne peuvent pas être ajoutées, supprimées ni réorganisées après la création initiale.

targeting

object (SubscriptionOfferTargeting)

Il s'agit des conditions que les utilisateurs doivent remplir pour pouvoir bénéficier de cette offre. Représente les exigences que Play évaluera pour décider si une offre doit être renvoyée. Les développeurs peuvent filtrer eux-mêmes ces offres.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

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

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

La configuration de tout nouveau pays où Play pourrait être lancé à l'avenir

offerTags[]

object (OfferTag)

Liste comportant un maximum de 20 balises personnalisées 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 et n'a jamais été proposée aux utilisateurs.
ACTIVE L'offre d'abonnement est disponible pour les utilisateurs nouveaux et 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 d'offre n'est pas sans frais, le prix de cette phase d'offre 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 d'offre. Cette liste doit contenir exactement une entrée pour chaque région pour laquelle l'offre d'abonnement a une configuration régionale.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Informations tarifaires pour les nouvelles régions dans lesquelles Play peut être lancé.

RegionalSubscriptionOfferPhaseConfig

Configuration pour 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
  }
  // 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 de prix de cette phase. Obligatoire. price_override ne peut être qu'un des éléments suivants :
price

object (Money)

Prix absolu que paie 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 par rapport à la durée que l'utilisateur paie pour cette phase d'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% sur une phase de trois mois correspondra à un prix de 1,50 $. La remise doit être exprimée sous la forme d'une fraction strictement supérieure à 0 et inférieure à 1. Le prix obtenu sera arrondi à l'unité facturable la plus proche (par exemple, cents 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 que l'utilisateur paie pour cette phase d'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 correspond à un prix de 2 $. Il est possible que le prix obtenu ne soit pas inférieur au prix minimal autorisé pour cette région.

free

object

Définissez cette option pour indiquer que l'offre est sans frais.

OtherRegionsSubscriptionOfferPhaseConfig

Configuration pour toute nouvelle région dans laquelle Play peut être lancé en 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
  }
  // End of list of possible types for union field price_override.
}
Champs
Champ d'union price_override. Remplacement de prix de cette phase. Obligatoire. price_override ne peut être qu'un des éléments suivants :
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Prix absolu que paie l'utilisateur pour cette phase d'offre. Le prix ne doit pas être inférieur au prix minimal autorisé pour les nouvelles régions dans lesquelles Play peut être lancé.

relativeDiscount

number

Fraction du prix du forfait de base au prorata par rapport à la durée que l'utilisateur paie pour cette phase d'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% sur une phase de trois mois correspondra à un prix de 1,50 $. La remise doit être exprimée sous la forme d'une fraction strictement supérieure à 0 et inférieure à 1. Le prix obtenu sera arrondi à l'unité facturable la plus proche (par exemple, cents 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 tous les nouveaux pays où Play est disponible.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Montant absolu soustrait du prix du forfait de base au prorata de la durée que l'utilisateur paie pour cette phase d'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 correspond à un prix de 2 $. Il ne peut pas être inférieur au prix minimal autorisé pour les nouvelles régions dans lesquelles Play peut être lancé.

free

object

Définissez cette option pour indiquer que l'offre est sans frais.

OtherRegionsSubscriptionOfferPhasePrices

Informations tarifaires pour les nouvelles régions dans lesquelles Play peut être lancé.

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

object (Money)

Obligatoire. Prix en USD à utiliser pour tout nouveau pays où Play pourrait être lancé.

eurPrice

object (Money)

Obligatoire. Prix en euros à utiliser pour tout nouveau pays de lancement de Play.

SubscriptionOfferTargeting

Définit la règle qu'un utilisateur doit respecter 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 indiquer l'éligibilité de l'offre déterminée 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 mettre à niveau les forfaits existants des utilisateurs.

AcquisitionTargetingRule

Représente une règle de ciblage au format suivant: l'utilisateur n'a jamais eu {scope} auparavant.

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

object (TargetingRuleScope)

Obligatoire. Champ d'application des abonnements pris en compte par cette règle. N'autorise que "cet abonnement" et "tout abonnement dans l'application".

TargetingRuleScope

Définit la portée des abonnements qu'une règle de ciblage peut mettre en correspondance pour cibler les offres des utilisateurs en fonction des droits d'accès passés ou actuels.

Représentation JSON
{

  // Union field scope can be only one of the following:
  "thisSubscription": {
    object
  },
  "anySubscriptionInApp": {
    object
  },
  "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

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

anySubscriptionInApp

object

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 correspond à l'abonnement associé à l'ID d'abonnement spécifié. Il doit s'agir d'un abonnement au sein de la même application parente.

UpgradeTargetingRule

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

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

boolean

Cette offre est limitée à une fois par utilisateur. Si cette valeur est définie sur "true", les utilisateurs qui s'y sont abonnés ne pourront plus jamais être éligibles à cette offre.

scope

object (TargetingRuleScope)

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

OtherRegionsSubscriptionOfferConfig

Configuration pour tout nouveau pays où Play peut être lancé dans les offres d'abonnement.

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

boolean

Indique si l'offre d'abonnement est disponible dans de nouveaux pays ou que Play sera disponible à l'avenir. Si aucune valeur n'est spécifiée, 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

Liste toutes les offres d'un abonnement donné.

patch

Met à jour une offre d'abonnement existante.