REST Resource: purchases.subscriptionsv2

Recurso: SubscriptionPurchaseV2

Indica o status da compra da assinatura de um usuário.

Representação JSON
{
  "kind": string,
  "regionCode": string,
  "lineItems": [
    {
      object (SubscriptionPurchaseLineItem)
    }
  ],
  "startTime": string,
  "subscriptionState": enum (SubscriptionState),
  "latestOrderId": string,
  "linkedPurchaseToken": string,
  "pausedStateContext": {
    object (PausedStateContext)
  },
  "canceledStateContext": {
    object (CanceledStateContext)
  },
  "testPurchase": {
    object (TestPurchase)
  },
  "acknowledgementState": enum (AcknowledgementState),
  "externalAccountIdentifiers": {
    object (ExternalAccountIdentifiers)
  },
  "subscribeWithGoogleInfo": {
    object (SubscribeWithGoogleInfo)
  }
}
Campos
kind

string

Esse tipo representa um objeto SubscriptionPurchaseV2 no serviço androidpublisher.

regionCode

string

Código ISO 3166-1 alfa-2 do país/região de faturamento do usuário no momento em que a assinatura foi concedida.

lineItems[]

object (SubscriptionPurchaseLineItem)

Informações no nível do item para uma compra de assinatura. Os itens de uma mesma compra precisam ser todos com o AutoRenewingPlan ou todos com o PrepaidPlan.

startTime

string (Timestamp format)

Hora em que a assinatura foi concedida. Não definido para assinaturas pendentes. A assinatura foi criada, mas está aguardando o pagamento durante a inscrição.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

subscriptionState

enum (SubscriptionState)

O estado atual da assinatura.

latestOrderId

string

O ID do pedido mais recente associado à compra da assinatura. Para a assinatura de renovação automática, este é o ID do pedido de inscrição, se ele ainda não tiver sido renovado, ou o ID do último pedido recorrente (pedido concluído, pendente ou recusado). Para assinaturas pré-pagas, é o ID do pedido associado ao token de compra consultado.

linkedPurchaseToken

string

O token de compra da assinatura antiga, se ela for uma das seguintes: * Nova assinatura de uma assinatura cancelada, mas não expirada * Upgrade/downgrade de uma assinatura anterior. * Converta uma assinatura pré-paga para uma assinatura de renovação automática. * Converta uma assinatura de renovação automática para pré-paga. * Recarregar uma assinatura pré-paga.

pausedStateContext

object (PausedStateContext)

Mais contexto sobre assinaturas pausadas. Presente apenas se a assinatura tiver subscriptionState SUBSCRIPTION_STATE_PAUSED.

canceledStateContext

object (CanceledStateContext)

Mais contexto sobre assinaturas canceladas. Presente apenas se a assinatura tiver subscriptionState SUBSCRIPTION_STATE_CANCELED.

testPurchase

object (TestPurchase)

Presente apenas se a compra de assinatura for uma compra de teste.

acknowledgementState

enum (AcknowledgementState)

O estado de confirmação da assinatura.

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

Identificador de conta de usuário no serviço de terceiros.

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

Perfil de usuário associado a compras feitas com o "Assine com o Google".

SubscriptionState

Os possíveis estados em que uma assinatura pode estar, por exemplo, se ela está ativa ou cancelada. Os itens de uma compra de assinatura podem ser todos os planos pré-pagos ou com renovação automática.

Enums
SUBSCRIPTION_STATE_UNSPECIFIED Estado de assinatura não especificado.
SUBSCRIPTION_STATE_PENDING A assinatura foi criada, mas está aguardando o pagamento durante a inscrição. Neste estado, todos os itens estão aguardando pagamento.
SUBSCRIPTION_STATE_ACTIVE A assinatura está ativa. - (1) Se a assinatura for um plano com renovação automática, pelo menos um item será autoRenewEnabled e não expirou. - (2) Se a assinatura for um plano pré-pago, pelo menos um item não vai expirar.
SUBSCRIPTION_STATE_PAUSED A assinatura está pausada. O estado só fica disponível quando a assinatura é de um plano com renovação automática. Nesse estado, todos os itens estão pausados.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD A assinatura está no período de carência. O estado só fica disponível quando a assinatura é de um plano com renovação automática. Neste estado, todos os itens estão no período de carência.
SUBSCRIPTION_STATE_ON_HOLD A assinatura está em espera (suspensa). O estado só fica disponível quando a assinatura é de um plano com renovação automática. Neste estado, todos os itens ficam retidos.
SUBSCRIPTION_STATE_CANCELED A assinatura foi cancelada, mas ainda não expirou. O estado só fica disponível quando a assinatura é de um plano com renovação automática. Todos os itens têm a autoRenewEnabled definida como falsa.
SUBSCRIPTION_STATE_EXPIRED A assinatura expirou. Todos os itens têm expiryTime no passado.

PausedStateContext

Informações específicas de uma assinatura em estado pausado.

