REST Resource: monetization.subscriptions.basePlans.offers

Recurso: SubscriptionOffer

Es una oferta temporal única.

Representación 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)
    }
  ]
}
Campos
packageName

string

Obligatorio. Inmutable. Es el nombre de paquete de la app a la que pertenece la suscripción principal.

productId

string

Obligatorio. Inmutable. Es el ID de la suscripción principal a la que pertenece esta oferta.

basePlanId

string

Obligatorio. Inmutable. Es el ID del plan básico del que esta oferta es una extensión.

offerId

string

Obligatorio. Inmutable. Es el ID único de esta oferta de suscripción. Debe ser único dentro del plan básico.

state

enum (State)

Solo salida. Es el estado actual de esta oferta. Se puede cambiar con las acciones Activar y Desactivar. Nota: El estado del plan básico sustituye a este estado, por lo que es posible que no haya una oferta activa disponible si el plan básico no está activo.

phases[]

object (SubscriptionOfferPhase)

Obligatorio. Son las fases de esta oferta de suscripción. Debe contener al menos una y, como máximo, dos entradas. Los usuarios siempre recibirán todas estas fases en el orden especificado.

targeting

object (SubscriptionOfferTargeting)

Son los requisitos que deben cumplir los usuarios para acceder a esta oferta. Representa los requisitos que Play evaluará para decidir si se debe devolver una oferta. Los desarrolladores pueden filtrar aún más estas ofertas por su cuenta.

regionalConfigs[]

object (RegionalSubscriptionOfferConfig)

Obligatorio. Es la configuración específica por región de esta oferta. Debe contener al menos una entrada.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferConfig)

Es la configuración para las ubicaciones nuevas en las que Play puede hacer un lanzamiento en el futuro.

offerTags[]

object (OfferTag)

Es una lista de hasta 20 etiquetas personalizadas especificadas para esta oferta, que se devuelven a la app a través de la biblioteca de facturación.

Estado

Es el estado actual de la oferta de suscripción.

Enumeraciones
STATE_UNSPECIFIED Es un valor predeterminado que no se debe usar nunca.
DRAFT La oferta de suscripción no está disponible para los usuarios y nunca lo estuvo.
ACTIVE La oferta de suscripción está disponible para los usuarios nuevos y existentes.
INACTIVE La oferta de suscripción no está disponible para los usuarios nuevos. Los usuarios existentes conservan el acceso.

SubscriptionOfferPhase

Es una sola fase de una oferta de suscripción.

Representación JSON
{
  "recurrenceCount": integer,
  "duration": string,
  "regionalConfigs": [
    {
      object (RegionalSubscriptionOfferPhaseConfig)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsSubscriptionOfferPhaseConfig)
  }
}
Campos
recurrenceCount

integer

Obligatorio. Es la cantidad de veces que se repite esta fase de la oferta. Si no es gratuita, se le cobra al usuario el precio correspondiente en cada recurrencia.

duration

string

Obligatorio. Es la duración de una sola recurrencia de esta fase. Se especifica en formato ISO 8601.

regionalConfigs[]

object (RegionalSubscriptionOfferPhaseConfig)

Obligatorio. Es la configuración específica por región de esta fase de la oferta. Esta lista debe contener exactamente una entrada para cada región en la que la oferta de suscripción tiene una configuración regional.

otherRegionsConfig

object (OtherRegionsSubscriptionOfferPhaseConfig)

Es la información de precios de ubicaciones nuevas en las que Play podría lanzar la opción en el futuro.

RegionalSubscriptionOfferPhaseConfig

Es la configuración de una sola fase de una oferta de suscripción en una única región.

Representación 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.
}
Campos
regionCode

string

Obligatorio. Inmutable. Es la región a la que se aplica esta configuración.

Campo de unión price_override. Es la anulación de precio de esta fase. Obligatorio. Las direcciones (price_override) solo pueden ser una de las siguientes opciones:
price

object (Money)

Es el precio absoluto que paga el usuario por esta fase de la oferta. No debe ser inferior al precio mínimo permitido para esta región.

relativeDiscount

number

