REST Resource: purchases.subscriptionsv2

Ressource: SubscriptionPurchaseV2

Indique l'état de l'achat d'un abonnement par un utilisateur.

Représentation 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)
  }
}
Champs
kind

string

Ce genre représente un objet SubscriptionPurchaseV2 dans le service androidpublisher.

regionCode

string

Code ISO 3166-1 alpha-2 du pays/de la région de facturation de l'utilisateur au moment de l'octroi de l'abonnement.

lineItems[]

object (SubscriptionPurchaseLineItem)

Informations au niveau de l'article pour un abonnement. Les articles d'un même achat doivent être tous associés à un AutoRenewingPlan ou à un PrepaidPlan.

startTime

string (Timestamp format)

Heure à laquelle l'abonnement a été accordé. Non défini pour les abonnements en attente (l'abonnement a été créé, mais le paiement est en attente lors de l'inscription).

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

subscriptionState

enum (SubscriptionState)

État actuel de l'abonnement.

latestOrderId

string

ID de commande de la dernière commande associée à l'achat de l'abonnement. Pour un abonnement avec renouvellement automatique, il s'agit de l'identifiant de la commande d'inscription si celle-ci n'a pas encore été renouvelée ou de l'identifiant de la dernière commande récurrente (commande réussie, en attente ou refusée). Pour un abonnement prépayé, il s'agit de l'ID de commande associé au jeton d'achat interrogé.

linkedPurchaseToken

string

Jeton d'achat de l'ancien abonnement si cet abonnement est l'un des suivants: * Réinscription d'un abonnement résilié, mais non arrivé à expiration * Passage à une édition supérieure/inférieure d'un abonnement précédent. * Passer d'un abonnement prépayé à un abonnement à renouvellement automatique * Passer d'un abonnement à renouvellement automatique à un abonnement prépayé. * Recharger un abonnement prépayé

pausedStateContext

object (PausedStateContext)

Informations supplémentaires concernant la suspension des abonnements. Présent uniquement si l'abonnement possède actuellement l'état subscriptionState SUBSCRIPTION_STATE_PA semble.

canceledStateContext

object (CanceledStateContext)

Contexte supplémentaire concernant les abonnements résiliés Présent uniquement si l'abonnement possède actuellement l'état subscriptionState SUBSCRIPTION_STATE_CANCELED.

testPurchase

object (TestPurchase)

Présent uniquement s'il s'agit d'un achat test.

acknowledgementState

enum (AcknowledgementState)

État de confirmation de l'abonnement.

externalAccountIdentifiers

object (ExternalAccountIdentifiers)

Identifiant de compte utilisateur dans le service tiers.

subscribeWithGoogleInfo

object (SubscribeWithGoogleInfo)

Profil utilisateur associé aux achats effectués via S'abonner avec Google.

SubscriptionState

États potentiels dans lesquels un abonnement peut se trouver (par exemple, s'il est actif ou résilié). Lorsque vous souscrivez un abonnement, il peut s'agir de forfaits à renouvellement automatique ou de forfaits prépayés.

Enums
SUBSCRIPTION_STATE_UNSPECIFIED État de l'abonnement non spécifié.
SUBSCRIPTION_STATE_PENDING L'abonnement a été créé, mais le paiement est en attente lors de l'inscription. Dans cet état, tous les articles sont en attente de paiement.
SUBSCRIPTION_STATE_ACTIVE L'abonnement est actif. - (1) Si l'abonnement est un forfait à renouvellement automatique, au moins un élément est autoRenewEnabled et n'a pas expiré. - (2) S'il s'agit d'un forfait prépayé, au moins un article n'a pas expiré.
SUBSCRIPTION_STATE_PAUSED L'abonnement est suspendu. L'état n'est disponible que lorsque l'abonnement est un forfait à renouvellement automatique. Dans cet état, tous les éléments sont mis en veille.
SUBSCRIPTION_STATE_IN_GRACE_PERIOD L'abonnement est en délai de grâce. L'état n'est disponible que lorsque l'abonnement est un forfait à renouvellement automatique. Dans cet état, tous les éléments sont soumis à un délai de grâce.
SUBSCRIPTION_STATE_ON_HOLD L'abonnement est suspendu (suspendu). L'état n'est disponible que lorsque l'abonnement est un forfait à renouvellement automatique. Dans cet état, tous les éléments sont conservés.
SUBSCRIPTION_STATE_CANCELED L'abonnement est résilié, mais n'a pas encore expiré. L'état n'est disponible que lorsque l'abonnement est un forfait à renouvellement automatique. AutoRenewEnabled est défini sur "false" pour tous les éléments.
SUBSCRIPTION_STATE_EXPIRED L'abonnement est arrivé à expiration. Tous les éléments ont déjà expiré.

PausedStateContext

Informations spécifiques à un abonnement suspendu.

Représentation JSON
{
  "autoResumeTime": string
}
Champs
autoResumeTime

string (Timestamp format)

Heure à laquelle l'abonnement sera automatiquement réactivé.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

CanceledStateContext

Informations spécifiques à un abonnement résilié.

Représentation 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.
}
Champs
Champ d'union cancellation_reason. Motif de l'annulation d'un abonnement. cancellation_reason ne peut être qu'un des éléments suivants :
userInitiatedCancellation