Representação JSON
{
  "autoResumeTime": string
}
Campos
autoResumeTime

string (Timestamp format)

Horário em que a assinatura será retomada automaticamente.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

CanceledStateContext

Informações específicas de uma assinatura no estado cancelado.

Representação JSON
{

  // Union field cancellation_reason can be only one of the following:
  "userInitiatedCancellation": {
    object (UserInitiatedCancellation)
  },
  "systemInitiatedCancellation": {
    object (SystemInitiatedCancellation)
  },
  "developerInitiatedCancellation": {
    object (DeveloperInitiatedCancellation)
  },
  "replacementCancellation": {
    object (ReplacementCancellation)
  }
  // End of list of possible types for union field cancellation_reason.
}
Campos
Campo de união cancellation_reason. Motivo do cancelamento da assinatura. cancellation_reason pode ser apenas de um dos tipos a seguir:
userInitiatedCancellation

object (UserInitiatedCancellation)

A assinatura foi cancelada pelo usuário.

systemInitiatedCancellation

object (SystemInitiatedCancellation)

A assinatura foi cancelada pelo sistema, por exemplo, devido a um problema de faturamento.

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

A assinatura foi cancelada pelo desenvolvedor.

replacementCancellation

object (ReplacementCancellation)

A assinatura foi substituída por uma nova.

UserInitiatedCancellation

Informações específicas sobre cancelamentos iniciados pelos usuários.

Representação JSON
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
Campos
cancelSurveyResult

object (CancelSurveyResult)

Informações fornecidas pelo usuário quando ele conclui o fluxo de cancelamento da assinatura (pesquisa de motivo do cancelamento).

cancelTime

string (Timestamp format)

A hora em que a assinatura foi cancelada pelo usuário. Talvez o usuário ainda tenha acesso à assinatura após esse período. Use lineItems.expiry_time para determinar se um usuário ainda tem acesso.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

CancelSurveyResult

Resultado da pesquisa de cancelamento quando a assinatura foi cancelada pelo usuário.

Representação JSON
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
Campos
reason

enum (CancelSurveyReason)

O motivo que o usuário selecionou na pesquisa de cancelamento.

reasonUserInput

string

Definido apenas para CANCEL_SURVEY_REASON_OTHERS. É a resposta em formato livre do usuário à pesquisa.

CancelSurveyReason

O motivo que o usuário selecionou na pesquisa de cancelamento.

Enums
CANCEL_SURVEY_REASON_UNSPECIFIED O motivo do cancelamento da pesquisa não foi especificado.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE Não há uso suficiente da assinatura.
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES Problemas técnicos durante o uso do app.
CANCEL_SURVEY_REASON_FOUND_BETTER_APP O usuário encontrou um app melhor.
CANCEL_SURVEY_REASON_OTHERS Outros motivos.

SystemInitiatedCancellation

Esse tipo não tem campos.

Informações específicas sobre cancelamentos iniciados pelo sistema do Google.

DeveloperInitiatedCancellation

Esse tipo não tem campos.

Informações específicas sobre cancelamentos iniciados por desenvolvedores.

ReplacementCancellation

Esse tipo não tem campos.

Informações específicas sobre cancelamentos causados pela substituição da assinatura.

TestPurchase

Esse tipo não tem campos.

Indica se esta compra de assinatura é uma compra de teste.

AcknowledgementState

Os possíveis estados de confirmação de uma assinatura.

Enums
ACKNOWLEDGEMENT_STATE_UNSPECIFIED Estado de confirmação não especificado.
ACKNOWLEDGEMENT_STATE_PENDING A assinatura ainda não foi confirmada.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED A assinatura foi confirmada.

ExternalAccountIdentifiers

Identificador de conta de usuário no serviço de terceiros.

Representação JSON
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Campos
externalAccountId

string

Identificador de conta de usuário no serviço de terceiros. Presente apenas se a vinculação da conta tiver ocorrido como parte do fluxo de compra da assinatura.

obfuscatedExternalAccountId

string

Uma versão ofuscada do código que é exclusivamente associada à conta do usuário no seu app. Presente para as seguintes compras: * Se a vinculação da conta aconteceu como parte do fluxo de compra de assinaturas. * Ele foi especificado usando https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid quando a compra foi feita.

obfuscatedExternalProfileId

string

É uma versão ofuscada do código associada exclusivamente ao perfil do usuário no app. Presente apenas se especificado usando https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid no momento da compra.

SubscribeWithGoogleInfo

Informações associadas a compras feitas com o "Assine com o Google".

Representação JSON
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
Campos
profileId

string

O ID do perfil do Google do usuário quando a assinatura foi comprada.

profileName

string

Nome do perfil do usuário quando a assinatura foi comprada.

emailAddress

string

O endereço de e-mail do usuário quando a assinatura foi comprada.

givenName

string

É o nome do usuário quando a assinatura foi comprada.

familyName

string

Sobrenome do usuário quando a assinatura foi comprada.

