REST Resource: monetization.subscriptions

Recurso: Subscription

Uma única assinatura de app.

Representação JSON
{
  "packageName": string,
  "productId": string,
  "basePlans": [
    {
      object (BasePlan)
    }
  ],
  "listings": [
    {
      object (SubscriptionListing)
    }
  ],
  "archived": boolean,
  "taxAndComplianceSettings": {
    object (SubscriptionTaxAndComplianceSettings)
  },
  "restrictedPaymentCountries": {
    object (RestrictedPaymentCountries)
  }
}
Campos
packageName

string

Imutável. Nome do pacote do app principal.

productId

string

Imutável. ID exclusivo do produto. Único no app principal. Os IDs dos produtos precisam ser compostos por letras minúsculas (a-z), números (0-9), sublinhados (_) e pontos (.). Eles precisam começar com uma letra minúscula ou um número e ter entre 1 e 40 caracteres.

basePlans[]

object (BasePlan)

O conjunto de planos básicos da assinatura. Representa os preços e a duração da assinatura se nenhuma outra oferta for aplicada.

listings[]

object (SubscriptionListing)

Obrigatório. Lista de páginas de detalhes localizadas desta assinatura. Precisa conter pelo menos uma entrada com o idioma padrão do app principal.

archived
(deprecated)

boolean

Apenas saída. Descontinuado: o arquivo de assinaturas não é compatível.

taxAndComplianceSettings

object (SubscriptionTaxAndComplianceSettings)

Detalhes sobre tributos e conformidade jurídica.

restrictedPaymentCountries

object (RestrictedPaymentCountries)

Opcional. Países onde a compra desta assinatura está restrita a formas de pagamento registradas na mesma região. Caso esteja vazio, nenhuma restrição de local de pagamento é imposta.

BasePlan

Um plano básico único para uma assinatura.

Representação JSON
{
  "basePlanId": string,
  "state": enum (State),
  "regionalConfigs": [
    {
      object (RegionalBasePlanConfig)
    }
  ],
  "offerTags": [
    {
      object (OfferTag)
    }
  ],
  "otherRegionsConfig": {
    object (OtherRegionsBasePlanConfig)
  },

  // Union field base_plan_type can be only one of the following:
  "autoRenewingBasePlanType": {
    object (AutoRenewingBasePlanType)
  },
  "prepaidBasePlanType": {
    object (PrepaidBasePlanType)
  },
  "installmentsBasePlanType": {
    object (InstallmentsBasePlanType)
  }
  // End of list of possible types for union field base_plan_type.
}
Campos
basePlanId

string

Obrigatório. Imutável. O identificador exclusivo deste plano básico. Precisa ser único na assinatura e estar em conformidade com RFC-1034. Ou seja, o ID só pode ter letras minúsculas (a-z), números (0-9) e hifens (-) e no máximo 63 caracteres.

state

enum (State)

Apenas saída. O estado do plano básico (ativo ou não). Os planos de rascunho ou inativos podem ser ativados ou excluídos. Os planos básicos ativos podem ser desativados. Os planos básicos inativos podem ser cancelados. Este campo não pode ser mudado atualizando o recurso. Em vez disso, use os endpoints dedicados.

regionalConfigs[]

object (RegionalBasePlanConfig)

Informações específicas da região para este plano básico.

offerTags[]

object (OfferTag)

Lista de até 20 tags personalizadas especificadas para este plano básico, retornadas ao app pela Biblioteca Faturamento. As ofertas de assinatura para este plano básico também recebem tags de oferta na Biblioteca Faturamento.

otherRegionsConfig

object (OtherRegionsBasePlanConfig)

Informações de preço para qualquer novo local onde o Google Play possa lançar a oferta no futuro. Se este campo for omitido, o BasePlan não vai ficar disponível automaticamente nesses novos locais.

