google-api-ruby-client/generated/google/apis/reseller_v1/classes.rb

754 lines
34 KiB
Ruby
Raw Normal View History

2015-06-23 23:05:46 +00:00
# Copyright 2015 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
require 'date'
require 'google/apis/core/base_service'
require 'google/apis/core/json_representation'
require 'google/apis/core/hashable'
require 'google/apis/errors'
module Google
module Apis
module ResellerV1
# JSON template for address of a customer.
class Address
include Google::Apis::Core::Hashable
2017-03-10 21:11:09 +00:00
# A customer's physical address. An address can be composed of one to three
# lines. The <code>addressline2</code> and <code>addressLine3</code> are
# optional.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `addressLine1`
# @return [String]
attr_accessor :address_line1
2017-03-10 21:11:09 +00:00
# Line 2 of the address.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `addressLine2`
# @return [String]
attr_accessor :address_line2
2017-03-10 21:11:09 +00:00
# Line 3 of the address.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `addressLine3`
# @return [String]
attr_accessor :address_line3
2017-03-10 21:11:09 +00:00
# The customer contact's name. This is required.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `contactName`
# @return [String]
attr_accessor :contact_name
# For <code>countryCode</code> information, see the <a
# href="http://www.iso.org/iso/country_codes.htm">ISO 3166 country code
# elements</a>. Verify that country is <a
# href="https://www.cloudconnect.goog/docs/DOC-29141">approved</a> for resale
# of Google products. This property is required when creating a new customer.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `countryCode`
# @return [String]
attr_accessor :country_code
# Identifies the resource as a customer address. Value:
# <code>customers#address</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# An example of a <code>locality</code> value is the city of <code>San
# Francisco</code>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `locality`
# @return [String]
attr_accessor :locality
2017-03-10 21:11:09 +00:00
# The company or company division name. This is required.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `organizationName`
# @return [String]
attr_accessor :organization_name
# A <code>postalCode</code> example is a postal zip code such as
# <code>94043</code>. This property is required when creating a new customer.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `postalCode`
# @return [String]
attr_accessor :postal_code
# An example of a <code>region</code> value is <code>CA</code> for the state
# of California.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `region`
# @return [String]
attr_accessor :region
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@address_line1 = args[:address_line1] if args.key?(:address_line1)
@address_line2 = args[:address_line2] if args.key?(:address_line2)
@address_line3 = args[:address_line3] if args.key?(:address_line3)
@contact_name = args[:contact_name] if args.key?(:contact_name)
@country_code = args[:country_code] if args.key?(:country_code)
@kind = args[:kind] if args.key?(:kind)
@locality = args[:locality] if args.key?(:locality)
@organization_name = args[:organization_name] if args.key?(:organization_name)
@postal_code = args[:postal_code] if args.key?(:postal_code)
@region = args[:region] if args.key?(:region)
2015-06-23 23:05:46 +00:00
end
end
# JSON template for the ChangePlan rpc request.
class ChangePlanRequest
include Google::Apis::Core::Hashable
# Google-issued code (100 char max) for discounted pricing on subscription
# plans. Deal code must be included in <code>changePlan</code> request in
# order to receive discounted rate. This property is optional. If a deal code
# has already been added to a subscription, this property may be left empty
# and the existing discounted rate will still apply (if not empty, only
# provide the deal code that is already present on the subscription). If a
# deal code has never been added to a subscription and this property is left
# blank, regular pricing will apply.
# Corresponds to the JSON property `dealCode`
# @return [String]
attr_accessor :deal_code
2017-03-10 21:11:09 +00:00
# Identifies the resource as a subscription change plan request. Value:
# <code>subscriptions#changePlanRequest</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# The <code>planName</code> property is required. This is the name of the
# subscription's payment plan. For more information about the Google payment
# plans, see <a href="/admin-sdk/reseller/v1/how-tos/concepts.html">API
# concepts</a>. <br><br>Possible values are: <ul> <li>
# <code>ANNUAL_MONTHLY_PAY</code> - The annual commitment plan with monthly
# payments <aside class="caution"> <strong>Caution:
# </strong><code>ANNUAL_MONTHLY_PAY</code> is returned as <code>ANNUAL</code>
# in all API responses.</aside> </li> <li> <code>ANNUAL_YEARLY_PAY</code> -
# The annual commitment plan with yearly payments </li> <li>
# <code>FLEXIBLE</code> - The flexible plan </li> <li> <code>TRIAL</code> -
# The 30-day free trial plan </li> </ul>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `planName`
# @return [String]
attr_accessor :plan_name
2017-03-10 21:11:09 +00:00
# This is an optional property. This purchase order (PO) information is for
# resellers to use for their company tracking usage. If a
# <code>purchaseOrderId</code> value is given it appears in the API responses
# and shows up in the invoice. The property accepts up to 80 plain text
# characters.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `purchaseOrderId`
# @return [String]
attr_accessor :purchase_order_id
# JSON template for subscription seats.
# Corresponds to the JSON property `seats`
# @return [Google::Apis::ResellerV1::Seats]
attr_accessor :seats
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@deal_code = args[:deal_code] if args.key?(:deal_code)
2016-01-29 22:32:46 +00:00
@kind = args[:kind] if args.key?(:kind)
@plan_name = args[:plan_name] if args.key?(:plan_name)
@purchase_order_id = args[:purchase_order_id] if args.key?(:purchase_order_id)
@seats = args[:seats] if args.key?(:seats)
2015-06-23 23:05:46 +00:00
end
end
# JSON template for a customer.
class Customer
include Google::Apis::Core::Hashable
# Like the &quot;Customer email&quot; in the reseller tools, this email is
# the secondary contact used if something happens to the
# customer's service such as service outage or a security issue. This
# property is required when creating a new customer and should not use the
# same domain as <code>customerDomain</code>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `alternateEmail`
# @return [String]
attr_accessor :alternate_email
# The customer's primary domain name string. <code>customerDomain</code> is
# required when creating a new customer. Do not include the <code>www</code>
# prefix in the domain when adding a customer.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `customerDomain`
# @return [String]
attr_accessor :customer_domain
2015-12-03 01:10:07 +00:00
# Whether the customer's primary domain has been verified.
# Corresponds to the JSON property `customerDomainVerified`
# @return [Boolean]
attr_accessor :customer_domain_verified
alias_method :customer_domain_verified?, :customer_domain_verified
# This property will always be returned in a response as the unique
# identifier generated by Google. In a request, this property can be either
# the primary domain or the unique identifier generated by Google.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `customerId`
# @return [String]
attr_accessor :customer_id
# Identifies the resource as a customer. Value:
# <code>reseller#customer</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# Customer contact phone number. Must start with "+" followed by the country
# code. The rest of the number can be contiguous numbers or respect the phone
# <a
# href="http://wikipedia.org/wiki/
# Local_conventions_for_writing_telephone_numbers">local
# format conventions</a>, but it must be a real phone number and not, for
# example, "123". This field is silently ignored if invalid.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `phoneNumber`
# @return [String]
attr_accessor :phone_number
# JSON template for address of a customer.
# Corresponds to the JSON property `postalAddress`
# @return [Google::Apis::ResellerV1::Address]
attr_accessor :postal_address
# URL to customer&#39;s Admin console dashboard. The read-only URL is
# generated by the API service. This is used if your client application
# requires the customer to complete a task in the Admin console.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `resourceUiUrl`
# @return [String]
attr_accessor :resource_ui_url
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@alternate_email = args[:alternate_email] if args.key?(:alternate_email)
@customer_domain = args[:customer_domain] if args.key?(:customer_domain)
@customer_domain_verified = args[:customer_domain_verified] if args.key?(:customer_domain_verified)
@customer_id = args[:customer_id] if args.key?(:customer_id)
@kind = args[:kind] if args.key?(:kind)
@phone_number = args[:phone_number] if args.key?(:phone_number)
@postal_address = args[:postal_address] if args.key?(:postal_address)
@resource_ui_url = args[:resource_ui_url] if args.key?(:resource_ui_url)
2015-06-23 23:05:46 +00:00
end
end
# JSON template for a subscription renewal settings.
class RenewalSettings
include Google::Apis::Core::Hashable
2017-03-10 21:11:09 +00:00
# Identifies the resource as a subscription renewal setting. Value:
# <code>subscriptions#renewalSettings</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# Renewal settings for the annual commitment plan. For more detailed
# information, see renewal options in the <a
# href="//support.google.com/a/bin/answer.py?topic=1247359&amp;ctx=topic&amp;
# answer=2500693">administrator
# help center</a>. When renewing a subscription, the <code>renewalType</code>
# is a required property.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `renewalType`
# @return [String]
attr_accessor :renewal_type
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@kind = args[:kind] if args.key?(:kind)
@renewal_type = args[:renewal_type] if args.key?(:renewal_type)
2015-06-23 23:05:46 +00:00
end
end
2017-03-10 21:11:09 +00:00
# JSON template for resellernotify getwatchdetails response.
class ResellernotifyGetwatchdetailsResponse
include Google::Apis::Core::Hashable
# List of registered service accounts.
# Corresponds to the JSON property `serviceAccountEmailAddresses`
# @return [Array<String>]
attr_accessor :service_account_email_addresses
# Topic name of the PubSub
# Corresponds to the JSON property `topicName`
# @return [String]
attr_accessor :topic_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@service_account_email_addresses = args[:service_account_email_addresses] if args.key?(:service_account_email_addresses)
@topic_name = args[:topic_name] if args.key?(:topic_name)
end
end
# JSON template for resellernotify response.
class ResellernotifyResource
include Google::Apis::Core::Hashable
# Topic name of the PubSub
# Corresponds to the JSON property `topicName`
# @return [String]
attr_accessor :topic_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
@topic_name = args[:topic_name] if args.key?(:topic_name)
end
end
2015-06-23 23:05:46 +00:00
# JSON template for subscription seats.
class Seats
include Google::Apis::Core::Hashable
# Identifies the resource as a subscription seat setting. Value:
# <code>subscriptions#seats</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# Read-only field containing the current number of users that are assigned a
# license for the product defined in <code>skuId</code>. This
# field's value is equivalent to the numerical count of users returned by the
# Enterprise License Manager API method: <code><a
# href="//developers.google.com/admin-sdk/licensing/v1/reference/
# licenseAssignments/listForProductAndSku">listForProductAndSku</a></code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `licensedNumberOfSeats`
# @return [Fixnum]
attr_accessor :licensed_number_of_seats
# This is a required property and is exclusive to subscriptions with
# <code>FLEXIBLE</code> or <code>TRIAL</code> plans. This property sets the
# maximum number of licensed users allowed on a subscription. This quantity
# can be increased up to the maximum limit defined in the
# reseller's contract. The minimum quantity is the current number of users in
# the customer account. <aside class="note"><strong>Note: </strong>G Suite
# subscriptions automatically assign a license to every user.</aside>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `maximumNumberOfSeats`
# @return [Fixnum]
attr_accessor :maximum_number_of_seats
# This is a required property and is exclusive to subscriptions with
# <code>ANNUAL_MONTHLY_PAY</code> and <code>ANNUAL_YEARLY_PAY</code> plans.
# This property sets the maximum number of licenses assignable to users on a
# subscription. The reseller can add more licenses, but once set, the
# <code>numberOfSeats</code> cannot be reduced until renewal. The reseller is
# invoiced based on the <code>numberOfSeats</code> value regardless of how
# many of these user licenses are assigned. <aside class="note"><strong>Note:
# </strong>G Suite subscriptions automatically assign a license to every
# user.</aside>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `numberOfSeats`
# @return [Fixnum]
attr_accessor :number_of_seats
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@kind = args[:kind] if args.key?(:kind)
@licensed_number_of_seats = args[:licensed_number_of_seats] if args.key?(:licensed_number_of_seats)
@maximum_number_of_seats = args[:maximum_number_of_seats] if args.key?(:maximum_number_of_seats)
@number_of_seats = args[:number_of_seats] if args.key?(:number_of_seats)
2015-06-23 23:05:46 +00:00
end
end
# JSON template for a subscription.
class Subscription
include Google::Apis::Core::Hashable
2017-03-10 21:11:09 +00:00
# Read-only field that returns the current billing method for a subscription.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `billingMethod`
# @return [String]
attr_accessor :billing_method
# The <code>creationTime</code> property is the date when subscription was
# created. It is in milliseconds using the Epoch format. See an example <a
# href="http://www.epochconverter.com/">Epoch converter</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `creationTime`
2017-04-03 20:18:48 +00:00
# @return [Fixnum]
2015-06-23 23:05:46 +00:00
attr_accessor :creation_time
2016-02-25 23:16:53 +00:00
# Primary domain name of the customer
# Corresponds to the JSON property `customerDomain`
# @return [String]
attr_accessor :customer_domain
# This property will always be returned in a response as the unique
# identifier generated by Google. In a request, this property can be either
# the primary domain or the unique identifier generated by Google.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `customerId`
# @return [String]
attr_accessor :customer_id
# Google-issued code (100 char max) for discounted pricing on subscription
# plans. Deal code must be included in <code>insert</code> requests in order
# to receive discounted rate. This property is optional, regular pricing
# applies if left empty.
# Corresponds to the JSON property `dealCode`
# @return [String]
attr_accessor :deal_code
# Identifies the resource as a Subscription. Value:
# <code>reseller#subscription</code>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# The <code>plan</code> property is required. In this version of the API, the
# G Suite plans are the flexible plan, annual commitment plan, and the 30-day
# free trial plan. For more information about the API&quot;s payment plans,
# see the <a href="/admin-sdk/reseller/v1/how-tos/concepts#plans">API
# concepts</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `plan`
# @return [Google::Apis::ResellerV1::Subscription::Plan]
attr_accessor :plan
2017-03-10 21:11:09 +00:00
# This is an optional property. This purchase order (PO) information is for
# resellers to use for their company tracking usage. If a
# <code>purchaseOrderId</code> value is given it appears in the API responses
# and shows up in the invoice. The property accepts up to 80 plain text
# characters.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `purchaseOrderId`
# @return [String]
attr_accessor :purchase_order_id
# JSON template for a subscription renewal settings.
# Corresponds to the JSON property `renewalSettings`
# @return [Google::Apis::ResellerV1::RenewalSettings]
attr_accessor :renewal_settings
# URL to customer&#39;s Subscriptions page in the Admin console. The
# read-only URL is generated by the API service. This is used if your client
# application requires the customer to complete a task using the
# Subscriptions page in the Admin console.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `resourceUiUrl`
# @return [String]
attr_accessor :resource_ui_url
# JSON template for subscription seats.
# Corresponds to the JSON property `seats`
# @return [Google::Apis::ResellerV1::Seats]
attr_accessor :seats
# A required property. The <code>skuId</code> is a unique system identifier
# for a product&#39;s SKU assigned to a customer in the subscription. For
# products and SKUs available in this version of the API, see <a
# href="/admin-sdk/reseller/v1/how-tos/products.html"> Product and SKU
# IDs</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `skuId`
# @return [String]
attr_accessor :sku_id
# Read-only external display name for a product&#39;s SKU assigned to a
# customer in the subscription. SKU names are subject to change at
# Google&#39;s discretion. For products and SKUs available in this version of
# the API, see <a href="/admin-sdk/reseller/v1/how-tos/products.html">
# Product and SKU IDs</a>.
2017-03-27 22:14:47 +00:00
# Corresponds to the JSON property `skuName`
# @return [String]
attr_accessor :sku_name
2017-03-10 21:11:09 +00:00
# This is an optional property.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `status`
# @return [String]
attr_accessor :status
# The <code>subscriptionId</code> is the subscription identifier and is
# unique for each customer. This is a required property. Since a
# <code>subscriptionId</code> changes when a subscription is updated, we
# recommend not using this ID as a key for persistent data. Use the
# <code>subscriptionId</code> as described in <a
# href="/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
# get_all_subscriptions">retrieve
# all reseller subscriptions</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `subscriptionId`
# @return [String]
attr_accessor :subscription_id
# Read-only field containing an enumerable of all the current suspension
# reasons for a subscription. It is possible for a subscription to have many
# concurrent, overlapping suspension reasons. A
# subscription's <code>STATUS</code> is <code>SUSPENDED</code> until all
# pending suspensions are removed. <br/><br/>Possible options include: <ul>
# <li> <code>PENDING_TOS_ACCEPTANCE</code> - The customer has not logged in
# and accepted the G Suite Resold Terms of Services. </li> <li>
# <code>RENEWAL_WITH_TYPE_CANCEL</code> - The customer's commitment ended and
# their service was cancelled at the end of their term.
# </li> <li> <code>RESELLER_INITIATED</code> - A manual suspension invoked by
# a Reseller. </li> <li> <code>TRIAL_ENDED</code> - The
# customer's trial expired without a plan selected. </li> <li>
# <code>OTHER</code> - The customer is suspended for an internal Google
# reason (e.g. abuse or otherwise). </li> </ul>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `suspensionReasons`
# @return [Array<String>]
attr_accessor :suspension_reasons
2017-03-10 21:11:09 +00:00
# Read-only transfer related information for the subscription. For more
# information, see <a
# href="/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
# get_transferable_subscriptions">retrieve
# transferable subscriptions for a customer</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `transferInfo`
# @return [Google::Apis::ResellerV1::Subscription::TransferInfo]
attr_accessor :transfer_info
2017-03-10 21:11:09 +00:00
# The G Suite annual commitment and flexible payment plans can be in a 30-day
# free trial. For more information, see the <a
# href="/admin-sdk/reseller/v1/how-tos/concepts#plans">API concepts</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `trialSettings`
# @return [Google::Apis::ResellerV1::Subscription::TrialSettings]
attr_accessor :trial_settings
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@billing_method = args[:billing_method] if args.key?(:billing_method)
@creation_time = args[:creation_time] if args.key?(:creation_time)
2016-02-25 23:16:53 +00:00
@customer_domain = args[:customer_domain] if args.key?(:customer_domain)
2016-01-29 22:32:46 +00:00
@customer_id = args[:customer_id] if args.key?(:customer_id)
@deal_code = args[:deal_code] if args.key?(:deal_code)
2016-01-29 22:32:46 +00:00
@kind = args[:kind] if args.key?(:kind)
@plan = args[:plan] if args.key?(:plan)
@purchase_order_id = args[:purchase_order_id] if args.key?(:purchase_order_id)
@renewal_settings = args[:renewal_settings] if args.key?(:renewal_settings)
@resource_ui_url = args[:resource_ui_url] if args.key?(:resource_ui_url)
@seats = args[:seats] if args.key?(:seats)
@sku_id = args[:sku_id] if args.key?(:sku_id)
2017-03-27 22:14:47 +00:00
@sku_name = args[:sku_name] if args.key?(:sku_name)
2016-01-29 22:32:46 +00:00
@status = args[:status] if args.key?(:status)
@subscription_id = args[:subscription_id] if args.key?(:subscription_id)
@suspension_reasons = args[:suspension_reasons] if args.key?(:suspension_reasons)
@transfer_info = args[:transfer_info] if args.key?(:transfer_info)
@trial_settings = args[:trial_settings] if args.key?(:trial_settings)
2015-06-23 23:05:46 +00:00
end
# The <code>plan</code> property is required. In this version of the API, the
# G Suite plans are the flexible plan, annual commitment plan, and the 30-day
# free trial plan. For more information about the API&quot;s payment plans,
# see the <a href="/admin-sdk/reseller/v1/how-tos/concepts#plans">API
# concepts</a>.
2015-06-23 23:05:46 +00:00
class Plan
include Google::Apis::Core::Hashable
# In this version of the API, annual commitment plan's interval is one
# year. <aside class="caution"> <strong>Note: </strong>When
# <code>billingMethod</code> value is <code>OFFLINE</code>, the
# subscription property object <code>plan.commitmentInterval</code> is
# omitted in all API responses. </aside>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `commitmentInterval`
# @return [Google::Apis::ResellerV1::Subscription::Plan::CommitmentInterval]
attr_accessor :commitment_interval
# The <code>isCommitmentPlan</code> property&#39;s boolean value identifies
# the plan as an annual commitment plan:<ul><li><code>true</code> &mdash;
# The subscription&#39;s plan is an annual commitment
# plan.</li><li><code>false</code> &mdash; The plan is not an annual
# commitment plan.</li></ul>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `isCommitmentPlan`
# @return [Boolean]
attr_accessor :is_commitment_plan
alias_method :is_commitment_plan?, :is_commitment_plan
# The <code>planName</code> property is required. This is the name of the
# subscription&#39;s plan. For more information about the Google payment
# plans, see the <a
# href="/admin-sdk/reseller/v1/how-tos/concepts#plans">API concepts</a>.
# <br/><br/>Possible values are: <ul> <li> <code>ANNUAL_MONTHLY_PAY</code>
# &mdash; The annual commitment plan with monthly payments. <aside
# class="caution"> <strong>Caution:
# </strong><code>ANNUAL_MONTHLY_PAY</code> is returned as
# <code>ANNUAL</code> in all API responses.</aside> </li> <li>
# <code>ANNUAL_YEARLY_PAY</code> &mdash; The annual commitment plan with
# yearly payments </li> <li> <code>FLEXIBLE</code> &mdash; The flexible
# plan </li> <li> <code>TRIAL</code> &mdash; The 30-day free trial plan. A
# subscription in trial will be suspended after the 30th free day if no
# payment plan is assigned. Calling <code>changePlan</code> will assign a
# payment plan to a trial but will not activate the plan. A trial will
# automatically begin its assigned payment plan after its 30th free day or
# immediately after calling <code>startPaidService</code>. </li> <li>
# <code>FREE</code> &mdash; The free plan is exclusive to the Cloud
# Identity SKU and does not incur any billing. </li> </ul>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `planName`
# @return [String]
attr_accessor :plan_name
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@commitment_interval = args[:commitment_interval] if args.key?(:commitment_interval)
@is_commitment_plan = args[:is_commitment_plan] if args.key?(:is_commitment_plan)
@plan_name = args[:plan_name] if args.key?(:plan_name)
2015-06-23 23:05:46 +00:00
end
# In this version of the API, annual commitment plan's interval is one
# year. <aside class="caution"> <strong>Note: </strong>When
# <code>billingMethod</code> value is <code>OFFLINE</code>, the
# subscription property object <code>plan.commitmentInterval</code> is
# omitted in all API responses. </aside>
2015-06-23 23:05:46 +00:00
class CommitmentInterval
include Google::Apis::Core::Hashable
# An annual commitment plan&#39;s interval&#39;s <code>endTime</code> in
# milliseconds using the UNIX Epoch format. See an example <a
# href="http://www.epochconverter.com/">Epoch converter</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `endTime`
2017-04-03 20:18:48 +00:00
# @return [Fixnum]
2015-06-23 23:05:46 +00:00
attr_accessor :end_time
# An annual commitment plan's interval's <code>startTime</code> in
# milliseconds using UNIX Epoch format. See an example <a
# href="http://www.epochconverter.com/">Epoch converter</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `startTime`
2017-04-03 20:18:48 +00:00
# @return [Fixnum]
2015-06-23 23:05:46 +00:00
attr_accessor :start_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@end_time = args[:end_time] if args.key?(:end_time)
@start_time = args[:start_time] if args.key?(:start_time)
2015-06-23 23:05:46 +00:00
end
end
end
2017-03-10 21:11:09 +00:00
# Read-only transfer related information for the subscription. For more
# information, see <a
# href="/admin-sdk/reseller/v1/how-tos/manage_subscriptions#
# get_transferable_subscriptions">retrieve
# transferable subscriptions for a customer</a>.
2015-06-23 23:05:46 +00:00
class TransferInfo
include Google::Apis::Core::Hashable
# When inserting a subscription, this is the minimum number of seats listed
# in the transfer order for this product. For example, if the customer has
# 20 users, the reseller cannot place a transfer order of 15 seats. The
# minimum is 20 seats.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `minimumTransferableSeats`
# @return [Fixnum]
attr_accessor :minimum_transferable_seats
# The time when transfer token or intent to transfer will expire. The time
# is in milliseconds using UNIX Epoch format.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `transferabilityExpirationTime`
2017-04-03 20:18:48 +00:00
# @return [Fixnum]
2015-06-23 23:05:46 +00:00
attr_accessor :transferability_expiration_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@minimum_transferable_seats = args[:minimum_transferable_seats] if args.key?(:minimum_transferable_seats)
@transferability_expiration_time = args[:transferability_expiration_time] if args.key?(:transferability_expiration_time)
2015-06-23 23:05:46 +00:00
end
end
2017-03-10 21:11:09 +00:00
# The G Suite annual commitment and flexible payment plans can be in a 30-day
# free trial. For more information, see the <a
# href="/admin-sdk/reseller/v1/how-tos/concepts#plans">API concepts</a>.
2015-06-23 23:05:46 +00:00
class TrialSettings
include Google::Apis::Core::Hashable
# Determines if a subscription&#39;s plan is in a 30-day free trial or
# not:<ul><li><code>true</code> &mdash; The plan is in
# trial.</li><li><code>false</code> &mdash; The plan is not in
# trial.</li></ul>
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `isInTrial`
# @return [Boolean]
attr_accessor :is_in_trial
alias_method :is_in_trial?, :is_in_trial
# Date when the trial ends. The value is in milliseconds using the UNIX
# Epoch format. See an example <a
# href="http://www.epochconverter.com/">Epoch converter</a>.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `trialEndTime`
2017-04-03 20:18:48 +00:00
# @return [Fixnum]
2015-06-23 23:05:46 +00:00
attr_accessor :trial_end_time
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@is_in_trial = args[:is_in_trial] if args.key?(:is_in_trial)
@trial_end_time = args[:trial_end_time] if args.key?(:trial_end_time)
2015-06-23 23:05:46 +00:00
end
end
end
# JSON template for a subscription list.
class Subscriptions
include Google::Apis::Core::Hashable
# Identifies the resource as a collection of subscriptions. Value:
# reseller#subscriptions
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `kind`
# @return [String]
attr_accessor :kind
# The continuation token, used to page through large result sets. Provide
# this value in a subsequent request to return the next page of results.
2015-06-23 23:05:46 +00:00
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
# The subscriptions in this page of results.
# Corresponds to the JSON property `subscriptions`
# @return [Array<Google::Apis::ResellerV1::Subscription>]
attr_accessor :subscriptions
def initialize(**args)
update!(**args)
end
# Update properties of this object
def update!(**args)
2016-01-29 22:32:46 +00:00
@kind = args[:kind] if args.key?(:kind)
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
@subscriptions = args[:subscriptions] if args.key?(:subscriptions)
2015-06-23 23:05:46 +00:00
end
end
end
end
end