Es la fracción del precio del plan básico prorrateado en función de la duración de la fase de la oferta por la que paga el usuario. Por ejemplo, si el precio del plan básico para esta región es de USD 12 por un período de 1 año, un descuento del 50% para una fase de 3 meses de duración correspondería a un precio de USD 1.50. El descuento se debe especificar como una fracción estrictamente mayor que 0 y menor que 1. El precio final se redondeará a la unidad facturable más cercana (p.ej., centavos en el caso del dólar estadounidense). El descuento relativo se considera no válido si el precio con descuento resulta ser menor que el precio mínimo permitido para esta región.

absoluteDiscount

object (Money)

Es el importe absoluto de dinero restado del precio del plan básico prorrateado en función de la duración de la fase de la oferta por la que paga el usuario. Por ejemplo, si el precio del plan básico para esta región es de USD 12 por un período de 1 año, un descuento absoluto de USD 1 para una fase de 3 meses de duración correspondería a un precio de USD 2. El precio final no debe ser inferior al precio mínimo permitido para esta región.

free

object (RegionalSubscriptionOfferPhaseFreePriceOverride)

Se establece para especificar que esta oferta es gratuita.

RegionalSubscriptionOfferPhaseFreePriceOverride

Este tipo no tiene campos.

Representa la configuración de la anulación del precio gratuito para una fase específica de una oferta de suscripción.

OtherRegionsSubscriptionOfferPhaseConfig

Es la configuración para las ubicaciones nuevas en las que Play puede hacer un lanzamiento para una fase específica de la oferta.

Representación 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.
}
Campos
Campo de unión price_override. Es la anulación de precio de esta fase. Obligatorio. Las direcciones (price_override) solo pueden ser una de las siguientes opciones:
otherRegionsPrices

object (OtherRegionsSubscriptionOfferPhasePrices)

Es el precio absoluto que paga el usuario por esta fase de la oferta. El precio no debe ser inferior al precio mínimo permitido para cualquier ubicación nueva en la que Play puede hacer un lanzamiento.

relativeDiscount

number

Es la fracción del precio del plan básico prorrateado en función de la duración de la fase de la oferta por la que paga el usuario. Por ejemplo, si el precio del plan básico para esta región es de USD 12 por un período de 1 año, un descuento del 50% para una fase de 3 meses de duración correspondería a un precio de USD 1.50. El descuento se debe especificar como una fracción estrictamente mayor que 0 y menor que 1. El precio final se redondeará a la unidad facturable más cercana (p.ej., centavos en el caso del dólar estadounidense). El descuento relativo se considera no válido si el precio con descuento resulta ser menor que el precio mínimo permitido para cualquier ubicación nueva en la que Play puede hacer un lanzamiento.

absoluteDiscounts

object (OtherRegionsSubscriptionOfferPhasePrices)

Es el importe absoluto de dinero restado del precio del plan básico prorrateado en función de la duración de la fase de la oferta por la que paga el usuario. Por ejemplo, si el precio del plan básico para esta región es de USD 12 por un período de 1 año, un descuento absoluto de USD 1 para una fase de 3 meses de duración correspondería a un precio de USD 2. El precio final no debe ser inferior al precio mínimo permitido para cualquier ubicación nueva en la que Play puede hacer un lanzamiento.

free

object (OtherRegionsSubscriptionOfferPhaseFreePriceOverride)

Se establece para especificar que esta oferta es gratuita.

OtherRegionsSubscriptionOfferPhasePrices

Es la información de precios de ubicaciones nuevas en las que Play podría lanzar la opción en el futuro.

Representación JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  }
}
Campos
usdPrice

object (Money)

Obligatorio. Es el precio en USD que se usará para las ubicaciones nuevas en las que Play puede hacer un lanzamiento.

eurPrice

object (Money)

Obligatorio. Es el precio en EUR que se usará para las ubicaciones nuevas en las que Play puede hacer un lanzamiento.

OtherRegionsSubscriptionOfferPhaseFreePriceOverride

Este tipo no tiene campos.

Representa la configuración de anulación de precio gratuito para las ubicaciones nuevas en las que Play puede hacer un lanzamiento para una fase específica de la oferta.

SubscriptionOfferTargeting

Define la regla que debe cumplir un usuario para recibir esta oferta.

Representación 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.
}
Campos
Campo de unión rule. Se debe dejar en blanco si el desarrollador es quien determina los requisitos para acceder a esta oferta. Las direcciones (rule) solo pueden ser una de las siguientes opciones:
acquisitionRule

object (AcquisitionTargetingRule)

