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.



5974
5975
5976
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5974

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)


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

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)


5786
5787
5788
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5786

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)


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

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)


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

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



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

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)


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

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)


5820
5821
5822
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5820

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)


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

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)


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

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)


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

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)


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

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)


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

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



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

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)


5860
5861
5862
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5860

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)


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

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)


5883
5884
5885
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5883

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)


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

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)


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

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)


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

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)


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

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



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

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)


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

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)


5934
5935
5936
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5934

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)


5940
5941
5942
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5940

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)


5946
5947
5948
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5946

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)


5953
5954
5955
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5953

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)


5961
5962
5963
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5961

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)


5966
5967
5968
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5966

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)


5972
5973
5974
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5972

def user_cancellation_time_millis
  @user_cancellation_time_millis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 5979

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