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 où l'abonnement a été accordé.

lineItems[]

object (SubscriptionPurchaseLineItem)

Informations au niveau de l'article pour un abonnement. Les articles faisant l'objet 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).

Un 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 à renouvellement automatique, il s'agit de l'ID de la commande d'inscription si celle-ci n'a pas encore été renouvelée ou de l'ID 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 celui-ci correspond à l'un des éléments suivants: * Réinscription d'un abonnement résilié, mais non expiré * 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é. * Rechargez un abonnement prépayé.

pausedStateContext

object (PausedStateContext)

Informations supplémentaires sur les abonnements suspendus. Présent uniquement si l'abonnement comporte actuellement subscriptionState SUBSCRIPTION_STATE_PAUSED.

canceledStateContext

object (CanceledStateContext)

Contexte supplémentaire sur les abonnements résiliés Présent uniquement si l'abonnement comporte actuellement 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.

Abonnement

États potentiels dans lesquels un abonnement peut se trouver (par exemple, s'il est actif ou résilié). Lors de la souscription d'un abonnement, les éléments peuvent être tous des forfaits à renouvellement automatique ou des 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 a le statut autoRenewEnabled et n'a pas expiré. - (2) S'il s'agit d'un forfait prépayé, au moins un article n'est pas arrivé à expiration.
SUBSCRIPTION_STATE_PAUSED L'abonnement est suspendu. Cet état n'est disponible que si 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. Cet état n'est disponible que si l'abonnement est un forfait à renouvellement automatique. Dans cet état, tous les éléments sont en délai de grâce.
SUBSCRIPTION_STATE_ON_HOLD L'abonnement est suspendu (suspendu). Cet état n'est disponible que si l'abonnement est un forfait à renouvellement automatique. Dans cet état, tous les éléments sont conservés.
SUBSCRIPTION_STATE_CANCELED L'abonnement a été résilié, mais n'a pas encore expiré. Cet état n'est disponible que si l'abonnement est un forfait à renouvellement automatique. La valeur autoRenewEnabled de tous les éléments est définie sur "false".
SUBSCRIPTION_STATE_EXPIRED Votre abonnement est arrivé à expiration. Tous les éléments ont un expiryTime antérieur.

SuspendedStateContext

Informations spécifiques à un abonnement suspendu.

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

string (Timestamp format)

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

Un 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".

InvalidedStateContext

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. Raison pour laquelle un abonnement a été résilié. 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é résilié 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.

Annulation initiée par l'utilisateur

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 d'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 toujours accès à l'abonnement passé ce délai. Utilisez lineItems.expiry_time pour déterminer si un utilisateur dispose toujours de l'accès.

Un 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".

Annuler l'enquête

Résultat de l'enquête sur l'annulation 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.

Annuler l'enquête

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.

Annulation initiée par le système

Ce type ne comporte aucun champ.

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

Annulation initiée par le développeur

Ce type ne comporte aucun champ.

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

Annulation de remplacement

Ce type ne comporte aucun champ.

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

Achat test

Ce type ne comporte aucun champ.

Indique si cet abonnement est un achat test.

Accusé de réception

É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 été effectuée 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. N'est présente que si elle est spécifiée avec https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid lors de l'achat.

S'abonner avecGoogleInfo

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 la souscription de l'abonnement.

profileName

string

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

emailAddress

string

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

givenName

string

Nom donné à l'utilisateur au moment de la souscription 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, renouvelé).

Un 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 de forfait. 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. Il peut être supprimé ou remplacé. deferred_item_change ne peut être qu'un des éléments suivants :
deferredItemReplacement

object (DeferredItemReplacement)

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

Forfait de renouvellement automatique

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 la souscription de l'abonnement.

SubscriptionItemPriceChangeDetails

Informations liées au changement de prix d'un 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 changement de prix indique 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)

Heure de renouvellement à laquelle le changement de prix entrera en vigueur pour l'utilisateur. Il est susceptible d'être modifié (à une date ultérieure) en raison des changements du délai de renouvellement (par exemple, la suspension du service).

Un 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".

Mode de modification des prix

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 avec le mode de désactivation.

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 concernant 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.

Forfait prépayé

Informations relatives à un forfait prépayé.

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

string (Timestamp format)

S'il est indiqué, il s'agit du délai après lequel les achats de crédit sont autorisés pour le forfait prépayé. Indisponible pour les forfaits prépayés arrivés à expiration.

Un 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".

Détails de l'offre

Détails de l'offre et informations relatives à un élément de campagne d'achat.

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

string

Derniers tags d'offre associés à l'offre. Elle 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 les offres.

offerId

string

ID de l'offre. Uniquement disponible pour les offres à prix réduit.

DeferredItemReplace

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

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

string

productId va remplacer le productId existant.

Méthodes

get

Obtenir les métadonnées d'un abonnement