Es la regla de segmentación de la oferta para la adquisición de usuarios nuevos.

upgradeRule

object (UpgradeTargetingRule)

Es la regla de segmentación de la oferta para actualizar los planes existentes de los usuarios.

AcquisitionTargetingRule

Representa una regla de segmentación con el siguiente formato: User never had {scope} before.

Representación JSON
{
  "scope": {
    object (TargetingRuleScope)
  }
}
Campos
scope

object (TargetingRuleScope)

Obligatorio. Es el alcance de suscripciones que se considera en esta regla. Solo permite "esta suscripción" y "cualquier suscripción de la app".

TargetingRuleScope

Define el alcance de suscripciones que puede tener una regla de segmentación para orientar las ofertas a los usuarios según derechos anteriores o actuales.

Representación 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.
}
Campos

Campo de unión scope.

scope puede ser una de las siguientes opciones:

thisSubscription

object (TargetingRuleScopeThisSubscription)

El alcance de la regla de segmentación actual es la suscripción en la que se define esta oferta.

anySubscriptionInApp

object (TargetingRuleScopeAnySubscriptionInApp)

El alcance de la regla de segmentación actual es cualquier suscripción de la app principal.

specificSubscriptionInApp

string

El alcance de la regla de segmentación actual es la suscripción que tiene el ID de suscripción especificado. Debe ser una suscripción dentro de la misma app superior.

TargetingRuleScopeThisSubscription

Este tipo no tiene campos.

Representa el alcance de la regla de segmentación correspondiente a las suscripciones en las que se define esta oferta.

TargetingRuleScopeAnySubscriptionInApp

Este tipo no tiene campos.

Representa el alcance de la regla de segmentación correspondiente a cualquier suscripción de la app superior.

UpgradeTargetingRule

Representa una regla de segmentación con el siguiente formato: User currently has {scope} [with billing period {billing_period}].

Representación JSON
{
  "oncePerUser": boolean,
  "scope": {
    object (TargetingRuleScope)
  },
  "billingPeriodDuration": string
}
Campos
oncePerUser

boolean

Limita esta oferta a una sola vez por usuario. Si se establece como verdadero, los usuarios no volverán a reunir los requisitos para acceder a esta oferta si alguna vez se suscribieron a ella.

scope

object (TargetingRuleScope)

Obligatorio. Es el alcance de suscripciones que se considera en esta regla. Solo permite "esta suscripción" y "suscripción específica en la app".

billingPeriodDuration

string

Es la duración específica del período de facturación, en formato ISO 8601, a la que debe estar suscrito un usuario para cumplir con los requisitos de esta regla. Si no se especifica, la regla abarcará a los usuarios suscritos a cualquier período de facturación.

RegionalSubscriptionOfferConfig

Es la configuración de una oferta de suscripción en una región específica.

Representación JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean
}
Campos
regionCode

string

Obligatorio. Inmutable. Es el código de región al que se aplica esta configuración, según la norma ISO 3166-2, p.ej., "US".

newSubscriberAvailability

boolean

Indica si la oferta de suscripción de la región especificada está disponible para suscriptores nuevos. Si este valor se establece como falso, no se cancelarán las suscripciones existentes. Si no se especifica, el valor predeterminado será falso.

OtherRegionsSubscriptionOfferConfig

Es la configuración especificada en una oferta de suscripción para cualquier ubicación nueva en la que Play puede hacer un lanzamiento.

Representación JSON
{
  "otherRegionsNewSubscriberAvailability": boolean
}
Campos
otherRegionsNewSubscriberAvailability

boolean

Indica si la oferta de suscripción estará disponible en las ubicaciones nuevas en las que Play puede hacer un lanzamiento en el futuro. Si no se especifica, el valor predeterminado será falso.

Métodos

activate

Activa una oferta de suscripción.

batchGet

Lee una o más ofertas de suscripción.

batchUpdate

Actualiza un lote de ofertas de suscripción.

batchUpdateStates

Actualiza un lote de estados de ofertas de suscripción.

create

Crea una oferta de suscripción nueva.

deactivate

Desactiva una oferta de suscripción.

delete

Borra una oferta de suscripción.

get

Lee una sola oferta.

list

Enumera todas las ofertas de una suscripción determinada.

patch

Actualiza una oferta de suscripción existente.