REST Resource: purchases.subscriptions

Recurso: SubscriptionPurchase

O recurso SubscriptionPurchase indica o status da compra de assinatura de um usuário.

Representação JSON
{
  "kind": string,
  "startTimeMillis": string,
  "expiryTimeMillis": string,
  "autoResumeTimeMillis": string,
  "autoRenewing": boolean,
  "priceCurrencyCode": string,
  "priceAmountMicros": string,
  "introductoryPriceInfo": {
    object (IntroductoryPriceInfo)
  },
  "countryCode": string,
  "developerPayload": string,
  "paymentState": integer,
  "cancelReason": integer,
  "userCancellationTimeMillis": string,
  "cancelSurveyResult": {
    object (SubscriptionCancelSurveyResult)
  },
  "orderId": string,
  "linkedPurchaseToken": string,
  "purchaseType": integer,
  "priceChange": {
    object (SubscriptionPriceChange)
  },
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string,
  "profileId": string,
  "acknowledgementState": integer,
  "externalAccountId": string,
  "promotionType": integer,
  "promotionCode": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Campos
kind

string

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

startTimeMillis

string (int64 format)

Hora em que a assinatura foi concedida, em milissegundos, desde a época.

expiryTimeMillis

string (int64 format)

Horário em que a assinatura vencerá, em milissegundos, desde a época.

autoResumeTimeMillis

string (int64 format)

Horário em que a assinatura será retomada automaticamente, em milissegundos, desde a época. Presente apenas se o usuário solicitar a pausa da assinatura.

autoRenewing

boolean

Indica se a assinatura será renovada automaticamente quando atingir o prazo de validade atual.

priceCurrencyCode

string

Código de moeda ISO 4217 para o preço da assinatura. Por exemplo, se o preço for especificado em libras esterlinas, o priceCurrencyCode é "GBP".

priceAmountMicros

string (int64 format)

Preço da assinatura. Para países sem tributos, o preço não inclui tributos. Para países com tributos, o preço inclui tributos. O preço é expresso em microunidades, em que um milhão de microunidades representa uma unidade da moeda. Por exemplo, se o preço da assinatura é de € 1,99, priceAmountMicros é 1990000.

introductoryPriceInfo

object (IntroductoryPriceInfo)

Informações sobre o preço inicial da assinatura. Esta opção só está presente quando a assinatura é comprada com um preço inicial.

Esse campo não indica que a assinatura está no período de preço inicial.

countryCode

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.

developerPayload

string

Uma string especificada pelo desenvolvedor que contém informações complementares sobre um pedido.

paymentState

integer

Estado de pagamento da assinatura. Os valores possíveis são: 0. Pagamento pendente 1. Pagamento recebido 2. Teste sem custo financeiro 3. Upgrade/downgrade adiado pendente

Não presente para assinaturas canceladas e expiradas.

cancelReason

integer

É o motivo do cancelamento ou da renovação automática de uma assinatura. Os valores possíveis são: 0. O usuário cancelou a assinatura 1. A assinatura foi cancelada pelo sistema, por exemplo, devido a um problema de faturamento 2. A assinatura foi substituída por uma nova. 3. A assinatura foi cancelada pelo desenvolvedor

userCancellationTimeMillis

string (int64 format)

A hora em que a assinatura foi cancelada pelo usuário, em milissegundos, desde o período. Presente apenas se cancelReason for 0.

cancelSurveyResult

object (SubscriptionCancelSurveyResult)

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

orderId

string

O ID do pedido recorrente mais recente associado à compra da assinatura. Se a assinatura foi cancelada porque o pagamento foi recusado, este será o ID do pedido de pagamento recusado.

linkedPurchaseToken

string

O token da compra original, se a assinatura for uma das seguintes: 0. Nova assinatura de uma assinatura cancelada, mas não expirada 1. Fazer upgrade/downgrade de uma assinatura anterior

Por exemplo, suponha que um usuário se inscreva e você receba o token de compra X. Em seguida, ele cancela e passa pelo fluxo de nova assinatura (antes do fim da assinatura), e você recebe o token de compra Y. Por fim, o usuário faz upgrade da assinatura e você recebe o token de compra Z. Se você chamar essa API com o token de compra Z, esse campo será definido como Y. Se você chamar essa API com o token de compra Y, esse campo será definido como X. Se você chamar esta API com o token de compra X, este campo não será definido.

purchaseType

integer

Tipo de compra da assinatura. Este campo só será definido se a compra não tiver sido feita usando o fluxo padrão de faturamento em apps. Os valores possíveis são: 0. Teste (ou seja, comprado de uma conta de teste de licença) 1. Promoção (ou seja, comprada usando um código promocional)

priceChange

object (SubscriptionPriceChange)

As informações mais recentes sobre a mudança de preço disponíveis. Esta opção só aparece quando há uma mudança de preço futura para a assinatura que ainda não foi aplicada.

Quando a assinatura for renovada com o novo preço ou cancelada, nenhuma informação de mudança de preço será retornada.

profileName

string

Nome do perfil do usuário quando a assinatura foi comprada. Presente apenas para compras feitas com o "Assine com o Google".

emailAddress

string

O endereço de e-mail do usuário quando a assinatura foi comprada. Presente apenas para compras feitas com o "Assine com o Google".

givenName

string

É o nome do usuário quando a assinatura foi comprada. Presente apenas para compras feitas com o "Assine com o Google".

familyName

string

Sobrenome do usuário quando a assinatura foi comprada. Presente apenas para compras feitas com o "Assine com o Google".

profileId

string

O ID do perfil do Google do usuário quando a assinatura foi comprada. Presente apenas para compras feitas com o "Assine com o Google".

acknowledgementState

integer

O estado de confirmação do produto por assinatura. Os valores possíveis são: 0. A confirmar 1. Confirmação

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.

promotionType

integer

Tipo de promoção aplicada a esta compra. Este campo só vai ser definido se uma promoção for aplicada quando a assinatura foi comprada. Os valores possíveis são: 0. Código de uso único 1. Código curto

promotionCode

string

O código promocional aplicado nesta compra. Esse campo só será definido se uma promoção de código curto for aplicada quando a assinatura foi comprada.

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.

IntroductoryPriceInfo

Contém as informações do preço inicial de uma assinatura.

Representação JSON
{
  "introductoryPriceCurrencyCode": string,
  "introductoryPriceAmountMicros": string,
  "introductoryPricePeriod": string,
  "introductoryPriceCycles": integer
}
Campos
introductoryPriceCurrencyCode

string

Código de moeda ISO 4217 para o preço inicial da assinatura. Por exemplo, se o preço for especificado em libras esterlinas, o priceCurrencyCode é "GBP".

introductoryPriceAmountMicros

string (int64 format)

Preço inicial da assinatura, sem incluir tributos. A moeda é igual a priceCurrencyCode. O preço é expresso em microunidades, em que um milhão de microunidades representa uma unidade da moeda. Por exemplo, se o preço da assinatura é de € 1,99, priceAmountMicros é 1990000.

introductoryPricePeriod

string

Período de preço inicial, especificado no formato ISO 8601. Os valores comuns são (mas não se limitam a) "P1W" (uma semana), "P1M" (um mês), "P3M" (três meses), "P6M" (seis meses) e "P1Y" (um ano).

introductoryPriceCycles

integer

O número do período de faturamento em que será oferecido o preço inicial.

SubscriptionCancelSurveyResult

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

Representação JSON
{
  "cancelSurveyReason": integer,
  "userInputCancelReason": string
}
Campos
cancelSurveyReason

integer

O motivo do cancelamento que o usuário escolheu na pesquisa. Os valores possíveis são: 0. Outro 1. Não uso o serviço com frequência 2. Problemas técnicos 3. Motivos relacionados ao custo 4. Descobri um app melhor

userInputCancelReason

string

O motivo de cancelamento da entrada personalizada do usuário. Presente apenas quando cancelReason é 0.

SubscriptionPriceChange

Contém informações sobre a mudança de preço de uma assinatura que podem ser usadas para controlar a jornada do usuário no app. Isso pode ser na forma de solicitar a confirmação do usuário ou personalizar a experiência para uma conversão bem-sucedida.

Representação JSON
{
  "newPrice": {
    object (Price)
  },
  "state": integer
}
Campos
newPrice

object (Price)

O novo preço de renovação da assinatura se a mudança de preço for aceita pelo usuário.

state

integer

O estado atual da mudança de preço. Os valores possíveis são: 0. Pendente: indica uma mudança de preço pendente que aguarda a aceitação do usuário. Nesse estado, você tem a opção de buscar a confirmação do usuário usando a API no app. 1. Aceita: estado de uma mudança de preço aceita com que a assinatura vai ser renovada, a menos que seja cancelada. A mudança de preço vai entrar em vigor na próxima data em que a assinatura for renovada. Observe que a mudança pode não ocorrer quando a assinatura for renovada.

Métodos

acknowledge

Confirma a compra de uma assinatura.

cancel

Cancela a compra da assinatura de um usuário.

defer

Adia a compra da assinatura de um usuário até um prazo de validade especificado.

get

Verifica se a compra de assinatura de um usuário é válida e retorna o prazo de validade.

refund

Reembolsa a assinatura de um usuário, mas a assinatura permanece válida até o prazo de validade e é recorrente.

revoke

Reembolsa e revoga imediatamente a compra da assinatura de um usuário.