- Risorsa: SubscriptionPurchaseV2
- SubscriptionState
- PausedStateContext
- CanceledStateContext
- UserInitiatedCancellation
- CancelSurveyResult
- CancelSurveyReason
- SystemInitiatedCancellation
- DeveloperInitiatedCancellation
- ReplacementCancellation
- TestPurchase
- AcknowledgementState
- ExternalAccountIdentifiers
- SubscribeWithGoogleInfo
- SubscriptionPurchaseLineItem
- AutoRenewingPlan
- SubscriptionItemPriceChangeDetails
- PriceChangeMode
- PriceChangeState
- InstallmentPlan
- PendingCancellation
- PrepaidPlan
- OfferDetails
- DeferredItemReplacement
- SignupPromotion
- OneTimeCode
- VanityCode
- Metodi
Risorsa: SubscriptionPurchaseV2
Indica lo stato dell'acquisto dell'abbonamento di un utente.
Rappresentazione JSON |
---|
{ "kind": string, "regionCode": string, "lineItems": [ { object ( |
Campi | |
---|---|
kind |
Questo tipo rappresenta un oggetto SubscriptionPurchaseV2 nel servizio androidpublisher. |
region |
Codice paese/regione di fatturazione ISO 3166-1 alpha-2 dell'utente al momento della concessione dell'abbonamento. |
line |
Informazioni a livello di articolo per un acquisto di abbonamento. Gli articoli nello stesso acquisto devono essere tutti con AutoRenewingPlan o tutti con PrepaidPlan. |
start |
Ora in cui è stato concesso l'abbonamento. Non impostato per gli abbonamenti in attesa (l'abbonamento è stato creato, ma è in attesa di pagamento durante la registrazione). Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
subscription |
Lo stato attuale dell'abbonamento. |
latest |
L'ID dell'ordine più recente associato all'acquisto dell'abbonamento. Per l'abbonamento con rinnovo automatico, si tratta dell'ID ordine dell'ordine di registrazione se non è ancora stato rinnovato o dell'ultimo ID ordine ricorrente (ordine riuscito, in attesa o rifiutato). Per l'abbonamento prepagato, si tratta dell'ID ordine associato al token di acquisto sottoposto a query. |
linked |
Il token di acquisto dell'abbonamento precedente se si tratta di uno dei seguenti: * Registrazione di un abbonamento annullato, ma non scaduto * Upgrade/downgrade da un abbonamento precedente. * Passare da un abbonamento prepagato a un abbonamento con rinnovo automatico. * Passare da un abbonamento con rinnovo automatico a un abbonamento prepagato. * Ricaricare un abbonamento prepagato. |
paused |
Contesto aggiuntivo sugli abbonamenti in pausa. Presente solo se l'abbonamento ha attualmente subscriptionState SUBSCRIPTION_STATE_PAUSED. |
canceled |
Contesto aggiuntivo sugli abbonamenti annullati. Presente solo se l'abbonamento ha attualmente lo stato subscriptionState SUBSCRIPTION_STATE_CANCELED o SUBSCRIPTION_STATE_EXPIRED. |
test |
Presente solo se l'acquisto dell'abbonamento è un acquisto di prova. |
acknowledgement |
Lo stato di conferma dell'abbonamento. |
external |
Identificatore dell'account utente nel servizio di terze parti. |
subscribe |
Profilo utente associato agli acquisti effettuati con "Abbonati con Google". |
SubscriptionState
I potenziali stati di un abbonamento, ad esempio se è attivo o annullato. Gli articoli inclusi in un acquisto di abbonamento possono essere tutti piani con rinnovo automatico o tutti piani prepagati.
Enum | |
---|---|
SUBSCRIPTION_STATE_UNSPECIFIED |
Stato dell'abbonamento non specificato. |
SUBSCRIPTION_STATE_PENDING |
L'abbonamento è stato creato, ma è in attesa di pagamento durante la registrazione. In questo stato, tutti gli articoli sono in attesa di pagamento. |
SUBSCRIPTION_STATE_ACTIVE |
L'abbonamento è attivo. - (1) Se l'abbonamento è un piano con rinnovo automatico, almeno un elemento è autoRenewEnabled e non è scaduto. - (2) Se l'abbonamento è un piano prepagato, almeno un articolo non è scaduto. |
SUBSCRIPTION_STATE_PAUSED |
L'abbonamento è in pausa. Lo stato è disponibile solo se l'abbonamento è un piano con rinnovo automatico. In questo stato, tutti gli elementi sono in stato di pausa. |
SUBSCRIPTION_STATE_IN_GRACE_PERIOD |
L'abbonamento è in un periodo di tolleranza. Lo stato è disponibile solo se l'abbonamento è un piano con rinnovo automatico. In questo stato, tutti gli articoli sono in periodo di tolleranza. |
SUBSCRIPTION_STATE_ON_HOLD |
L'abbonamento è in sospeso (sospeso). Lo stato è disponibile solo se l'abbonamento è un piano con rinnovo automatico. In questo stato, tutti gli elementi sono in attesa. |
SUBSCRIPTION_STATE_CANCELED |
L'abbonamento è stato annullato, ma non è ancora scaduto. Lo stato è disponibile solo se l'abbonamento è un piano con rinnovo automatico. Per tutti gli elementi, l'attributo autoRenewEnabled è impostato su false. |
SUBSCRIPTION_STATE_EXPIRED |
L'abbonamento è scaduto. Tutti gli elementi hanno un valore expiryTime nel passato. |
SUBSCRIPTION_STATE_PENDING_PURCHASE_CANCELED |
La transazione in attesa per l'abbonamento è stata annullata. Se questo acquisto in attesa riguarda un abbonamento esistente, utilizza linkedPurchaseToken per ottenere lo stato corrente dell'abbonamento. |
PausedStateContext
Informazioni specifiche su un abbonamento in stato In pausa.
Rappresentazione JSON |
---|
{ "autoResumeTime": string } |
Campi | |
---|---|
auto |
Data e ora in cui l'abbonamento verrà ripreso automaticamente. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
CanceledStateContext
Informazioni specifiche su un abbonamento nello stato SUBSCRIPTION_STATE_CANCELED o SUBSCRIPTION_STATE_EXPIRED.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo unione cancellation_reason . Il motivo per cui un abbonamento è stato annullato. cancellation_reason può essere solo uno dei seguenti: |
|
user |
L'abbonamento è stato annullato dall'utente. |
system |
L'abbonamento è stato annullato dal sistema, ad esempio a causa di un problema di fatturazione. |
developer |
L'abbonamento è stato annullato dallo sviluppatore. |
replacement |
L'abbonamento è stato sostituito da un nuovo abbonamento. |
UserInitiatedCancellation
Informazioni specifiche sugli annullamenti avviati dagli utenti.
Rappresentazione JSON |
---|
{
"cancelSurveyResult": {
object ( |
Campi | |
---|---|
cancel |
Informazioni fornite dall'utente quando completa il flusso di annullamento dell'abbonamento (sondaggio sul motivo dell'annullamento). |
cancel |
La data e l'ora in cui l'abbonamento è stato annullato dall'utente. L'utente potrebbe comunque avere accesso all'abbonamento dopo questa data. Utilizza lineItems.expiry_time per determinare se un utente ha ancora accesso. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
CancelSurveyResult
Risultato del sondaggio sull'annullamento quando l'abbonamento è stato annullato dall'utente.
Rappresentazione JSON |
---|
{
"reason": enum ( |
Campi | |
---|---|
reason |
Il motivo selezionato dall'utente nel sondaggio sull'annullamento. |
reason |
Impostato solo per CANCEL_SURVEY_REASON_OTHERS. Si tratta della risposta libera dell'utente al sondaggio. |
CancelSurveyReason
Il motivo selezionato dall'utente nel sondaggio sull'annullamento.
Enum | |
---|---|
CANCEL_SURVEY_REASON_UNSPECIFIED |
Motivo dell'annullamento del sondaggio non specificato. |
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE |
Utilizzo insufficiente dell'abbonamento. |
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES |
Problemi tecnici durante l'utilizzo dell'app. |
CANCEL_SURVEY_REASON_COST_RELATED |
Problemi relativi ai costi. |
CANCEL_SURVEY_REASON_FOUND_BETTER_APP |
L'utente ha trovato un'app migliore. |
CANCEL_SURVEY_REASON_OTHERS |
Altri motivi. |
SystemInitiatedCancellation
Questo tipo non contiene campi.
Informazioni specifiche sugli annullamenti avviati dal sistema di Google.
DeveloperInitiatedCancellation
Questo tipo non contiene campi.
Informazioni specifiche sugli annullamenti avviati dagli sviluppatori.
ReplacementCancellation
Questo tipo non contiene campi.
Informazioni specifiche sugli annullamenti causati dalla sostituzione dell'abbonamento.
TestPurchase
Questo tipo non contiene campi.
Indica se l'acquisto dell'abbonamento è un acquisto di prova.
AcknowledgementState
I possibili stati di conferma per un abbonamento.
Enum | |
---|---|
ACKNOWLEDGEMENT_STATE_UNSPECIFIED |
Stato di conferma non specificato. |
ACKNOWLEDGEMENT_STATE_PENDING |
L'abbonamento non è ancora stato confermato. |
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED |
L'abbonamento è stato confermato. |
ExternalAccountIdentifiers
Identificatore dell'account utente nel servizio di terze parti.
Rappresentazione JSON |
---|
{ "externalAccountId": string, "obfuscatedExternalAccountId": string, "obfuscatedExternalProfileId": string } |
Campi | |
---|---|
external |
Identificatore dell'account utente nel servizio di terze parti. Presente solo se il collegamento dell'account è avvenuto nell'ambito del flusso di acquisto dell'abbonamento. |
obfuscated |
Una versione offuscata dell'ID associata in modo univoco all'account dell'utente nella tua app. Presente per i seguenti acquisti: * Se il collegamento dell'account è avvenuto nell'ambito del flusso di acquisto dell'abbonamento. * È stato specificato utilizzando https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid al momento dell'acquisto. |
obfuscated |
Una versione offuscata dell'ID associata in modo univoco al profilo dell'utente nella tua app. È presente solo se specificato utilizzando https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid al momento dell'acquisto. |
SubscribeWithGoogleInfo
Informazioni associate agli acquisti effettuati con "Abbonati con Google".
Rappresentazione JSON |
---|
{ "profileId": string, "profileName": string, "emailAddress": string, "givenName": string, "familyName": string } |
Campi | |
---|---|
profile |
L'ID profilo Google dell'utente al momento dell'acquisto dell'abbonamento. |
profile |
Il nome del profilo dell'utente al momento dell'acquisto dell'abbonamento. |
email |
L'indirizzo email dell'utente al momento dell'acquisto dell'abbonamento. |
given |
Il nome dell'utente al momento dell'acquisto dell'abbonamento. |
family |
Il cognome dell'utente al momento dell'acquisto dell'abbonamento. |
SubscriptionPurchaseLineItem
Informazioni a livello di articolo per un acquisto di abbonamento.
Rappresentazione JSON |
---|
{ "productId": string, "expiryTime": string, // Union field |
Campi | |
---|---|
product |
L'ID prodotto acquistato (ad es. "monthly001"). |
expiry |
Data e ora in cui l'abbonamento è scaduto o scadrà, a meno che l'accesso non venga esteso (ad es. rinnovato). Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
Campo unione plan_type . Il tipo di piano di abbonamento. plan_type può essere solo uno dei seguenti: |
|
auto |
L'articolo si rinnova automaticamente. |
prepaid |
L'articolo è prepagato. |
offer |
I dettagli dell'offerta per questo articolo. |
Campo unione deferred_item_change . Il campo è presente quando un elemento ha una modifica differita. Può essere rimosso o sostituito. deferred_item_change può essere solo uno dei seguenti: |
|
deferred |
Informazioni per la sostituzione di articoli differita. |
signup |
Dettagli della promozione relativi a questo articolo. Impostato solo se è stata applicata una promozione durante la registrazione. |
AutoRenewingPlan
Informazioni relative a un piano con rinnovo automatico.
Rappresentazione JSON |
---|
{ "autoRenewEnabled": boolean, "priceChangeDetails": { object ( |
Campi | |
---|---|
auto |
Se l'abbonamento è attualmente impostato sul rinnovo automatico, ad esempio se l'utente non lo ha annullato |
price |
Le informazioni sull'ultima variazione di prezzo dell'articolo dall'iscrizione all'abbonamento. |
installment |
L'impegno relativo al piano di rateizzazione e le informazioni relative allo stato del piano con rinnovo automatico. |
SubscriptionItemPriceChangeDetails
Informazioni relative alla variazione di prezzo di un articolo dell'abbonamento.
Rappresentazione JSON |
---|
{ "newPrice": { object ( |
Campi | |
---|---|
new |
Nuovo prezzo ricorrente per l'articolo dell'abbonamento. |
price |
La modalità di variazione del prezzo specifica in che modo cambia il prezzo dell'articolo dell'abbonamento. |
price |
Indica lo stato attuale della variazione di prezzo. |
expected |
La data di rinnovo in cui la variazione di prezzo entrerà in vigore per l'utente. Questo valore può cambiare(in un momento futuro) a causa di casi in cui la data di rinnovo cambia, ad esempio in caso di pausa. Questo campo viene compilato solo se la modifica del prezzo non è stata applicata. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
PriceChangeMode
La modalità di variazione del prezzo.
Enum | |
---|---|
PRICE_CHANGE_MODE_UNSPECIFIED |
Modalità di variazione del prezzo non specificata. Questo valore non deve mai essere impostato. |
PRICE_DECREASE |
Se il prezzo dell'abbonamento sta diminuendo. |
PRICE_INCREASE |
Se il prezzo dell'abbonamento aumenta e l'utente deve accettarlo. |
OPT_OUT_PRICE_INCREASE |
Se il prezzo dell'abbonamento aumenta con la modalità di disattivazione. |
PriceChangeState
Lo stato della variazione di prezzo.
Enum | |
---|---|
PRICE_CHANGE_STATE_UNSPECIFIED |
Stato della variazione di prezzo non specificato. Questo valore non deve essere utilizzato. |
OUTSTANDING |
In attesa che l'utente accetti la variazione di prezzo. |
CONFIRMED |
La variazione di prezzo è confermata per l'utente. |
APPLIED |
La variazione di prezzo è stata applicata, ovvero all'utente è stato iniziato ad addebitare il nuovo prezzo. |
InstallmentPlan
Informazioni su un piano di rateizzazione.
Rappresentazione JSON |
---|
{
"initialCommittedPaymentsCount": integer,
"subsequentCommittedPaymentsCount": integer,
"remainingCommittedPaymentsCount": integer,
"pendingCancellation": {
object ( |
Campi | |
---|---|
initial |
Numero totale di pagamenti per i quali l'utente si è inizialmente impegnato. |
subsequent |
Numero totale di pagamenti per i quali l'utente si impegna dopo ogni periodo di impegno. Se il campo è vuoto, dopo il periodo di impegno iniziale il piano di rateizzazione tornerà a un normale abbonamento con rinnovo automatico. |
remaining |
Numero totale di pagamenti impegnati rimanenti da pagare in questo ciclo di rinnovo. |
pending |
Se presente, questo piano di rateizzazione è in attesa di annullamento. L'annullamento verrà eseguito solo dopo che l'utente avrà completato tutti i pagamenti previsti. |
PendingCancellation
Questo tipo non contiene campi.
Questo è un indicatore che indica se è presente un annullamento in attesa per il piano di rate virtuali. L'annullamento verrà eseguito solo dopo che l'utente avrà completato tutti i pagamenti previsti.
PrepaidPlan
Informazioni relative a un piano prepagato.
Rappresentazione JSON |
---|
{ "allowExtendAfterTime": string } |
Campi | |
---|---|
allow |
Se presente, si tratta del momento dopo il quale sono consentiti gli acquisti di ricariche per il piano prepagato. Non sarà presente per i piani prepagati scaduti. Un timestamp in formato "Zulu" UTC RFC3339, con risoluzione a livello di nanosecondo e fino a nove cifre frazionarie. Esempi: |
OfferDetails
Informazioni dettagliate sull'offerta relative a un elemento pubblicitario di acquisto.
Rappresentazione JSON |
---|
{ "offerTags": [ string ], "basePlanId": string, "offerId": string } |
Campi | |
---|---|
offer |
I tag di offerta più recenti associati all'offerta. Sono inclusi i tag ereditati dal piano base. |
base |
L'ID piano base. Presente per tutti i piani base e le offerte. |
offer |
L'ID offerta. Presente solo per le offerte scontate. |
DeferredItemReplacement
Informazioni relative alla sostituzione differita dell'articolo.
Rappresentazione JSON |
---|
{ "productId": string } |
Campi | |
---|---|
product |
Il nuovo productId sostituirà quello esistente. |
SignupPromotion
La promozione applicata a questo articolo al momento dell'acquisto.
Rappresentazione JSON |
---|
{ // Union field |
Campi | |
---|---|
Campo unione promotion_type . Il tipo di promozione applicata all'articolo. promotion_type può essere solo uno dei seguenti: |
|
one |
È stato applicato un codice una tantum. |
vanity |
È stato applicato un codice vanity. |
OneTimeCode
Questo tipo non contiene campi.
Un codice promozionale monouso.
VanityCode
Un codice promozionale predefinito utilizzabile più volte.
Rappresentazione JSON |
---|
{ "promotionCode": string } |
Campi | |
---|---|
promotion |
Il codice promozionale. |
Metodi |
|
---|---|
|
Recuperare i metadati di una sottoscrizione |
|
Revoca l'acquisto di un abbonamento per l'utente. |