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.



5927
5928
5929
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5927

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)


5733
5734
5735
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5733

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)


5739
5740
5741
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5739

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)


5747
5748
5749
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5747

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)


5755
5756
5757
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5755

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



5761
5762
5763
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5761

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)


5767
5768
5769
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5767

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)


5773
5774
5775
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5773

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)


5779
5780
5781
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5779

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)


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

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)


5790
5791
5792
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5790

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)


5796
5797
5798
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5796

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)


5802
5803
5804
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5802

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



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

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)


5813
5814
5815
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5813

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)


5827
5828
5829
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5827

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)


5836
5837
5838
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5836

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)


5844
5845
5846
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5844

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)


5851
5852
5853
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5851

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)


5858
5859
5860
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5858

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)


5867
5868
5869
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5867

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



5875
5876
5877
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5875

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)


5881
5882
5883
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5881

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)


5887
5888
5889
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5887

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)


5893
5894
5895
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5893

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)


5899
5900
5901
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5899

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)


5906
5907
5908
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5906

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)


5914
5915
5916
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5914

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)


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

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)


5925
5926
5927
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5925

def user_cancellation_time_millis
  @user_cancellation_time_millis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5932
5933
5934
5935
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
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5932

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