Campo de união base_plan_type. O tipo do plano básico. É necessário definir exatamente um. O tipo de plano básico não pode ser alterado depois da criação. base_plan_type pode ser apenas de um dos tipos a seguir:
autoRenewingBasePlanType

object (AutoRenewingBasePlanType)

Define quando o plano básico é renovado automaticamente em um intervalo regular.

prepaidBasePlanType

object (PrepaidBasePlanType)

Definido quando o plano básico não é renovado automaticamente ao final do período de faturamento.

installmentsBasePlanType

object (InstallmentsBasePlanType)

Definido para planos básicos parcelados em que o usuário se compromete com um número específico de pagamentos.

Estado

Estado atual de um plano básico.

Enums
STATE_UNSPECIFIED Estado não especificado.
DRAFT O plano básico está no estado de rascunho e não foi ativado. Nesse momento, ele pode ser excluído em segurança.
ACTIVE O plano básico está ativo e disponível para novos assinantes.
INACTIVE O plano básico está inativo e só está disponível para assinantes atuais.

AutoRenewingBasePlanType

Representa o plano básico com renovação automática ao final do período da assinatura.

Representação JSON
{
  "billingPeriodDuration": string,
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode),
  "legacyCompatible": boolean,
  "legacyCompatibleSubscriptionOfferId": string
}
Campos
billingPeriodDuration

string

Obrigatório. Imutável. Período de assinatura, especificado no formato ISO 8601. Para conferir uma lista de períodos de faturamento aceitos, consulte a Central de Ajuda. A duração é imutável após a criação do plano base.

gracePeriodDuration

string

Período de carência da assinatura, especificado no formato ISO 8601. Os valores aceitos precisam ser em dias e entre P0D e o menor valor entre 30D e o período de faturamento do plano básico.

Se não for especificado, um valor padrão será usado com base no período de faturamento.

A soma de gracePeriodDuration e accountHoldDuration precisa estar entre P30D e P60D.

accountHoldDuration

string

Opcional. Período de suspensão de conta da assinatura especificado no formato ISO 8601. Os valores aceitos precisam ser em dias e entre P0D e P60D.

Se não for especificado, o valor padrão será P30D.

A soma de gracePeriodDuration e accountHoldDuration precisa estar entre P30D e P60D.

resubscribeState

enum (ResubscribeState)

Se os usuários vão poder renovar a assinatura para o plano básico em plataformas do Google Play. O padrão será RESUBSCRIBE_STATE_ACTIVE se não for especificado.

prorationMode

enum (SubscriptionProrationMode)

O modo de cálculo proporcional do plano básico determina o que acontece quando um usuário muda desse para outro plano. Se não for especificado, o padrão será CHARGE_ON_NEXT_BILLING_DATE.

legacyCompatible

boolean

Se o plano básico renovado é compatível com versões anteriores.

O plano básico compatível com versões anteriores é retornado pelo método descontinuado querySkuDetailsAsync() da Biblioteca Google Play Faturamento.

Só um plano básico renovado pode ser marcado como compatível com versões anteriores em uma assinatura.

legacyCompatibleSubscriptionOfferId

string

ID da oferta de assinatura compatível com versões anteriores.

A oferta de assinatura compatível com versões anteriores é retornada pelo método descontinuado querySkuDetailsAsync() da Biblioteca Google Play Faturamento.

Só uma oferta de assinatura pode ser marcada como compatível com versões anteriores em um plano básico renovado.

Para que nenhuma oferta de assinatura seja compatível com versões anteriores, defina o campo como vazio.

ResubscribeState

Estado de renovação de assinatura do plano básico.

Enums
RESUBSCRIBE_STATE_UNSPECIFIED Estado não especificado.
RESUBSCRIBE_STATE_ACTIVE A renovação de assinatura está ativa.
RESUBSCRIBE_STATE_INACTIVE A renovação de assinatura está inativa.

SubscriptionProrationMode

