class Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1Entitlement

An entitlement is a representation of a customer's ability to use a service.

Attributes

assigned_units[RW]

The current number of users that are assigned a license for the product defined in provisioned_service.skuId. Read-only. Deprecated: Use `parameters` instead. Corresponds to the JSON property `assignedUnits` @return [Fixnum]

association_info[RW]

Association links that an entitlement has to other entitlements. Corresponds to the JSON property `associationInfo` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1AssociationInfo]

channel_partner_id[RW]

Cloud Identity ID of a channel partner who will be the direct reseller for the customer's order. This field is generally used in 2-tier ordering, where the order is placed by a top-level distributor on behalf of their channel partner or reseller. Required for distributors. Deprecated: `channel_partner_id` has been moved to the Customer. Corresponds to the JSON property `channelPartnerId` @return [String]

commitment_settings[RW]

Commitment settings for commitment-based offers. Corresponds to the JSON property `commitmentSettings` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1CommitmentSettings]

create_time[RW]

Output only. The time at which the entitlement is created. Corresponds to the JSON property `createTime` @return [String]

max_units[RW]

Maximum number of units for a non commitment-based Offer, such as Flexible, Trial or Free entitlements. For commitment-based entitlements, this is a read- only field, which only the internal support team can update. Deprecated: Use ` parameters` instead. Corresponds to the JSON property `maxUnits` @return [Fixnum]

name[RW]

Output only. Resource name of an entitlement in the form: accounts/`account_id` /customers/`customer_id`/entitlements/`entitlement_id`. Corresponds to the JSON property `name` @return [String]

num_units[RW]

Number of units for a commitment-based Offer. For example, for seat-based Offers, this would be the number of seats; for license-based Offers, this would be the number of licenses. Required for creating commitment-based Offers. Deprecated: Use `parameters` instead. Corresponds to the JSON property `numUnits` @return [Fixnum]

offer[RW]

Required. The offer resource name for which the entitlement is to be created. Takes the form: accounts/`account_id`/offers/`offer_id`. Corresponds to the JSON property `offer` @return [String]

parameters[RW]

Extended entitlement parameters. When creating an entitlement, valid parameters' names and values are defined in the offer's parameter definitions. Corresponds to the JSON property `parameters` @return [Array<Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1Parameter>]

provisioned_service[RW]

Service provisioned for an entitlement. Corresponds to the JSON property `provisionedService` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1ProvisionedService]

provisioning_state[RW]

Output only. Current provisioning state of the entitlement. Corresponds to the JSON property `provisioningState` @return [String]

purchase_order_id[RW]

Optional. This purchase order (PO) information is for resellers to use for their company tracking usage. If a purchaseOrderId value is given, it appears in the API responses and shows up in the invoice. The property accepts up to 80 plain text characters. Corresponds to the JSON property `purchaseOrderId` @return [String]

suspension_reasons[RW]

Output only. Enumerable of all current suspension reasons for an entitlement. Corresponds to the JSON property `suspensionReasons` @return [Array<String>]

trial_settings[RW]

Settings for trial offers. Corresponds to the JSON property `trialSettings` @return [Google::Apis::CloudchannelV1::GoogleCloudChannelV1alpha1TrialSettings]

update_time[RW]

Output only. The time at which the entitlement is updated. Corresponds to the JSON property `updateTime` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/cloudchannel_v1/classes.rb, line 2639
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/cloudchannel_v1/classes.rb, line 2644
def update!(**args)
  @assigned_units = args[:assigned_units] if args.key?(:assigned_units)
  @association_info = args[:association_info] if args.key?(:association_info)
  @channel_partner_id = args[:channel_partner_id] if args.key?(:channel_partner_id)
  @commitment_settings = args[:commitment_settings] if args.key?(:commitment_settings)
  @create_time = args[:create_time] if args.key?(:create_time)
  @max_units = args[:max_units] if args.key?(:max_units)
  @name = args[:name] if args.key?(:name)
  @num_units = args[:num_units] if args.key?(:num_units)
  @offer = args[:offer] if args.key?(:offer)
  @parameters = args[:parameters] if args.key?(:parameters)
  @provisioned_service = args[:provisioned_service] if args.key?(:provisioned_service)
  @provisioning_state = args[:provisioning_state] if args.key?(:provisioning_state)
  @purchase_order_id = args[:purchase_order_id] if args.key?(:purchase_order_id)
  @suspension_reasons = args[:suspension_reasons] if args.key?(:suspension_reasons)
  @trial_settings = args[:trial_settings] if args.key?(:trial_settings)
  @update_time = args[:update_time] if args.key?(:update_time)
end