object (UserInitiatedCancellation)

L'abonnement a été résilié par l'utilisateur.

systemInitiatedCancellation

object (SystemInitiatedCancellation)

L'abonnement a été annulé par le système (en raison d'un problème de facturation, par exemple).

developerInitiatedCancellation

object (DeveloperInitiatedCancellation)

L'abonnement a été résilié par le développeur.

replacementCancellation

object (ReplacementCancellation)

L'abonnement a été remplacé par un nouvel abonnement.

UserInitiatedCancellation

Informations spécifiques aux annulations initiées par les utilisateurs.

Représentation JSON
{
  "cancelSurveyResult": {
    object (CancelSurveyResult)
  },
  "cancelTime": string
}
Champs
cancelSurveyResult

object (CancelSurveyResult)

Informations fournies par l'utilisateur lorsqu'il termine la procédure de résiliation de l'abonnement (enquête sur le motif de l'annulation).

cancelTime

string (Timestamp format)

Heure à laquelle l'abonnement a été résilié par l'utilisateur. Il est possible que l'utilisateur ait encore accès à l'abonnement après cette période. Utilisez lineItems.expiry_time pour déterminer si un utilisateur y a toujours accès.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

CancelSurveyResult

Résultat de l'enquête sur l'annulation de l'abonnement lorsque l'utilisateur a résilié son abonnement.

Représentation JSON
{
  "reason": enum (CancelSurveyReason),
  "reasonUserInput": string
}
Champs
reason

enum (CancelSurveyReason)

Raison sélectionnée par l'utilisateur dans l'enquête d'annulation.

reasonUserInput

string

Défini uniquement pour CANCEL_SURVEY_REASON_OTHERS. Il s'agit de la réponse libre de l'utilisateur à l'enquête.

CancelSurveyReason

Raison sélectionnée par l'utilisateur dans l'enquête d'annulation.

Enums
CANCEL_SURVEY_REASON_UNSPECIFIED Motif d'annulation de l'enquête non spécifié.
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE Utilisation insuffisante de l'abonnement.
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES Problèmes techniques lors de l'utilisation de l'application
CANCEL_SURVEY_REASON_FOUND_BETTER_APP L'utilisateur a trouvé une meilleure application.
CANCEL_SURVEY_REASON_OTHERS Autres raisons.

SystemInitiatedCancellation

Ce type ne comporte aucun champ.

Informations spécifiques aux annulations initiées par le système Google.

DeveloperInitiatedCancellation

Ce type ne comporte aucun champ.

Informations spécifiques aux annulations initiées par les développeurs.

ReplacementCancellation

Ce type ne comporte aucun champ.

Informations spécifiques aux annulations causées par le remplacement d'un abonnement.

TestPurchase

Ce type ne comporte aucun champ.

Indique si cet achat d'abonnement est un achat test.

AcknowledgementState

États de confirmation possibles pour un abonnement.

Enums
ACKNOWLEDGEMENT_STATE_UNSPECIFIED État de confirmation non spécifié.
ACKNOWLEDGEMENT_STATE_PENDING L'abonnement n'a pas encore été confirmé.
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED L'abonnement est confirmé.

ExternalAccountIdentifiers

Identifiant de compte utilisateur dans le service tiers.

Représentation JSON
{
  "externalAccountId": string,
  "obfuscatedExternalAccountId": string,
  "obfuscatedExternalProfileId": string
}
Champs
externalAccountId

string

Identifiant de compte utilisateur dans le service tiers. Présent uniquement si l'association de compte a eu lieu lors du parcours d'achat de l'abonnement.

obfuscatedExternalAccountId

string

Version obscurcie de l'ID, associée de manière unique au compte de l'utilisateur dans votre application. Disponible pour les achats suivants: * Si l'association de compte a eu lieu dans le cadre du parcours d'achat de l'abonnement. * Il a été spécifié à l'aide de https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid lors de l'achat.

obfuscatedExternalProfileId

string

Version obscurcie de l'ID, associée de manière unique au profil de l'utilisateur dans votre application. Présent uniquement s'il est spécifié à l'aide de https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid lorsque l'achat a été effectué.

SubscribeWithGoogleInfo

Informations associées aux achats effectués via S'abonner avec Google.

Représentation JSON
{
  "profileId": string,
  "profileName": string,
  "emailAddress": string,
  "givenName": string,
  "familyName": string
}
Champs
profileId

string

ID de profil Google de l'utilisateur au moment de l'achat de l'abonnement.

profileName

string

Nom de profil de l'utilisateur au moment de l'achat de l'abonnement.

emailAddress

string

Adresse e-mail de l'utilisateur au moment de la souscription de l'abonnement.

givenName

string

Nom de l'utilisateur au moment de l'achat de l'abonnement.

familyName

string

Nom de famille de l'utilisateur au moment de la souscription de l'abonnement.