O modo de cálculo proporcional usado para renovação de planos básicos.

Enums
SUBSCRIPTION_PRORATION_MODE_UNSPECIFIED Modo não especificado.
SUBSCRIPTION_PRORATION_MODE_CHARGE_ON_NEXT_BILLING_DATE Os usuários vão ser cobrados pelo novo plano básico ao final do período de faturamento atual.
SUBSCRIPTION_PRORATION_MODE_CHARGE_FULL_PRICE_IMMEDIATELY Os usuários vão ser cobrados pelo valor total do novo plano básico imediatamente. O período restante da assinatura será usado para estender a duração do novo plano de faturamento.

PrepaidBasePlanType

Representa o plano básico sem renovação automática ao final, que precisa ser renovado manualmente pelo usuário.

Representação JSON
{
  "billingPeriodDuration": string,
  "timeExtension": enum (TimeExtension)
}
Campos
billingPeriodDuration

string

Obrigatório. Imutável. Período de assinatura, especificado no formato ISO 8601. Para conferir uma lista de períodos de faturamento aceitos, consulte a Central de Ajuda. A duração é imutável após a criação do plano base.

timeExtension

enum (TimeExtension)

Se os usuários vão poder estender o plano básico pré-pago em plataformas do Google Play. O padrão será TIME_EXTENSION_ACTIVE se não for especificado.

TimeExtension

Extensão do período do plano básico.

Enums
TIME_EXTENSION_UNSPECIFIED Estado não especificado.
TIME_EXTENSION_ACTIVE A extensão do período está ativa. Os usuários podem carregar ou estender o plano pré-pago.
TIME_EXTENSION_INACTIVE A extensão do período está inativa. Os usuários não podem carregar nem estender o plano pré-pago.

InstallmentsBasePlanType

Representa um plano básico parcelado em que o usuário se compromete com um número específico de pagamentos.

Representação JSON
{
  "billingPeriodDuration": string,
  "committedPaymentsCount": integer,
  "renewalType": enum (RenewalType),
  "gracePeriodDuration": string,
  "accountHoldDuration": string,
  "resubscribeState": enum (ResubscribeState),
  "prorationMode": enum (SubscriptionProrationMode)
}
Campos
billingPeriodDuration

string

Obrigatório. Imutável. Período de assinatura, especificado no formato ISO 8601. Para conferir uma lista de períodos de faturamento aceitos, consulte a Central de Ajuda. A duração é imutável após a criação do plano base.

committedPaymentsCount

integer

Obrigatório. Imutável. O número de pagamentos com que o usuário se comprometeu. Ele se torna imutável após a criação do plano base.

renewalType

enum (RenewalType)

Obrigatório. Imutável. Tipo de renovação do plano básico parcelado. Determina o comportamento ao final do compromisso inicial. O tipo de renovação não pode ser alterado depois que o plano básico é criado.

gracePeriodDuration

string

Período de carência da assinatura, especificado no formato ISO 8601. Os valores aceitos precisam ser em dias e entre P0D e o menor valor entre 30D e o período de faturamento do plano básico.

Se não for especificado, um valor padrão será usado com base no período de faturamento.

A soma de gracePeriodDuration e accountHoldDuration precisa estar entre P30D e P60D.

accountHoldDuration

string

Opcional. Período de suspensão de conta da assinatura especificado no formato ISO 8601. Os valores aceitos precisam ser em dias e entre P0D e P60D.

Se não for especificado, o valor padrão será P30D.

A soma de gracePeriodDuration e accountHoldDuration precisa estar entre P30D e P60D.

resubscribeState

enum (ResubscribeState)

Se os usuários vão poder renovar a assinatura para o plano básico em plataformas do Google Play. O padrão será RESUBSCRIBE_STATE_ACTIVE se não for especificado.

prorationMode

enum (SubscriptionProrationMode)

