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.



3519
3520
3521
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3519

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)


3325
3326
3327
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3325

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)


3331
3332
3333
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3331

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)


3339
3340
3341
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3339

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)


3347
3348
3349
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3347

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



3353
3354
3355
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3353

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)


3359
3360
3361
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3359

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)


3365
3366
3367
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3365

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)


3371
3372
3373
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3371

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)


3376
3377
3378
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3376

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)


3382
3383
3384
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3382

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)


3388
3389
3390
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3388

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)


3394
3395
3396
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3394

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



3399
3400
3401
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3399

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)


3405
3406
3407
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3405

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)


3419
3420
3421
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3419

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)


3428
3429
3430
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3428

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)


3436
3437
3438
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3436

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)


3443
3444
3445
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3443

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)


3450
3451
3452
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3450

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)


3459
3460
3461
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3459

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



3467
3468
3469
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3467

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)


3473
3474
3475
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3473

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)


3479
3480
3481
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3479

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)


3485
3486
3487
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3485

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)


3491
3492
3493
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3491

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)


3498
3499
3500
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3498

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)


3506
3507
3508
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3506

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)


3511
3512
3513
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3511

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)


3517
3518
3519
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3517

def user_cancellation_time_millis
  @user_cancellation_time_millis
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
# File 'lib/google/apis/androidpublisher_v3/classes.rb', line 3524

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