SubscriptionPurchaseLineItem

Informations au niveau de l'article pour un abonnement.

Représentation 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.
}
Champs
productId

string

ID du produit acheté (par exemple, "mensuel001").

expiryTime

string (Timestamp format)

Heure à laquelle l'abonnement a expiré ou expirera, sauf si l'accès est prolongé (par exemple, en cas de renouvellement).

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

Champ d'union plan_type. Type d'abonnement. plan_type ne peut être qu'un des éléments suivants :
autoRenewingPlan

object (AutoRenewingPlan)

Cet article est renouvelé automatiquement.

prepaidPlan

object (PrepaidPlan)

L'article est prépayé.

offerDetails

object (OfferDetails)

Détails de l'offre pour cet article.

Champ d'union deferred_item_change. Le champ est présent lorsqu'un élément comporte une modification différée. Vous pouvez soit la supprimer, soit la remplacer. deferred_item_change ne peut être qu'un des éléments suivants :
deferredItemReplacement

object (DeferredItemReplacement)

Informations sur les remplacements d'articles différés.

AutoRenewingPlan

Informations concernant un forfait à renouvellement automatique.

Représentation JSON
{
  "autoRenewEnabled": boolean,
  "priceChangeDetails": {
    object (SubscriptionItemPriceChangeDetails)
  }
}
Champs
autoRenewEnabled

boolean

Si l'abonnement est actuellement configuré pour se renouveler automatiquement (par exemple, si l'utilisateur n'a pas résilié l'abonnement)

priceChangeDetails

object (SubscriptionItemPriceChangeDetails)

Informations sur la dernière modification de prix de l'article depuis l'inscription à l'abonnement.

SubscriptionItemPriceChangeDetails

Informations liées au changement de prix d'un élément d'abonnement.

Représentation JSON
{
  "newPrice": {
    object (Money)
  },
  "priceChangeMode": enum (PriceChangeMode),
  "priceChangeState": enum (PriceChangeState),
  "expectedNewPriceChargeTime": string
}
Champs
newPrice

object (Money)

Nouveau prix récurrent pour l'abonnement.

priceChangeMode

enum (PriceChangeMode)

Le mode de modification du prix détermine la manière dont le prix de l'abonnement évolue.

priceChangeState

enum (PriceChangeState)

État dans lequel le changement de prix est en cours.

expectedNewPriceChargeTime

string (Timestamp format)

Date et heure de renouvellement à laquelle le changement de prix s'appliquera à l'utilisateur. Elle est susceptible d'être modifiée (à une date ultérieure) en raison des cas où le délai de renouvellement est décalé (par exemple, en cas de mise en veille). Ce champ n'est renseigné que si le changement de prix n'a pas été pris en compte.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

PriceChangeMode

Mode de changement de prix.

Enums
PRICE_CHANGE_MODE_UNSPECIFIED Mode de changement de prix non spécifié. Cette valeur ne doit jamais être définie.
PRICE_DECREASE Si le prix de l'abonnement baisse.
PRICE_INCREASE Si le prix de l'abonnement augmente et que l'utilisateur doit l'accepter.
OPT_OUT_PRICE_INCREASE Si le prix de l'abonnement augmente lorsque vous décidez de vous désinscrire.

PriceChangeState

État du changement de prix.

Enums
PRICE_CHANGE_STATE_UNSPECIFIED État du changement de prix non spécifié. Cette valeur ne doit pas être utilisée.
OUTSTANDING En attente de l'accord de l'utilisateur pour le changement de prix.
CONFIRMED Le changement de prix est confirmé pour l'utilisateur.
APPLIED Le changement de prix est appliqué, c'est-à-dire que le nouveau prix a commencé à être facturé à l'utilisateur.

PrepaidPlan

Informations concernant un forfait prépayé.

Représentation JSON
{
  "allowExtendAfterTime": string
}
Champs
allowExtendAfterTime

string (Timestamp format)

Le cas échéant, il s'agit du délai après lequel la recharge est autorisée pour le forfait prépayé. Indisponible pour les forfaits prépayés arrivés à expiration.

Code temporel au format RFC3339 UTC "Zulu", avec une résolution à la nanoseconde et jusqu'à neuf chiffres fractionnaires. Exemples: "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z".

OfferDetails

Détails de l'offre concernant un élément de campagne d'achat.

Représentation JSON
{
  "offerTags": [
    string
  ],
  "basePlanId": string,
  "offerId": string
}
Champs
offerTags[]

string

Derniers tags associés à l'offre. Il inclut les tags hérités du forfait de base.

basePlanId

string

ID du forfait de base. Disponible pour tous les forfaits de base et toutes les offres.

offerId

string

ID de l'offre. Présent uniquement pour les offres à prix réduit.

DeferredItemReplacement

Informations concernant le remplacement d'un article différé.

Représentation JSON
{
  "productId": string
}
Champs
productId

string

Le productId va remplacer le productId existant.

Méthodes

get

Obtenir des métadonnées sur un abonnement

revoke

Révoquez l'achat d'un abonnement pour l'utilisateur.