1502 lines
62 KiB
Ruby
1502 lines
62 KiB
Ruby
# 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 AndroiddeviceprovisioningV1
|
||
|
||
# Request message to claim a device on behalf of a customer.
|
||
class ClaimDeviceRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The ID of the customer for whom the device is being claimed.
|
||
# Corresponds to the JSON property `customerId`
|
||
# @return [Fixnum]
|
||
attr_accessor :customer_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
# Corresponds to the JSON property `deviceMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata]
|
||
attr_accessor :device_metadata
|
||
|
||
# Required. The section type of the device's provisioning record.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customer_id = args[:customer_id] if args.key?(:customer_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@device_metadata = args[:device_metadata] if args.key?(:device_metadata)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
end
|
||
end
|
||
|
||
# Response message containing device id of the claim.
|
||
class ClaimDeviceResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The device ID of the claimed device.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# The resource name of the device in the format
|
||
# `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.
|
||
# Corresponds to the JSON property `deviceName`
|
||
# @return [String]
|
||
attr_accessor :device_name
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_name = args[:device_name] if args.key?(:device_name)
|
||
end
|
||
end
|
||
|
||
# Request to claim devices asynchronously in batch. Claiming a device adds the
|
||
# device to zero-touch enrollment and shows the device in the customer's view
|
||
# of the portal.
|
||
class ClaimDevicesRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. A list of device claims.
|
||
# Corresponds to the JSON property `claims`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::PartnerClaim>]
|
||
attr_accessor :claims
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@claims = args[:claims] if args.key?(:claims)
|
||
end
|
||
end
|
||
|
||
# A reseller, vendor, or customer in the zero-touch reseller and customer APIs.
|
||
class Company
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Input only. Optional. Email address of customer's users in the admin role.
|
||
# Each email address must be associated with a Google Account.
|
||
# Corresponds to the JSON property `adminEmails`
|
||
# @return [Array<String>]
|
||
attr_accessor :admin_emails
|
||
|
||
# Output only. The ID of the company. Assigned by the server.
|
||
# Corresponds to the JSON property `companyId`
|
||
# @return [Fixnum]
|
||
attr_accessor :company_id
|
||
|
||
# Required. The name of the company. For example _XYZ Corp_. Displayed to the
|
||
# company's employees in the zero-touch enrollment portal.
|
||
# Corresponds to the JSON property `companyName`
|
||
# @return [String]
|
||
attr_accessor :company_name
|
||
|
||
# Output only. The API resource name of the company. The resource name is one
|
||
# of the following formats:
|
||
# * `partners/[PARTNER_ID]/customers/[CUSTOMER_ID]`
|
||
# * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`
|
||
# * `partners/[PARTNER_ID]/vendors/[VENDOR_ID]/customers/[CUSTOMER_ID]`
|
||
# Assigned by the server.
|
||
# Corresponds to the JSON property `name`
|
||
# @return [String]
|
||
attr_accessor :name
|
||
|
||
# Input only. Email address of customer's users in the owner role. At least
|
||
# one `owner_email` is required. Each email address must be associated with a
|
||
# Google Account. Owners share the same access as admins but can also add,
|
||
# delete, and edit your organization's portal users.
|
||
# Corresponds to the JSON property `ownerEmails`
|
||
# @return [Array<String>]
|
||
attr_accessor :owner_emails
|
||
|
||
# Output only. Whether any user from the company has accepted the latest
|
||
# Terms of Service (ToS). See
|
||
# TermsStatus.
|
||
# Corresponds to the JSON property `termsStatus`
|
||
# @return [String]
|
||
attr_accessor :terms_status
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@admin_emails = args[:admin_emails] if args.key?(:admin_emails)
|
||
@company_id = args[:company_id] if args.key?(:company_id)
|
||
@company_name = args[:company_name] if args.key?(:company_name)
|
||
@name = args[:name] if args.key?(:name)
|
||
@owner_emails = args[:owner_emails] if args.key?(:owner_emails)
|
||
@terms_status = args[:terms_status] if args.key?(:terms_status)
|
||
end
|
||
end
|
||
|
||
# A configuration collects the provisioning options for Android devices. Each
|
||
# configuration combines the following:
|
||
# * The EMM device policy controller (DPC) installed on the devices.
|
||
# * EMM policies enforced on the devices.
|
||
# * Metadata displayed on the device to help users during setup.
|
||
# Customers can add as many configurations as they need. However, zero-touch
|
||
# enrollment works best when a customer sets a default configuration that's
|
||
# applied to any new devices the organization purchases.
|
||
class Configuration
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The name of the organization. Zero-touch enrollment shows this
|
||
# organization name to device users during device provisioning.
|
||
# Corresponds to the JSON property `companyName`
|
||
# @return [String]
|
||
attr_accessor :company_name
|
||
|
||
# Output only. The ID of the configuration. Assigned by the server.
|
||
# Corresponds to the JSON property `configurationId`
|
||
# @return [Fixnum]
|
||
attr_accessor :configuration_id
|
||
|
||
# Required. A short name that describes the configuration's purpose. For
|
||
# example, _Sales team_ or _Temporary employees_. The zero-touch enrollment
|
||
# portal displays this name to IT admins.
|
||
# Corresponds to the JSON property `configurationName`
|
||
# @return [String]
|
||
attr_accessor :configuration_name
|
||
|
||
# Required. The email address that device users can contact to get help.
|
||
# Zero-touch enrollment shows this email address to device users before
|
||
# device provisioning. The value is validated on input.
|
||
# Corresponds to the JSON property `contactEmail`
|
||
# @return [String]
|
||
attr_accessor :contact_email
|
||
|
||
# Required. The telephone number that device users can call, using another
|
||
# device, to get help. Zero-touch enrollment shows this number to device
|
||
# users before device provisioning. Accepts numerals, spaces, the plus sign,
|
||
# hyphens, and parentheses.
|
||
# Corresponds to the JSON property `contactPhone`
|
||
# @return [String]
|
||
attr_accessor :contact_phone
|
||
|
||
# A message, containing one or two sentences, to help device users get help
|
||
# or give them more details about what’s happening to their device.
|
||
# Zero-touch enrollment shows this message before the device is provisioned.
|
||
# Corresponds to the JSON property `customMessage`
|
||
# @return [String]
|
||
attr_accessor :custom_message
|
||
|
||
# The JSON-formatted EMM provisioning extras that are passed to the DPC.
|
||
# Corresponds to the JSON property `dpcExtras`
|
||
# @return [String]
|
||
attr_accessor :dpc_extras
|
||
|
||
# Required. The resource name of the selected DPC (device policy controller)
|
||
# in the format `customers/[CUSTOMER_ID]/dpcs/*`. To list the supported DPCs,
|
||
# call
|
||
# `customers.dpcs.list`.
|
||
# Corresponds to the JSON property `dpcResourcePath`
|
||
# @return [String]
|
||
attr_accessor :dpc_resource_path
|
||
|
||
# Required. Whether this is the default configuration that zero-touch
|
||
# enrollment applies to any new devices the organization purchases in the
|
||
# future. Only one customer configuration can be the default. Setting this
|
||
# value to `true`, changes the previous default configuration's `isDefault`
|
||
# value to `false`.
|
||
# Corresponds to the JSON property `isDefault`
|
||
# @return [Boolean]
|
||
attr_accessor :is_default
|
||
alias_method :is_default?, :is_default
|
||
|
||
# Output only. The API resource name in the format
|
||
# `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by
|
||
# the server.
|
||
# Corresponds to the JSON property `name`
|
||
# @return [String]
|
||
attr_accessor :name
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@company_name = args[:company_name] if args.key?(:company_name)
|
||
@configuration_id = args[:configuration_id] if args.key?(:configuration_id)
|
||
@configuration_name = args[:configuration_name] if args.key?(:configuration_name)
|
||
@contact_email = args[:contact_email] if args.key?(:contact_email)
|
||
@contact_phone = args[:contact_phone] if args.key?(:contact_phone)
|
||
@custom_message = args[:custom_message] if args.key?(:custom_message)
|
||
@dpc_extras = args[:dpc_extras] if args.key?(:dpc_extras)
|
||
@dpc_resource_path = args[:dpc_resource_path] if args.key?(:dpc_resource_path)
|
||
@is_default = args[:is_default] if args.key?(:is_default)
|
||
@name = args[:name] if args.key?(:name)
|
||
end
|
||
end
|
||
|
||
# Request message to create a customer.
|
||
class CreateCustomerRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# A reseller, vendor, or customer in the zero-touch reseller and customer APIs.
|
||
# Corresponds to the JSON property `customer`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::Company]
|
||
attr_accessor :customer
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customer = args[:customer] if args.key?(:customer)
|
||
end
|
||
end
|
||
|
||
# Request message for customer to assign a configuration to device.
|
||
class CustomerApplyConfigurationRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The configuration applied to the device in the format
|
||
# `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.
|
||
# Corresponds to the JSON property `configuration`
|
||
# @return [String]
|
||
attr_accessor :configuration
|
||
|
||
# A `DeviceReference` is an API abstraction that lets you supply a _device_
|
||
# argument to a method using one of the following identifier types:
|
||
# * A numeric API resource ID.
|
||
# * Real-world hardware IDs, such as IMEI number, belonging to the manufactured
|
||
# device.
|
||
# Methods that operate on devices take a `DeviceReference` as a parameter type
|
||
# because it's more flexible for the caller. To learn more about device
|
||
# identifiers, read [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `device`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceReference]
|
||
attr_accessor :device
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@configuration = args[:configuration] if args.key?(:configuration)
|
||
@device = args[:device] if args.key?(:device)
|
||
end
|
||
end
|
||
|
||
# Response message of customer's listing configuration.
|
||
class CustomerListConfigurationsResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The configurations.
|
||
# Corresponds to the JSON property `configurations`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Configuration>]
|
||
attr_accessor :configurations
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@configurations = args[:configurations] if args.key?(:configurations)
|
||
end
|
||
end
|
||
|
||
# Response message for listing my customers.
|
||
class CustomerListCustomersResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The customer accounts the calling user is a member of.
|
||
# Corresponds to the JSON property `customers`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Company>]
|
||
attr_accessor :customers
|
||
|
||
# A token used to access the next page of results. Omitted if no further
|
||
# results are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customers = args[:customers] if args.key?(:customers)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
end
|
||
end
|
||
|
||
# Response message of customer's liting devices.
|
||
class CustomerListDevicesResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The customer's devices.
|
||
# Corresponds to the JSON property `devices`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Device>]
|
||
attr_accessor :devices
|
||
|
||
# A token used to access the next page of results. Omitted if no further
|
||
# results are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@devices = args[:devices] if args.key?(:devices)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
end
|
||
end
|
||
|
||
# Response message of customer's listing DPCs.
|
||
class CustomerListDpcsResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The list of DPCs available to the customer that support zero-touch
|
||
# enrollment.
|
||
# Corresponds to the JSON property `dpcs`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Dpc>]
|
||
attr_accessor :dpcs
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@dpcs = args[:dpcs] if args.key?(:dpcs)
|
||
end
|
||
end
|
||
|
||
# Request message for customer to remove the configuration from device.
|
||
class CustomerRemoveConfigurationRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# A `DeviceReference` is an API abstraction that lets you supply a _device_
|
||
# argument to a method using one of the following identifier types:
|
||
# * A numeric API resource ID.
|
||
# * Real-world hardware IDs, such as IMEI number, belonging to the manufactured
|
||
# device.
|
||
# Methods that operate on devices take a `DeviceReference` as a parameter type
|
||
# because it's more flexible for the caller. To learn more about device
|
||
# identifiers, read [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `device`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceReference]
|
||
attr_accessor :device
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device = args[:device] if args.key?(:device)
|
||
end
|
||
end
|
||
|
||
# Request message for customer to unclaim a device.
|
||
class CustomerUnclaimDeviceRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# A `DeviceReference` is an API abstraction that lets you supply a _device_
|
||
# argument to a method using one of the following identifier types:
|
||
# * A numeric API resource ID.
|
||
# * Real-world hardware IDs, such as IMEI number, belonging to the manufactured
|
||
# device.
|
||
# Methods that operate on devices take a `DeviceReference` as a parameter type
|
||
# because it's more flexible for the caller. To learn more about device
|
||
# identifiers, read [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `device`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceReference]
|
||
attr_accessor :device
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device = args[:device] if args.key?(:device)
|
||
end
|
||
end
|
||
|
||
# An Android device registered for zero-touch enrollment.
|
||
class Device
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Output only. The provisioning claims for a device. Devices claimed for
|
||
# zero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`.
|
||
# Call
|
||
# `partners.devices.unclaim`
|
||
# or
|
||
# `partners.devices.unclaimAsync`
|
||
# to remove the device from zero-touch enrollment.
|
||
# Corresponds to the JSON property `claims`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::DeviceClaim>]
|
||
attr_accessor :claims
|
||
|
||
# Not available to resellers.
|
||
# Corresponds to the JSON property `configuration`
|
||
# @return [String]
|
||
attr_accessor :configuration
|
||
|
||
# Output only. The ID of the device. Assigned by the server.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
# Corresponds to the JSON property `deviceMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata]
|
||
attr_accessor :device_metadata
|
||
|
||
# Output only. The API resource name in the format
|
||
# `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.
|
||
# Corresponds to the JSON property `name`
|
||
# @return [String]
|
||
attr_accessor :name
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@claims = args[:claims] if args.key?(:claims)
|
||
@configuration = args[:configuration] if args.key?(:configuration)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@device_metadata = args[:device_metadata] if args.key?(:device_metadata)
|
||
@name = args[:name] if args.key?(:name)
|
||
end
|
||
end
|
||
|
||
# A record of a device claimed by a reseller for a customer. Devices claimed
|
||
# for zero-touch enrollment have a claim with the type
|
||
# `SECTION_TYPE_ZERO_TOUCH`. To learn more, read
|
||
# [Claim devices for customers](/zero-touch/guides/how-it-works#claim).
|
||
class DeviceClaim
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The ID of the Customer that purchased the device.
|
||
# Corresponds to the JSON property `ownerCompanyId`
|
||
# @return [Fixnum]
|
||
attr_accessor :owner_company_id
|
||
|
||
# The ID of the reseller that claimed the device.
|
||
# Corresponds to the JSON property `resellerId`
|
||
# @return [Fixnum]
|
||
attr_accessor :reseller_id
|
||
|
||
# Output only. The type of claim made on the device.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
# The timestamp when the device will exit ‘vacation mode’. This value is
|
||
# present iff the device is in 'vacation mode'.
|
||
# Corresponds to the JSON property `vacationModeExpireTime`
|
||
# @return [String]
|
||
attr_accessor :vacation_mode_expire_time
|
||
|
||
# The timestamp when the device was put into ‘vacation mode’. This value is
|
||
# present iff the device is in 'vacation mode'.
|
||
# Corresponds to the JSON property `vacationModeStartTime`
|
||
# @return [String]
|
||
attr_accessor :vacation_mode_start_time
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@owner_company_id = args[:owner_company_id] if args.key?(:owner_company_id)
|
||
@reseller_id = args[:reseller_id] if args.key?(:reseller_id)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
@vacation_mode_expire_time = args[:vacation_mode_expire_time] if args.key?(:vacation_mode_expire_time)
|
||
@vacation_mode_start_time = args[:vacation_mode_start_time] if args.key?(:vacation_mode_start_time)
|
||
end
|
||
end
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
class DeviceIdentifier
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The device’s IMEI number. Validated on input.
|
||
# Corresponds to the JSON property `imei`
|
||
# @return [String]
|
||
attr_accessor :imei
|
||
|
||
# The device manufacturer’s name. Matches the device's built-in
|
||
# value returned from `android.os.Build.MANUFACTURER`. Allowed values are
|
||
# listed in
|
||
# [manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).
|
||
# Corresponds to the JSON property `manufacturer`
|
||
# @return [String]
|
||
attr_accessor :manufacturer
|
||
|
||
# The device’s MEID number.
|
||
# Corresponds to the JSON property `meid`
|
||
# @return [String]
|
||
attr_accessor :meid
|
||
|
||
# The device model's name. Matches the device's built-in value returned from
|
||
# `android.os.Build.MODEL`. Allowed values are listed in
|
||
# [models](/zero-touch/resources/manufacturer-names#model-names).
|
||
# Corresponds to the JSON property `model`
|
||
# @return [String]
|
||
attr_accessor :model
|
||
|
||
# The manufacturer's serial number for the device. This value might not be
|
||
# unique across different device models.
|
||
# Corresponds to the JSON property `serialNumber`
|
||
# @return [String]
|
||
attr_accessor :serial_number
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@imei = args[:imei] if args.key?(:imei)
|
||
@manufacturer = args[:manufacturer] if args.key?(:manufacturer)
|
||
@meid = args[:meid] if args.key?(:meid)
|
||
@model = args[:model] if args.key?(:model)
|
||
@serial_number = args[:serial_number] if args.key?(:serial_number)
|
||
end
|
||
end
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
class DeviceMetadata
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Metadata entries recorded as key-value pairs.
|
||
# Corresponds to the JSON property `entries`
|
||
# @return [Hash<String,String>]
|
||
attr_accessor :entries
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@entries = args[:entries] if args.key?(:entries)
|
||
end
|
||
end
|
||
|
||
# A `DeviceReference` is an API abstraction that lets you supply a _device_
|
||
# argument to a method using one of the following identifier types:
|
||
# * A numeric API resource ID.
|
||
# * Real-world hardware IDs, such as IMEI number, belonging to the manufactured
|
||
# device.
|
||
# Methods that operate on devices take a `DeviceReference` as a parameter type
|
||
# because it's more flexible for the caller. To learn more about device
|
||
# identifiers, read [Identifiers](/zero-touch/guides/identifiers).
|
||
class DeviceReference
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The ID of the device.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
end
|
||
end
|
||
|
||
# Tracks the status of a long-running operation to asynchronously update a
|
||
# batch of reseller metadata attached to devices. To learn more, read
|
||
# [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).
|
||
class DevicesLongRunningOperationMetadata
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The number of metadata updates in the operation. This might be different
|
||
# from the number of updates in the request if the API can't parse some of
|
||
# the updates.
|
||
# Corresponds to the JSON property `devicesCount`
|
||
# @return [Fixnum]
|
||
attr_accessor :devices_count
|
||
|
||
# The processing status of the operation.
|
||
# Corresponds to the JSON property `processingStatus`
|
||
# @return [String]
|
||
attr_accessor :processing_status
|
||
|
||
# The processing progress of the operation. Measured as a number from 0 to
|
||
# 100. A value of 10O doesnt always mean the operation completed—check for
|
||
# the inclusion of a `done` field.
|
||
# Corresponds to the JSON property `progress`
|
||
# @return [Fixnum]
|
||
attr_accessor :progress
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@devices_count = args[:devices_count] if args.key?(:devices_count)
|
||
@processing_status = args[:processing_status] if args.key?(:processing_status)
|
||
@progress = args[:progress] if args.key?(:progress)
|
||
end
|
||
end
|
||
|
||
# Tracks the status of a long-running operation to claim, unclaim, or attach
|
||
# metadata to devices. To learn more, read
|
||
# [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).
|
||
class DevicesLongRunningOperationResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The processing status for each device in the operation.
|
||
# One `PerDeviceStatus` per device. The list order matches the items in the
|
||
# original request.
|
||
# Corresponds to the JSON property `perDeviceStatus`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::OperationPerDevice>]
|
||
attr_accessor :per_device_status
|
||
|
||
# A summary of how many items in the operation the server processed
|
||
# successfully. Updated as the operation progresses.
|
||
# Corresponds to the JSON property `successCount`
|
||
# @return [Fixnum]
|
||
attr_accessor :success_count
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@per_device_status = args[:per_device_status] if args.key?(:per_device_status)
|
||
@success_count = args[:success_count] if args.key?(:success_count)
|
||
end
|
||
end
|
||
|
||
# An EMM's DPC ([device policy
|
||
# controller](http://developer.android.com/work/dpc/build-dpc.html)).
|
||
# Zero-touch enrollment installs a DPC (listed in the `Configuration`) on a
|
||
# device to maintain the customer's mobile policies. All the DPCs listed by the
|
||
# API support zero-touch enrollment and are available in Google Play.
|
||
class Dpc
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Output only. The title of the DPC app in Google Play. For example, _Google
|
||
# Apps Device Policy_. Useful in an application's user interface.
|
||
# Corresponds to the JSON property `dpcName`
|
||
# @return [String]
|
||
attr_accessor :dpc_name
|
||
|
||
# Output only. The API resource name in the format
|
||
# `customers/[CUSTOMER_ID]/dpcs/[DPC_ID]`. Assigned by
|
||
# the server. To maintain a reference to a DPC across customer accounts,
|
||
# persist and match the last path component (`DPC_ID`).
|
||
# Corresponds to the JSON property `name`
|
||
# @return [String]
|
||
attr_accessor :name
|
||
|
||
# Output only. The DPC's Android application ID that looks like a Java
|
||
# package name. Zero-touch enrollment installs the DPC app onto a device
|
||
# using this identifier.
|
||
# Corresponds to the JSON property `packageName`
|
||
# @return [String]
|
||
attr_accessor :package_name
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@dpc_name = args[:dpc_name] if args.key?(:dpc_name)
|
||
@name = args[:name] if args.key?(:name)
|
||
@package_name = args[:package_name] if args.key?(:package_name)
|
||
end
|
||
end
|
||
|
||
# A generic empty message that you can re-use to avoid defining duplicated
|
||
# empty messages in your APIs. A typical example is to use it as the request
|
||
# or the response type of an API method. For instance:
|
||
# service Foo `
|
||
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
|
||
# `
|
||
# The JSON representation for `Empty` is empty JSON object ````.
|
||
class Empty
|
||
include Google::Apis::Core::Hashable
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
end
|
||
end
|
||
|
||
# Request to find devices.
|
||
class FindDevicesByDeviceIdentifierRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Required. The maximum number of devices to show in a page of results. Must
|
||
# be between 1 and 100 inclusive.
|
||
# Corresponds to the JSON property `limit`
|
||
# @return [Fixnum]
|
||
attr_accessor :limit
|
||
|
||
# A token specifying which result page to return.
|
||
# Corresponds to the JSON property `pageToken`
|
||
# @return [String]
|
||
attr_accessor :page_token
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@limit = args[:limit] if args.key?(:limit)
|
||
@page_token = args[:page_token] if args.key?(:page_token)
|
||
end
|
||
end
|
||
|
||
# Response containing found devices.
|
||
class FindDevicesByDeviceIdentifierResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Found devices.
|
||
# Corresponds to the JSON property `devices`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Device>]
|
||
attr_accessor :devices
|
||
|
||
# A token used to access the next page of results. Omitted if no further
|
||
# results are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
# The total count of items in the list irrespective of pagination.
|
||
# Corresponds to the JSON property `totalSize`
|
||
# @return [Fixnum]
|
||
attr_accessor :total_size
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@devices = args[:devices] if args.key?(:devices)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
@total_size = args[:total_size] if args.key?(:total_size)
|
||
end
|
||
end
|
||
|
||
# Request to find devices by customers.
|
||
class FindDevicesByOwnerRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The list of customer IDs to search for.
|
||
# Corresponds to the JSON property `customerId`
|
||
# @return [Array<Fixnum>]
|
||
attr_accessor :customer_id
|
||
|
||
# Required. The maximum number of devices to show in a page of results. Must
|
||
# be between 1 and 100 inclusive.
|
||
# Corresponds to the JSON property `limit`
|
||
# @return [Fixnum]
|
||
attr_accessor :limit
|
||
|
||
# A token specifying which result page to return.
|
||
# Corresponds to the JSON property `pageToken`
|
||
# @return [String]
|
||
attr_accessor :page_token
|
||
|
||
# Required. The section type of the device's provisioning record.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customer_id = args[:customer_id] if args.key?(:customer_id)
|
||
@limit = args[:limit] if args.key?(:limit)
|
||
@page_token = args[:page_token] if args.key?(:page_token)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
end
|
||
end
|
||
|
||
# Response containing found devices.
|
||
class FindDevicesByOwnerResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The customer's devices.
|
||
# Corresponds to the JSON property `devices`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Device>]
|
||
attr_accessor :devices
|
||
|
||
# A token used to access the next page of results.
|
||
# Omitted if no further results are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
# The total count of items in the list irrespective of pagination.
|
||
# Corresponds to the JSON property `totalSize`
|
||
# @return [Fixnum]
|
||
attr_accessor :total_size
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@devices = args[:devices] if args.key?(:devices)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
@total_size = args[:total_size] if args.key?(:total_size)
|
||
end
|
||
end
|
||
|
||
# Response message of all customers related to this partner.
|
||
class ListCustomersResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# List of customers related to this reseller partner.
|
||
# Corresponds to the JSON property `customers`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Company>]
|
||
attr_accessor :customers
|
||
|
||
# A token to retrieve the next page of results. Omitted if no further results
|
||
# are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
# The total count of items in the list irrespective of pagination.
|
||
# Corresponds to the JSON property `totalSize`
|
||
# @return [Fixnum]
|
||
attr_accessor :total_size
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customers = args[:customers] if args.key?(:customers)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
@total_size = args[:total_size] if args.key?(:total_size)
|
||
end
|
||
end
|
||
|
||
# Response message to list customers of the vendor.
|
||
class ListVendorCustomersResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# List of customers of the vendor.
|
||
# Corresponds to the JSON property `customers`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Company>]
|
||
attr_accessor :customers
|
||
|
||
# A token to retrieve the next page of results. Omitted if no further results
|
||
# are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
# The total count of items in the list irrespective of pagination.
|
||
# Corresponds to the JSON property `totalSize`
|
||
# @return [Fixnum]
|
||
attr_accessor :total_size
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customers = args[:customers] if args.key?(:customers)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
@total_size = args[:total_size] if args.key?(:total_size)
|
||
end
|
||
end
|
||
|
||
# Response message to list vendors of the partner.
|
||
class ListVendorsResponse
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# A token to retrieve the next page of results. Omitted if no further results
|
||
# are available.
|
||
# Corresponds to the JSON property `nextPageToken`
|
||
# @return [String]
|
||
attr_accessor :next_page_token
|
||
|
||
# The total count of items in the list irrespective of pagination.
|
||
# Corresponds to the JSON property `totalSize`
|
||
# @return [Fixnum]
|
||
attr_accessor :total_size
|
||
|
||
# List of vendors of the reseller partner. Fields `name`, `companyId` and
|
||
# `companyName` are populated to the Company object.
|
||
# Corresponds to the JSON property `vendors`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::Company>]
|
||
attr_accessor :vendors
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
||
@total_size = args[:total_size] if args.key?(:total_size)
|
||
@vendors = args[:vendors] if args.key?(:vendors)
|
||
end
|
||
end
|
||
|
||
# This resource represents a long-running operation that is the result of a
|
||
# network API call.
|
||
class Operation
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# If the value is `false`, it means the operation is still in progress.
|
||
# If `true`, the operation is completed, and either `error` or `response` is
|
||
# available.
|
||
# Corresponds to the JSON property `done`
|
||
# @return [Boolean]
|
||
attr_accessor :done
|
||
alias_method :done?, :done
|
||
|
||
# The `Status` type defines a logical error model that is suitable for
|
||
# different programming environments, including REST APIs and RPC APIs. It is
|
||
# used by [gRPC](https://github.com/grpc). The error model is designed to be:
|
||
# - Simple to use and understand for most users
|
||
# - Flexible enough to meet unexpected needs
|
||
# # Overview
|
||
# The `Status` message contains three pieces of data: error code, error
|
||
# message, and error details. The error code should be an enum value of
|
||
# google.rpc.Code, but it may accept additional error codes if needed. The
|
||
# error message should be a developer-facing English message that helps
|
||
# developers *understand* and *resolve* the error. If a localized user-facing
|
||
# error message is needed, put the localized message in the error details or
|
||
# localize it in the client. The optional error details may contain arbitrary
|
||
# information about the error. There is a predefined set of error detail types
|
||
# in the package `google.rpc` that can be used for common error conditions.
|
||
# # Language mapping
|
||
# The `Status` message is the logical representation of the error model, but it
|
||
# is not necessarily the actual wire format. When the `Status` message is
|
||
# exposed in different client libraries and different wire protocols, it can be
|
||
# mapped differently. For example, it will likely be mapped to some exceptions
|
||
# in Java, but more likely mapped to some error codes in C.
|
||
# # Other uses
|
||
# The error model and the `Status` message can be used in a variety of
|
||
# environments, either with or without APIs, to provide a
|
||
# consistent developer experience across different environments.
|
||
# Example uses of this error model include:
|
||
# - Partial errors. If a service needs to return partial errors to the client,
|
||
# it may embed the `Status` in the normal response to indicate the partial
|
||
# errors.
|
||
# - Workflow errors. A typical workflow has multiple steps. Each step may
|
||
# have a `Status` message for error reporting.
|
||
# - Batch operations. If a client uses batch request and batch response, the
|
||
# `Status` message should be used directly inside batch response, one for
|
||
# each error sub-response.
|
||
# - Asynchronous operations. If an API call embeds asynchronous operation
|
||
# results in its response, the status of those operations should be
|
||
# represented directly using the `Status` message.
|
||
# - Logging. If some API errors are stored in logs, the message `Status` could
|
||
# be used directly after any stripping needed for security/privacy reasons.
|
||
# Corresponds to the JSON property `error`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::Status]
|
||
attr_accessor :error
|
||
|
||
# This field will contain a `DevicesLongRunningOperationMetadata` object if the
|
||
# operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
|
||
# Corresponds to the JSON property `metadata`
|
||
# @return [Hash<String,Object>]
|
||
attr_accessor :metadata
|
||
|
||
# The server-assigned name, which is only unique within the same service that
|
||
# originally returns it. If you use the default HTTP mapping, the
|
||
# `name` should have the format of `operations/some/unique/name`.
|
||
# Corresponds to the JSON property `name`
|
||
# @return [String]
|
||
attr_accessor :name
|
||
|
||
# This field will contain a `DevicesLongRunningOperationResponse` object if the
|
||
# operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.
|
||
# Corresponds to the JSON property `response`
|
||
# @return [Hash<String,Object>]
|
||
attr_accessor :response
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@done = args[:done] if args.key?(:done)
|
||
@error = args[:error] if args.key?(:error)
|
||
@metadata = args[:metadata] if args.key?(:metadata)
|
||
@name = args[:name] if args.key?(:name)
|
||
@response = args[:response] if args.key?(:response)
|
||
end
|
||
end
|
||
|
||
# A task for each device in the operation. Corresponds to each device
|
||
# change in the request.
|
||
class OperationPerDevice
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Identifies one claim request.
|
||
# Corresponds to the JSON property `claim`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::PartnerClaim]
|
||
attr_accessor :claim
|
||
|
||
# Captures the processing status for each device in the operation.
|
||
# Corresponds to the JSON property `result`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::PerDeviceStatusInBatch]
|
||
attr_accessor :result
|
||
|
||
# Identifies one unclaim request.
|
||
# Corresponds to the JSON property `unclaim`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::PartnerUnclaim]
|
||
attr_accessor :unclaim
|
||
|
||
# Identifies metdata updates to one device.
|
||
# Corresponds to the JSON property `updateMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::UpdateMetadataArguments]
|
||
attr_accessor :update_metadata
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@claim = args[:claim] if args.key?(:claim)
|
||
@result = args[:result] if args.key?(:result)
|
||
@unclaim = args[:unclaim] if args.key?(:unclaim)
|
||
@update_metadata = args[:update_metadata] if args.key?(:update_metadata)
|
||
end
|
||
end
|
||
|
||
# Identifies one claim request.
|
||
class PartnerClaim
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The ID of the customer for whom the device is being claimed.
|
||
# Corresponds to the JSON property `customerId`
|
||
# @return [Fixnum]
|
||
attr_accessor :customer_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
# Corresponds to the JSON property `deviceMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata]
|
||
attr_accessor :device_metadata
|
||
|
||
# Required. The section type of the device's provisioning record.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@customer_id = args[:customer_id] if args.key?(:customer_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@device_metadata = args[:device_metadata] if args.key?(:device_metadata)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
end
|
||
end
|
||
|
||
# Identifies one unclaim request.
|
||
class PartnerUnclaim
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Device ID of the device.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Required. The section type of the device's provisioning record.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
# The duration of the vacation unlock starting from when the request is
|
||
# processed. (1 day is treated as 24 hours)
|
||
# Corresponds to the JSON property `vacationModeDays`
|
||
# @return [Fixnum]
|
||
attr_accessor :vacation_mode_days
|
||
|
||
# The expiration time of the vacation unlock.
|
||
# Corresponds to the JSON property `vacationModeExpireTime`
|
||
# @return [String]
|
||
attr_accessor :vacation_mode_expire_time
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
@vacation_mode_days = args[:vacation_mode_days] if args.key?(:vacation_mode_days)
|
||
@vacation_mode_expire_time = args[:vacation_mode_expire_time] if args.key?(:vacation_mode_expire_time)
|
||
end
|
||
end
|
||
|
||
# Captures the processing status for each device in the operation.
|
||
class PerDeviceStatusInBatch
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# If processing succeeds, the device ID of the device.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# If processing fails, the error type.
|
||
# Corresponds to the JSON property `errorIdentifier`
|
||
# @return [String]
|
||
attr_accessor :error_identifier
|
||
|
||
# If processing fails, a developer message explaining what went wrong.
|
||
# Corresponds to the JSON property `errorMessage`
|
||
# @return [String]
|
||
attr_accessor :error_message
|
||
|
||
# The result status of the device after processing.
|
||
# Corresponds to the JSON property `status`
|
||
# @return [String]
|
||
attr_accessor :status
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@error_identifier = args[:error_identifier] if args.key?(:error_identifier)
|
||
@error_message = args[:error_message] if args.key?(:error_message)
|
||
@status = args[:status] if args.key?(:status)
|
||
end
|
||
end
|
||
|
||
# The `Status` type defines a logical error model that is suitable for
|
||
# different programming environments, including REST APIs and RPC APIs. It is
|
||
# used by [gRPC](https://github.com/grpc). The error model is designed to be:
|
||
# - Simple to use and understand for most users
|
||
# - Flexible enough to meet unexpected needs
|
||
# # Overview
|
||
# The `Status` message contains three pieces of data: error code, error
|
||
# message, and error details. The error code should be an enum value of
|
||
# google.rpc.Code, but it may accept additional error codes if needed. The
|
||
# error message should be a developer-facing English message that helps
|
||
# developers *understand* and *resolve* the error. If a localized user-facing
|
||
# error message is needed, put the localized message in the error details or
|
||
# localize it in the client. The optional error details may contain arbitrary
|
||
# information about the error. There is a predefined set of error detail types
|
||
# in the package `google.rpc` that can be used for common error conditions.
|
||
# # Language mapping
|
||
# The `Status` message is the logical representation of the error model, but it
|
||
# is not necessarily the actual wire format. When the `Status` message is
|
||
# exposed in different client libraries and different wire protocols, it can be
|
||
# mapped differently. For example, it will likely be mapped to some exceptions
|
||
# in Java, but more likely mapped to some error codes in C.
|
||
# # Other uses
|
||
# The error model and the `Status` message can be used in a variety of
|
||
# environments, either with or without APIs, to provide a
|
||
# consistent developer experience across different environments.
|
||
# Example uses of this error model include:
|
||
# - Partial errors. If a service needs to return partial errors to the client,
|
||
# it may embed the `Status` in the normal response to indicate the partial
|
||
# errors.
|
||
# - Workflow errors. A typical workflow has multiple steps. Each step may
|
||
# have a `Status` message for error reporting.
|
||
# - Batch operations. If a client uses batch request and batch response, the
|
||
# `Status` message should be used directly inside batch response, one for
|
||
# each error sub-response.
|
||
# - Asynchronous operations. If an API call embeds asynchronous operation
|
||
# results in its response, the status of those operations should be
|
||
# represented directly using the `Status` message.
|
||
# - Logging. If some API errors are stored in logs, the message `Status` could
|
||
# be used directly after any stripping needed for security/privacy reasons.
|
||
class Status
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The status code, which should be an enum value of google.rpc.Code.
|
||
# Corresponds to the JSON property `code`
|
||
# @return [Fixnum]
|
||
attr_accessor :code
|
||
|
||
# A list of messages that carry the error details. There is a common set of
|
||
# message types for APIs to use.
|
||
# Corresponds to the JSON property `details`
|
||
# @return [Array<Hash<String,Object>>]
|
||
attr_accessor :details
|
||
|
||
# A developer-facing error message, which should be in English. Any
|
||
# user-facing error message should be localized and sent in the
|
||
# google.rpc.Status.details field, or localized by the client.
|
||
# Corresponds to the JSON property `message`
|
||
# @return [String]
|
||
attr_accessor :message
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@code = args[:code] if args.key?(:code)
|
||
@details = args[:details] if args.key?(:details)
|
||
@message = args[:message] if args.key?(:message)
|
||
end
|
||
end
|
||
|
||
# Request message to unclaim a device.
|
||
class UnclaimDeviceRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# The device ID returned by `ClaimDevice`.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Required. The section type of the device's provisioning record.
|
||
# Corresponds to the JSON property `sectionType`
|
||
# @return [String]
|
||
attr_accessor :section_type
|
||
|
||
# The duration of the vacation unlock starting from when the request is
|
||
# processed. (1 day is treated as 24 hours)
|
||
# Corresponds to the JSON property `vacationModeDays`
|
||
# @return [Fixnum]
|
||
attr_accessor :vacation_mode_days
|
||
|
||
# The expiration time of the vacation unlock.
|
||
# Corresponds to the JSON property `vacationModeExpireTime`
|
||
# @return [String]
|
||
attr_accessor :vacation_mode_expire_time
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@section_type = args[:section_type] if args.key?(:section_type)
|
||
@vacation_mode_days = args[:vacation_mode_days] if args.key?(:vacation_mode_days)
|
||
@vacation_mode_expire_time = args[:vacation_mode_expire_time] if args.key?(:vacation_mode_expire_time)
|
||
end
|
||
end
|
||
|
||
# Request to unclaim devices asynchronously in batch.
|
||
class UnclaimDevicesRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The list of devices to unclaim.
|
||
# Corresponds to the JSON property `unclaims`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::PartnerUnclaim>]
|
||
attr_accessor :unclaims
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@unclaims = args[:unclaims] if args.key?(:unclaims)
|
||
end
|
||
end
|
||
|
||
# Request to update device metadata in batch.
|
||
class UpdateDeviceMetadataInBatchRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Required. The list of metadata updates.
|
||
# Corresponds to the JSON property `updates`
|
||
# @return [Array<Google::Apis::AndroiddeviceprovisioningV1::UpdateMetadataArguments>]
|
||
attr_accessor :updates
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@updates = args[:updates] if args.key?(:updates)
|
||
end
|
||
end
|
||
|
||
# Request to set metadata for a device.
|
||
class UpdateDeviceMetadataRequest
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
# Corresponds to the JSON property `deviceMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata]
|
||
attr_accessor :device_metadata
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_metadata = args[:device_metadata] if args.key?(:device_metadata)
|
||
end
|
||
end
|
||
|
||
# Identifies metdata updates to one device.
|
||
class UpdateMetadataArguments
|
||
include Google::Apis::Core::Hashable
|
||
|
||
# Device ID of the device.
|
||
# Corresponds to the JSON property `deviceId`
|
||
# @return [Fixnum]
|
||
attr_accessor :device_id
|
||
|
||
# Encapsulates hardware and product IDs to identify a manufactured device.
|
||
# To understand requirements on identifier sets, read
|
||
# [Identifiers](/zero-touch/guides/identifiers).
|
||
# Corresponds to the JSON property `deviceIdentifier`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceIdentifier]
|
||
attr_accessor :device_identifier
|
||
|
||
# Metadata entries that can be attached to a `Device`. To learn more, read
|
||
# [Device metadata](/zero-touch/guides/metadata).
|
||
# Corresponds to the JSON property `deviceMetadata`
|
||
# @return [Google::Apis::AndroiddeviceprovisioningV1::DeviceMetadata]
|
||
attr_accessor :device_metadata
|
||
|
||
def initialize(**args)
|
||
update!(**args)
|
||
end
|
||
|
||
# Update properties of this object
|
||
def update!(**args)
|
||
@device_id = args[:device_id] if args.key?(:device_id)
|
||
@device_identifier = args[:device_identifier] if args.key?(:device_identifier)
|
||
@device_metadata = args[:device_metadata] if args.key?(:device_metadata)
|
||
end
|
||
end
|
||
end
|
||
end
|
||
end
|