O modo de cálculo proporcional do plano básico determina o que acontece quando um usuário muda desse para outro plano. Se não for especificado, o padrão será CHARGE_ON_NEXT_BILLING_DATE.

RenewalType

Tipo de renovação do plano básico parcelado. Determina o comportamento ao final do compromisso inicial. O tipo de renovação não pode ser alterado depois que o plano básico é criado.

Enums
RENEWAL_TYPE_UNSPECIFIED Estado não especificado.
RENEWAL_TYPE_RENEWS_WITHOUT_COMMITMENT Renovação periódica ao longo do período de faturamento sem compromisso.
RENEWAL_TYPE_RENEWS_WITH_COMMITMENT Renovação com o compromisso de duração igual à inicial.

RegionalBasePlanConfig

Configuração de um plano básico específico de uma região.

Representação JSON
{
  "regionCode": string,
  "newSubscriberAvailability": boolean,
  "price": {
    object (Money)
  }
}
Campos
regionCode

string

Obrigatório. Código regional a que essa configuração se aplica, conforme definido pelo ISO 3166-2. Por exemplo, "US".

newSubscriberAvailability

boolean

Se o plano básico na região especificada está disponível para novos assinantes. Assinantes atuais não vão ter a assinatura cancelada se este valor for definido como "false". Se não for especificado, o padrão será "false".

price

object (Money)

O preço do plano básico na região especificada. Precisa estar definido se o plano básico estiver disponível para novos assinantes. Precisa estar definido na moeda vinculada a essa região.

OtherRegionsBasePlanConfig

Informações de preço para qualquer novo local onde o Google Play possa lançar a oferta.

Representação JSON
{
  "usdPrice": {
    object (Money)
  },
  "eurPrice": {
    object (Money)
  },
  "newSubscriberAvailability": boolean
}
Campos
usdPrice

object (Money)

Obrigatório. Preço em USD a ser usado em qualquer novo local onde o Google Play possa lançar a oferta.

eurPrice

object (Money)

Obrigatório. Preço em EUR a ser usado em qualquer novo local onde o Google Play possa lançar a oferta.

newSubscriberAvailability

boolean

Se o plano básico está disponível para novos assinantes em qualquer novo local em que o Google Play possa lançar a oferta. Se não for especificado, o padrão será "false".

SubscriptionListing

Metadados da assinatura que podem ser vistos pelos consumidores.

Representação JSON
{
  "languageCode": string,
  "title": string,
  "benefits": [
    string
  ],
  "description": string
}
Campos
languageCode

string

Obrigatório. O idioma da página, conforme definido pelo BCP-47. Por exemplo, "en-US".

title

string

Obrigatório. O título da assinatura no idioma da página de detalhes. Texto simples.

benefits[]

string

Uma lista de benefícios mostrada ao usuário em plataformas como a Play Store e em fluxos de restauração no idioma da página de detalhes. Texto simples. Lista ordenada de, no máximo, quatro benefícios.

description

string

A descrição da assinatura no idioma da página de detalhes. Comprimento máximo: 80 caracteres. Texto simples.

RestrictedPaymentCountries

Países onde a compra deste produto está restrita a formas de pagamento registradas na mesma região. Caso esteja vazio, nenhuma restrição de local de pagamento é imposta.

Representação JSON
{
  "regionCodes": [
    string
  ]
}
Campos
regionCodes[]

string

Obrigatório. Códigos regionais em que as restrições de pagamento serão impostas, conforme definido pelo ISO 3166-2. Por exemplo, "US".

Métodos

archive
(deprecated)

Descontinuado: o arquivo de assinaturas não é compatível.

batchGet

Lê uma ou mais assinaturas.

batchUpdate

Atualiza um lote de assinaturas.

create

Cria uma nova assinatura.

delete

Exclui uma assinatura.

get

Lê uma única assinatura.

list

Lista todas as assinaturas em um determinado app.

patch

Atualiza uma assinatura.