class Google::Apis::AndroidpublisherV3::SubscriptionPurchase
A SubscriptionPurchase
resource indicates the status of a user's subscription purchase.
Attributes
The acknowledgement state of the subscription product. Possible values are: 0. Yet to be acknowledged 1. Acknowledged Corresponds to the JSON property `acknowledgementState` @return [Fixnum]
Whether the subscription will automatically be renewed when it reaches its current expiry time. Corresponds to the JSON property `autoRenewing` @return [Boolean]
Whether the subscription will automatically be renewed when it reaches its current expiry time. Corresponds to the JSON property `autoRenewing` @return [Boolean]
Time at which the subscription will be automatically resumed, in milliseconds since the Epoch. Only present if the user has requested to pause the subscription. Corresponds to the JSON property `autoResumeTimeMillis` @return [Fixnum]
The reason why a subscription was canceled or is not auto-renewing. Possible values are: 0. User canceled the subscription 1. Subscription was canceled by the system, for example because of a billing problem 2. Subscription was replaced with a new subscription 3. Subscription was canceled by the developer Corresponds to the JSON property `cancelReason` @return [Fixnum]
Information provided by the user when they complete the subscription cancellation flow (cancellation reason survey). Corresponds to the JSON property `cancelSurveyResult` @return [Google::Apis::AndroidpublisherV3::SubscriptionCancelSurveyResult]
ISO 3166-1 alpha-2 billing country/region code of the user at the time the subscription was granted. Corresponds to the JSON property `countryCode` @return [String]
A developer-specified string that contains supplemental information about an order. Corresponds to the JSON property `developerPayload` @return [String]
The email address of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'. Corresponds to the JSON property `emailAddress` @return [String]
Time at which the subscription will expire, in milliseconds since the Epoch. Corresponds to the JSON property `expiryTimeMillis` @return [Fixnum]
User account identifier in the third-party service. Only present if account linking happened as part of the subscription purchase flow. Corresponds to the JSON property `externalAccountId` @return [String]
The family name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'. Corresponds to the JSON property `familyName` @return [String]
The given name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'. Corresponds to the JSON property `givenName` @return [String]
Contains the introductory price information for a subscription. Corresponds to the JSON property `introductoryPriceInfo` @return [Google::Apis::AndroidpublisherV3::IntroductoryPriceInfo]
This kind represents a subscriptionPurchase object in the androidpublisher service. Corresponds to the JSON property `kind` @return [String]
The purchase token of the originating purchase if this subscription is one of the following: 0. Re-signup of a canceled but non-lapsed subscription 1. Upgrade/downgrade from a previous subscription For example, suppose a user originally signs up and you receive purchase token X, then the user cancels and goes through the resignup flow (before their subscription lapses) and you receive purchase token Y, and finally the user upgrades their subscription and you receive purchase token Z. If you call this API with purchase token Z, this field will be set to Y. If you call this API with purchase token Y, this field will be set to X. If you call this API with purchase token X, this field will not be set. Corresponds to the JSON property `linkedPurchaseToken` @return [String]
An obfuscated version of the id that is uniquely associated with the user's account in your app. Present for the following purchases: * If account linking happened as part of the subscription purchase flow. * It was specified using developer.android.com/reference/com/android/billingclient/api/ BillingFlowParams.Builder#setobfuscatedaccountid when the purchase was made. Corresponds to the JSON property `obfuscatedExternalAccountId` @return [String]
An obfuscated version of the id that is uniquely associated with the user's profile in your app. Only present if specified using developer.android. com/reference/com/android/billingclient/api/BillingFlowParams.Builder# setobfuscatedprofileid when the purchase was made. Corresponds to the JSON property `obfuscatedExternalProfileId` @return [String]
The order id of the latest recurring order associated with the purchase of the subscription. If the subscription was canceled because payment was declined, this will be the order id from the payment declined order. Corresponds to the JSON property `orderId` @return [String]
The payment state of the subscription. Possible values are: 0. Payment pending
-
Payment received 2. Free trial 3. Pending deferred upgrade/downgrade Not
present for canceled, expired subscriptions. Corresponds to the JSON property `paymentState` @return [Fixnum]
Price
of the subscription, For tax exclusive countries, the price doesn't include tax. For tax inclusive countries, the price includes tax. Price
is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros
is 1990000. Corresponds to the JSON property `priceAmountMicros` @return [Fixnum]
Contains the price change information for a subscription that can be used to control the user journey for the price change in the app. This can be in the form of seeking confirmation from the user or tailoring the experience for a successful conversion. Corresponds to the JSON property `priceChange` @return [Google::Apis::AndroidpublisherV3::SubscriptionPriceChange]
ISO 4217 currency code for the subscription price. For example, if the price is specified in British pounds sterling, price_currency_code
is “GBP”. Corresponds to the JSON property `priceCurrencyCode` @return [String]
The Google
profile id of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'. Corresponds to the JSON property `profileId` @return [String]
The profile name of the user when the subscription was purchased. Only present for purchases made with 'Subscribe with Google'. Corresponds to the JSON property `profileName` @return [String]
The promotion code applied on this purchase. This field is only set if a vanity code promotion is applied when the subscription was purchased. Corresponds to the JSON property `promotionCode` @return [String]
The type of promotion applied on this purchase. This field is only set if a promotion is applied when the subscription was purchased. Possible values are:
-
One time code 1. Vanity code
Corresponds to the JSON property `promotionType` @return [Fixnum]
The type of purchase of the subscription. This field is only set if this purchase was not made using the standard in-app billing flow. Possible values are: 0. Test (i.e. purchased from a license testing account) 1. Promo (i.e. purchased using a promo code) Corresponds to the JSON property `purchaseType` @return [Fixnum]
Time at which the subscription was granted, in milliseconds since the Epoch. Corresponds to the JSON property `startTimeMillis` @return [Fixnum]
The time at which the subscription was canceled by the user, in milliseconds since the epoch. Only present if cancelReason is 0. Corresponds to the JSON property `userCancellationTimeMillis` @return [Fixnum]
Public Class Methods
# File lib/google/apis/androidpublisher_v3/classes.rb, line 1709 def initialize(**args) update!(**args) end
Public Instance Methods
Update properties of this object
# File lib/google/apis/androidpublisher_v3/classes.rb, line 1714 def update!(**args) @acknowledgement_state = args[:acknowledgement_state] if args.key?(:acknowledgement_state) @auto_renewing = args[:auto_renewing] if args.key?(:auto_renewing) @auto_resume_time_millis = args[:auto_resume_time_millis] if args.key?(:auto_resume_time_millis) @cancel_reason = args[:cancel_reason] if args.key?(:cancel_reason) @cancel_survey_result = args[:cancel_survey_result] if args.key?(:cancel_survey_result) @country_code = args[:country_code] if args.key?(:country_code) @developer_payload = args[:developer_payload] if args.key?(:developer_payload) @email_address = args[:email_address] if args.key?(:email_address) @expiry_time_millis = args[:expiry_time_millis] if args.key?(:expiry_time_millis) @external_account_id = args[:external_account_id] if args.key?(:external_account_id) @family_name = args[:family_name] if args.key?(:family_name) @given_name = args[:given_name] if args.key?(:given_name) @introductory_price_info = args[:introductory_price_info] if args.key?(:introductory_price_info) @kind = args[:kind] if args.key?(:kind) @linked_purchase_token = args[:linked_purchase_token] if args.key?(:linked_purchase_token) @obfuscated_external_account_id = args[:obfuscated_external_account_id] if args.key?(:obfuscated_external_account_id) @obfuscated_external_profile_id = args[:obfuscated_external_profile_id] if args.key?(:obfuscated_external_profile_id) @order_id = args[:order_id] if args.key?(:order_id) @payment_state = args[:payment_state] if args.key?(:payment_state) @price_amount_micros = args[:price_amount_micros] if args.key?(:price_amount_micros) @price_change = args[:price_change] if args.key?(:price_change) @price_currency_code = args[:price_currency_code] if args.key?(:price_currency_code) @profile_id = args[:profile_id] if args.key?(:profile_id) @profile_name = args[:profile_name] if args.key?(:profile_name) @promotion_code = args[:promotion_code] if args.key?(:promotion_code) @promotion_type = args[:promotion_type] if args.key?(:promotion_type) @purchase_type = args[:purchase_type] if args.key?(:purchase_type) @start_time_millis = args[:start_time_millis] if args.key?(:start_time_millis) @user_cancellation_time_millis = args[:user_cancellation_time_millis] if args.key?(:user_cancellation_time_millis) end