Class: Google::Apis::AndroidpublisherV3::SubscriptionPurchase

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/androidpublisher_v3/classes.rb,
lib/google/apis/androidpublisher_v3/representations.rb,
lib/google/apis/androidpublisher_v3/representations.rb

Overview

A SubscriptionPurchase resource indicates the status of a user's subscription purchase.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ SubscriptionPurchase

Returns a new instance of SubscriptionPurchase.



8815
8816
8817
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8815

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#acknowledgement_stateFixnum

The acknowledgement state of the subscription product. Possible values are: 0. Yet to be acknowledged 1. Acknowledged Corresponds to the JSON property acknowledgementState

Returns:

  • (Fixnum)


8621
8622
8623
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8621

def acknowledgement_state
  @acknowledgement_state
end

#auto_renewingBoolean Also known as: auto_renewing?

Whether the subscription will automatically be renewed when it reaches its current expiry time. Corresponds to the JSON property autoRenewing

Returns:

  • (Boolean)


8627
8628
8629
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8627

def auto_renewing
  @auto_renewing
end

#auto_resume_time_millisFixnum

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

Returns:

  • (Fixnum)


8635
8636
8637
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8635

def auto_resume_time_millis
  @auto_resume_time_millis
end

#cancel_reasonFixnum

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

Returns:

  • (Fixnum)


8643
8644
8645
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8643

def cancel_reason
  @cancel_reason
end

#cancel_survey_resultGoogle::Apis::AndroidpublisherV3::SubscriptionCancelSurveyResult

Information provided by the user when they complete the subscription cancellation flow (cancellation reason survey). Corresponds to the JSON property cancelSurveyResult



8649
8650
8651
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8649

def cancel_survey_result
  @cancel_survey_result
end

#country_codeString

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

Returns:

  • (String)


8655
8656
8657
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8655

def country_code
  @country_code
end

#developer_payloadString

A developer-specified string that contains supplemental information about an order. Corresponds to the JSON property developerPayload

Returns:

  • (String)


8661
8662
8663
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8661

def developer_payload
  @developer_payload
end

#email_addressString

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

Returns:

  • (String)


8667
8668
8669
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8667

def email_address
  @email_address
end

#expiry_time_millisFixnum

Time at which the subscription will expire, in milliseconds since the Epoch. Corresponds to the JSON property expiryTimeMillis

Returns:

  • (Fixnum)


8672
8673
8674
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8672

def expiry_time_millis
  @expiry_time_millis
end

#external_account_idString

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

Returns:

  • (String)


8678
8679
8680
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8678

def 
  @external_account_id
end

#family_nameString

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

Returns:

  • (String)


8684
8685
8686
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8684

def family_name
  @family_name
end

#given_nameString

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

Returns:

  • (String)


8690
8691
8692
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8690

def given_name
  @given_name
end

#introductory_price_infoGoogle::Apis::AndroidpublisherV3::IntroductoryPriceInfo

Contains the introductory price information for a subscription. Corresponds to the JSON property introductoryPriceInfo



8695
8696
8697
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8695

def introductory_price_info
  @introductory_price_info
end

#kindString

This kind represents a subscriptionPurchase object in the androidpublisher service. Corresponds to the JSON property kind

Returns:

  • (String)


8701
8702
8703
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8701

def kind
  @kind
end

#linked_purchase_tokenString

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

Returns:

  • (String)


8715
8716
8717
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8715

def linked_purchase_token
  @linked_purchase_token
end

#obfuscated_external_account_idString

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 https://developer.android.com/reference/com/android/billingclient/api/ BillingFlowParams.Builder#setobfuscatedaccountid when the purchase was made. Corresponds to the JSON property obfuscatedExternalAccountId

Returns:

  • (String)


8724
8725
8726
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8724

def 
  @obfuscated_external_account_id
end

#obfuscated_external_profile_idString

An obfuscated version of the id that is uniquely associated with the user's profile in your app. Only present if specified using https://developer.android. com/reference/com/android/billingclient/api/BillingFlowParams.Builder# setobfuscatedprofileid when the purchase was made. Corresponds to the JSON property obfuscatedExternalProfileId

Returns:

  • (String)


8732
8733
8734
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8732

def obfuscated_external_profile_id
  @obfuscated_external_profile_id
end

#order_idString

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

Returns:

  • (String)


8739
8740
8741
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8739

def order_id
  @order_id
end

#payment_stateFixnum

The payment state of the subscription. Possible values are: 0. Payment pending

  1. Payment received 2. Free trial 3. Pending deferred upgrade/downgrade Not present for canceled, expired subscriptions. Corresponds to the JSON property paymentState

Returns:

  • (Fixnum)


8746
8747
8748
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8746

def payment_state
  @payment_state
end

#price_amount_microsFixnum

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

Returns:

  • (Fixnum)


8755
8756
8757
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8755

def price_amount_micros
  @price_amount_micros
end

#price_changeGoogle::Apis::AndroidpublisherV3::SubscriptionPriceChange

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



8763
8764
8765
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8763

def price_change
  @price_change
end

#price_currency_codeString

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

Returns:

  • (String)


8769
8770
8771
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8769

def price_currency_code
  @price_currency_code
end

#profile_idString

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

Returns:

  • (String)


8775
8776
8777
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8775

def profile_id
  @profile_id
end

#profile_nameString

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

Returns:

  • (String)


8781
8782
8783
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8781

def profile_name
  @profile_name
end

#promotion_codeString

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

Returns:

  • (String)


8787
8788
8789
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8787

def promotion_code
  @promotion_code
end

#promotion_typeFixnum

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:

  1. One time code 1. Vanity code Corresponds to the JSON property promotionType

Returns:

  • (Fixnum)


8794
8795
8796
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8794

def promotion_type
  @promotion_type
end

#purchase_typeFixnum

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

Returns:

  • (Fixnum)


8802
8803
8804
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8802

def purchase_type
  @purchase_type
end

#start_time_millisFixnum

Time at which the subscription was granted, in milliseconds since the Epoch. Corresponds to the JSON property startTimeMillis

Returns:

  • (Fixnum)


8807
8808
8809
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8807

def start_time_millis
  @start_time_millis
end

#user_cancellation_time_millisFixnum

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

Returns:

  • (Fixnum)


8813
8814
8815
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8813

def user_cancellation_time_millis
  @user_cancellation_time_millis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 8820

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