Class: Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1Subscription
- Inherits:
-
Object
- Object
- Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1Subscription
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/paymentsresellersubscription_v1/classes.rb,
lib/google/apis/paymentsresellersubscription_v1/representations.rb,
lib/google/apis/paymentsresellersubscription_v1/representations.rb
Overview
A subscription serves as a central billing entity between an external partner and Google. The underlying Google services rely on the subscription state to grant or revoke the user's service entitlement. It's important to note that the subscription state may not always perfectly align with the user's service entitlement. For example, some Google services may continue providing access to the user until the current billing cycle ends, even if the subscription has been immediately canceled. However, other services may not do the same. To fully understand the specific details, please consult the relevant contract or product policy.
Instance Attribute Summary collapse
-
#cancellation_details ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionCancellationDetails
Describes the details of a cancelled or cancelling subscription.
-
#create_time ⇒ String
Output only.
-
#cycle_end_time ⇒ String
Output only.
-
#end_user_entitled ⇒ Boolean
(also: #end_user_entitled?)
Output only.
-
#free_trial_end_time ⇒ String
Output only.
-
#line_items ⇒ Array<Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem>
Required.
-
#name ⇒ String
Identifier.
-
#partner_user_token ⇒ String
Required.
-
#processing_state ⇒ String
Output only.
-
#products ⇒ Array<String>
Optional.
-
#promotion_specs ⇒ Array<Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionPromotionSpec>
Optional.
-
#promotions ⇒ Array<String>
Optional.
-
#purchase_time ⇒ String
Optional.
-
#redirect_uri ⇒ String
Output only.
-
#renewal_time ⇒ String
Output only.
-
#service_location ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1Location
Describes a location of an end user.
-
#state ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
-
#upgrade_downgrade_details ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionUpgradeDowngradeDetails
Details about the previous subscription that this new subscription upgrades/ downgrades from.
Instance Method Summary collapse
-
#initialize(**args) ⇒ GoogleCloudPaymentsResellerSubscriptionV1Subscription
constructor
A new instance of GoogleCloudPaymentsResellerSubscriptionV1Subscription.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ GoogleCloudPaymentsResellerSubscriptionV1Subscription
Returns a new instance of GoogleCloudPaymentsResellerSubscriptionV1Subscription.
1075 1076 1077 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1075 def initialize(**args) update!(**args) end |
Instance Attribute Details
#cancellation_details ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionCancellationDetails
Describes the details of a cancelled or cancelling subscription.
Corresponds to the JSON property cancellationDetails
952 953 954 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 952 def cancellation_details @cancellation_details end |
#create_time ⇒ String
Output only. System generated timestamp when the subscription is created. UTC
timezone.
Corresponds to the JSON property createTime
958 959 960 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 958 def create_time @create_time end |
#cycle_end_time ⇒ String
Output only. The time at which the subscription is expected to be extended, in
ISO 8061 format. UTC timezone. For example: "2019-08-31T17:28:54.564Z"
Corresponds to the JSON property cycleEndTime
964 965 966 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 964 def cycle_end_time @cycle_end_time end |
#end_user_entitled ⇒ Boolean Also known as: end_user_entitled?
Output only. Indicates if the subscription is entitled to the end user.
Corresponds to the JSON property endUserEntitled
969 970 971 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 969 def end_user_entitled @end_user_entitled end |
#free_trial_end_time ⇒ String
Output only. End of the free trial period, in ISO 8061 format. For example, "
2019-08-31T17:28:54.564Z". It will be set the same as createTime if no free
trial promotion is specified.
Corresponds to the JSON property freeTrialEndTime
977 978 979 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 977 def free_trial_end_time @free_trial_end_time end |
#line_items ⇒ Array<Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionLineItem>
Required. The line items of the subscription.
Corresponds to the JSON property lineItems
982 983 984 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 982 def line_items @line_items end |
#name ⇒ String
Identifier. Resource name of the subscription. It will have the format of "
partners/partner_id
/subscriptions/subscription_id
". This is available for
authorizeAddon, but otherwise is response only.
Corresponds to the JSON property name
989 990 991 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 989 def name @name end |
#partner_user_token ⇒ String
Required. Identifier of the end-user in partner’s system. The value is
restricted to 63 ASCII characters at the maximum.
Corresponds to the JSON property partnerUserToken
995 996 997 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 995 def partner_user_token @partner_user_token end |
#processing_state ⇒ String
Output only. Describes the processing state of the subscription. See more
details at the lifecycle of a subscription.
Corresponds to the JSON property processingState
1002 1003 1004 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1002 def processing_state @processing_state end |
#products ⇒ Array<String>
Optional. Deprecated: consider using line_items
as the input. Required.
Resource name that identifies the purchased products. The format will be '
partners/partner_id
/products/product_id
'.
Corresponds to the JSON property products
1009 1010 1011 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1009 def products @products end |
#promotion_specs ⇒ Array<Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionPromotionSpec>
Optional. Subscription-level promotions. Only free trial is supported on this
level. It determines the first renewal time of the subscription to be the end
of the free trial period. Specify the promotion resource name only when used
as input.
Corresponds to the JSON property promotionSpecs
1017 1018 1019 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1017 def promotion_specs @promotion_specs end |
#promotions ⇒ Array<String>
Optional. Deprecated: consider using the top-level promotion_specs
as the
input. Optional. Resource name that identifies one or more promotions that can
be applied on the product. A typical promotion for a subscription is Free
trial. The format will be 'partners/partner_id
/promotions/promotion_id
'.
Corresponds to the JSON property promotions
1025 1026 1027 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1025 def promotions @promotions end |
#purchase_time ⇒ String
Optional. The timestamp when the user transaction was made with the Partner.
Specify for the case of "bundle with choice", and it must be before the
provision_time (when the user makes a selection).
Corresponds to the JSON property purchaseTime
1032 1033 1034 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1032 def purchase_time @purchase_time end |
#redirect_uri ⇒ String
Output only. The place where partners should redirect the end-user to after
creation. This field might also be populated when creation failed. However,
Partners should always prepare a default URL to redirect the user in case this
field is empty.
Corresponds to the JSON property redirectUri
1040 1041 1042 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1040 def redirect_uri @redirect_uri end |
#renewal_time ⇒ String
Output only. The time at which the subscription is expected to be renewed by
Google - a new charge will be incurred and the service entitlement will be
renewed. A non-immediate cancellation will take place at this time too, before
which, the service entitlement for the end user will remain valid. UTC
timezone in ISO 8061 format. For example: "2019-08-31T17:28:54.564Z"
Corresponds to the JSON property renewalTime
1049 1050 1051 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1049 def renewal_time @renewal_time end |
#service_location ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1Location
Describes a location of an end user.
Corresponds to the JSON property serviceLocation
1054 1055 1056 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1054 def service_location @service_location end |
#state ⇒ String
Output only. Describes the state of the subscription. See more details at the
lifecycle of a subscription.
Corresponds to the JSON property state
1061 1062 1063 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1061 def state @state end |
#update_time ⇒ String
Output only. System generated timestamp when the subscription is most recently
updated. UTC timezone.
Corresponds to the JSON property updateTime
1067 1068 1069 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1067 def update_time @update_time end |
#upgrade_downgrade_details ⇒ Google::Apis::PaymentsresellersubscriptionV1::GoogleCloudPaymentsResellerSubscriptionV1SubscriptionUpgradeDowngradeDetails
Details about the previous subscription that this new subscription upgrades/
downgrades from.
Corresponds to the JSON property upgradeDowngradeDetails
1073 1074 1075 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1073 def upgrade_downgrade_details @upgrade_downgrade_details end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 |
# File 'lib/google/apis/paymentsresellersubscription_v1/classes.rb', line 1080 def update!(**args) @cancellation_details = args[:cancellation_details] if args.key?(:cancellation_details) @create_time = args[:create_time] if args.key?(:create_time) @cycle_end_time = args[:cycle_end_time] if args.key?(:cycle_end_time) @end_user_entitled = args[:end_user_entitled] if args.key?(:end_user_entitled) @free_trial_end_time = args[:free_trial_end_time] if args.key?(:free_trial_end_time) @line_items = args[:line_items] if args.key?(:line_items) @name = args[:name] if args.key?(:name) @partner_user_token = args[:partner_user_token] if args.key?(:partner_user_token) @processing_state = args[:processing_state] if args.key?(:processing_state) @products = args[:products] if args.key?(:products) @promotion_specs = args[:promotion_specs] if args.key?(:promotion_specs) @promotions = args[:promotions] if args.key?(:promotions) @purchase_time = args[:purchase_time] if args.key?(:purchase_time) @redirect_uri = args[:redirect_uri] if args.key?(:redirect_uri) @renewal_time = args[:renewal_time] if args.key?(:renewal_time) @service_location = args[:service_location] if args.key?(:service_location) @state = args[:state] if args.key?(:state) @update_time = args[:update_time] if args.key?(:update_time) @upgrade_downgrade_details = args[:upgrade_downgrade_details] if args.key?(:upgrade_downgrade_details) end |