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.



5931
5932
5933
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5931

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)


5737
5738
5739
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5737

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)


5743
5744
5745
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5743

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)


5751
5752
5753
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5751

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)


5759
5760
5761
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5759

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



5765
5766
5767
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5765

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)


5771
5772
5773
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5771

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)


5777
5778
5779
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5777

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)


5783
5784
5785
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5783

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)


5788
5789
5790
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5788

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)


5794
5795
5796
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5794

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)


5800
5801
5802
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5800

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)


5806
5807
5808
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5806

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



5811
5812
5813
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5811

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)


5817
5818
5819
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5817

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)


5831
5832
5833
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5831

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)


5840
5841
5842
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5840

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)


5848
5849
5850
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5848

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)


5855
5856
5857
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5855

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)


5862
5863
5864
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5862

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)


5871
5872
5873
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5871

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



5879
5880
5881
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5879

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)


5885
5886
5887
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5885

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)


5891
5892
5893
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5891

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)


5897
5898
5899
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5897

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)


5903
5904
5905
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5903

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)


5910
5911
5912
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5910

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)


5918
5919
5920
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5918

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)


5923
5924
5925
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5923

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)


5929
5930
5931
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5929

def user_cancellation_time_millis
  @user_cancellation_time_millis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5936

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