SubscriptionPurchaseLineItem

Informações no nível do item para uma compra de assinatura.

Representação JSON
{
  "productId": string,
  "expiryTime": string,

  // Union field plan_type can be only one of the following:
  "autoRenewingPlan": {
    object (AutoRenewingPlan)
  },
  "prepaidPlan": {
    object (PrepaidPlan)
  }
  // End of list of possible types for union field plan_type.
  "offerDetails": {
    object (OfferDetails)
  },

  // Union field deferred_item_change can be only one of the following:
  "deferredItemReplacement": {
    object (DeferredItemReplacement)
  }
  // End of list of possible types for union field deferred_item_change.
}
Campos
productId

string

O ID do produto comprado (por exemplo, "monthly001").

expiryTime

string (Timestamp format)

Horário em que a assinatura expirou ou vai expirar, a menos que o acesso seja estendido (por exemplo, renovação).

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

Campo de união plan_type. O tipo de plano de assinatura. plan_type pode ser apenas de um dos tipos a seguir:
autoRenewingPlan

object (AutoRenewingPlan)

O item é renovado automaticamente.

prepaidPlan

object (PrepaidPlan)

O item é pré-pago.

offerDetails

object (OfferDetails)

Detalhes da oferta deste item.

Campo de união deferred_item_change. O campo está presente quando um item tem uma alteração adiada. Ela pode ser removida ou substituída. deferred_item_change pode ser apenas de um dos tipos a seguir:
deferredItemReplacement

object (DeferredItemReplacement)

Informações sobre a substituição de itens adiados.

AutoRenewingPlan

Informações relacionadas a um plano de renovação automática.

Representação JSON
{
  "autoRenewEnabled": boolean,
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  }
}
Campos
autoRenewEnabled

boolean

Se a assinatura estiver configurada para renovação automática, por exemplo, se o usuário não cancelou a assinatura

priceChangeDetails

object (SubscriptionItemPriceChangeDetails)

Informações sobre a última mudança de preço do item desde a inscrição da assinatura.

SubscriptionItemPriceChangeDetails

Informações relacionadas à mudança de preço de um item de assinatura.

Representação JSON
{
  "newPrice": {
    object (Money)
  },
  "priceChangeMode": enum (PriceChangeMode),
  "priceChangeState": enum (PriceChangeState),
  "expectedNewPriceChargeTime": string
}
Campos
newPrice

object (Money)

Novo preço recorrente do item de assinatura.

priceChangeMode

enum (PriceChangeMode)

O modo de alteração de preço especifica como o preço do item de assinatura vai mudar.

priceChangeState

enum (PriceChangeState)

Informe a mudança de preço em vigor.

expectedNewPriceChargeTime

string (Timestamp format)

A hora da renovação em que a mudança de preço entrará em vigor para o usuário. Isso está sujeito a alterações(a um momento no futuro) devido a casos em que o horário de renovação mude, como pausa. Este campo só será preenchido se a mudança de preço não tiver entrado em vigor.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

PriceChangeMode

O modo da mudança de preço.

Enums
PRICE_CHANGE_MODE_UNSPECIFIED Modo de alteração de preço não especificado. Esse valor nunca deve ser definido.
PRICE_DECREASE Se o preço da assinatura estiver diminuindo.
PRICE_INCREASE Se o preço da assinatura estiver aumentando e o usuário precisar aceitar a assinatura.
OPT_OUT_PRICE_INCREASE Se o preço da assinatura está aumentando com o modo "Desativar".

PriceChangeState

O estado da mudança de preço.

Enums
PRICE_CHANGE_STATE_UNSPECIFIED Estado da mudança de preço não especificado. Esse valor não deve ser usado.
OUTSTANDING Aguardando o usuário concordar com a mudança de preço.
CONFIRMED A mudança de preço está confirmada para o usuário.
APPLIED A mudança de preço foi aplicada, ou seja, o usuário começou a receber a cobrança do novo preço.

PrepaidPlan

Informações relacionadas a um plano pré-pago.

Representação JSON
{
  "allowExtendAfterTime": string
}
Campos
allowExtendAfterTime

string (Timestamp format)

Se presente, esse é o período após o qual as compras de recarga serão permitidas para o plano pré-pago. Não estará presente em planos pré-pagos expirados.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

OfferDetails

Oferecer detalhes sobre um item de linha de compra.

Representação JSON
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
Campos
offerTags[]

string

As tags mais recentes associadas à oferta. Inclui tags herdadas do plano básico.

basePlanId

string

O ID do plano básico. Presente em todos os planos básicos e ofertas.

offerId

string

O ID da oferta. Presente apenas para ofertas com desconto.

DeferredItemReplacement

Informações relacionadas à substituição de itens adiados.

Representação JSON
{
  "productId": string
}
Campos
productId

string

O productId substituirá o productId existente.

Métodos

get

Receber metadados sobre uma assinatura

revoke

Revogar uma compra de assinatura para o usuário.