chore: update docs/dyn , add static discovery files to discovery_cache/documents (#1111)
This PR was generated using Autosynth. :rainbow:
Synth log will be available here:
https://source.cloud.google.com/results/invocations/78f53313-0c78-4a29-8841-f031665a4c6a/targets
- [ ] To automatically regenerate this PR, check this box.
Source-Link: https://github.com/googleapis/synthtool/commit/c2de32114ec484aa708d32012d1fa8d75232daf5
diff --git a/googleapiclient/discovery_cache/documents/androiddeviceprovisioning.v1.json b/googleapiclient/discovery_cache/documents/androiddeviceprovisioning.v1.json
new file mode 100644
index 0000000..57519df
--- /dev/null
+++ b/googleapiclient/discovery_cache/documents/androiddeviceprovisioning.v1.json
@@ -0,0 +1,1807 @@
+{
+ "basePath": "",
+ "title": "Android Device Provisioning Partner API",
+ "version": "v1",
+ "baseUrl": "https://androiddeviceprovisioning.googleapis.com/",
+ "parameters": {
+ "access_token": {
+ "location": "query",
+ "description": "OAuth access token.",
+ "type": "string"
+ },
+ "prettyPrint": {
+ "type": "boolean",
+ "location": "query",
+ "default": "true",
+ "description": "Returns response with indentations and line breaks."
+ },
+ "quotaUser": {
+ "type": "string",
+ "location": "query",
+ "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters."
+ },
+ "uploadType": {
+ "location": "query",
+ "type": "string",
+ "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
+ },
+ "callback": {
+ "description": "JSONP",
+ "type": "string",
+ "location": "query"
+ },
+ "$.xgafv": {
+ "enumDescriptions": [
+ "v1 error format",
+ "v2 error format"
+ ],
+ "description": "V1 error format.",
+ "enum": [
+ "1",
+ "2"
+ ],
+ "type": "string",
+ "location": "query"
+ },
+ "fields": {
+ "description": "Selector specifying which fields to include in a partial response.",
+ "type": "string",
+ "location": "query"
+ },
+ "oauth_token": {
+ "type": "string",
+ "description": "OAuth 2.0 token for the current user.",
+ "location": "query"
+ },
+ "key": {
+ "location": "query",
+ "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
+ "type": "string"
+ },
+ "alt": {
+ "default": "json",
+ "description": "Data format for response.",
+ "enum": [
+ "json",
+ "media",
+ "proto"
+ ],
+ "location": "query",
+ "enumDescriptions": [
+ "Responses with Content-Type of application/json",
+ "Media download with context-dependent Content-Type",
+ "Responses with Content-Type of application/x-protobuf"
+ ],
+ "type": "string"
+ },
+ "upload_protocol": {
+ "type": "string",
+ "location": "query",
+ "description": "Upload protocol for media (e.g. \"raw\", \"multipart\")."
+ }
+ },
+ "batchPath": "batch",
+ "documentationLink": "https://developers.google.com/zero-touch/",
+ "ownerDomain": "google.com",
+ "protocol": "rest",
+ "servicePath": "",
+ "icons": {
+ "x16": "http://www.google.com/images/icons/product/search-16.gif",
+ "x32": "http://www.google.com/images/icons/product/search-32.gif"
+ },
+ "canonicalName": "Android Provisioning Partner",
+ "version_module": true,
+ "description": "Automates Android zero-touch enrollment for device resellers, customers, and EMMs.",
+ "name": "androiddeviceprovisioning",
+ "discoveryVersion": "v1",
+ "kind": "discovery#restDescription",
+ "resources": {
+ "partners": {
+ "resources": {
+ "customers": {
+ "methods": {
+ "create": {
+ "request": {
+ "$ref": "CreateCustomerRequest"
+ },
+ "flatPath": "v1/partners/{partnersId}/customers",
+ "path": "v1/{+parent}/customers",
+ "description": "Creates a customer for zero-touch enrollment. After the method returns successfully, admin and owner roles can manage devices and EMM configs by calling API methods or using their zero-touch enrollment portal. The customer receives an email that welcomes them to zero-touch enrollment and explains how to sign into the portal.",
+ "parameters": {
+ "parent": {
+ "required": true,
+ "pattern": "^partners/[^/]+$",
+ "description": "Required. The parent resource ID in the format `partners/[PARTNER_ID]` that identifies the reseller.",
+ "location": "path",
+ "type": "string"
+ }
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "httpMethod": "POST",
+ "id": "androiddeviceprovisioning.partners.customers.create",
+ "response": {
+ "$ref": "Company"
+ }
+ },
+ "list": {
+ "parameters": {
+ "partnerId": {
+ "location": "path",
+ "required": true,
+ "format": "int64",
+ "pattern": "^[^/]+$",
+ "description": "Required. The ID of the reseller partner.",
+ "type": "string"
+ },
+ "pageSize": {
+ "description": "The maximum number of results to be returned. If not specified or 0, all the records are returned.",
+ "type": "integer",
+ "format": "int32",
+ "location": "query"
+ },
+ "pageToken": {
+ "location": "query",
+ "type": "string",
+ "description": "A token identifying a page of results returned by the server."
+ }
+ },
+ "flatPath": "v1/partners/{partnersId}/customers",
+ "id": "androiddeviceprovisioning.partners.customers.list",
+ "path": "v1/partners/{+partnerId}/customers",
+ "description": "Lists the customers that are enrolled to the reseller identified by the `partnerId` argument. This list includes customers that the reseller created and customers that enrolled themselves using the portal.",
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "response": {
+ "$ref": "ListCustomersResponse"
+ }
+ }
+ }
+ },
+ "vendors": {
+ "methods": {
+ "list": {
+ "id": "androiddeviceprovisioning.partners.vendors.list",
+ "parameters": {
+ "pageToken": {
+ "type": "string",
+ "location": "query",
+ "description": "A token identifying a page of results returned by the server."
+ },
+ "parent": {
+ "location": "path",
+ "required": true,
+ "type": "string",
+ "description": "Required. The resource name in the format `partners/[PARTNER_ID]`.",
+ "pattern": "^partners/[^/]+$"
+ },
+ "pageSize": {
+ "type": "integer",
+ "location": "query",
+ "description": "The maximum number of results to be returned.",
+ "format": "int32"
+ }
+ },
+ "description": "Lists the vendors of the partner.",
+ "response": {
+ "$ref": "ListVendorsResponse"
+ },
+ "httpMethod": "GET",
+ "parameterOrder": [
+ "parent"
+ ],
+ "flatPath": "v1/partners/{partnersId}/vendors",
+ "path": "v1/{+parent}/vendors"
+ }
+ },
+ "resources": {
+ "customers": {
+ "methods": {
+ "list": {
+ "httpMethod": "GET",
+ "flatPath": "v1/partners/{partnersId}/vendors/{vendorsId}/customers",
+ "description": "Lists the customers of the vendor.",
+ "id": "androiddeviceprovisioning.partners.vendors.customers.list",
+ "parameterOrder": [
+ "parent"
+ ],
+ "parameters": {
+ "pageSize": {
+ "type": "integer",
+ "description": "The maximum number of results to be returned.",
+ "location": "query",
+ "format": "int32"
+ },
+ "pageToken": {
+ "description": "A token identifying a page of results returned by the server.",
+ "location": "query",
+ "type": "string"
+ },
+ "parent": {
+ "pattern": "^partners/[^/]+/vendors/[^/]+$",
+ "location": "path",
+ "type": "string",
+ "required": true,
+ "description": "Required. The resource name in the format `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`."
+ }
+ },
+ "path": "v1/{+parent}/customers",
+ "response": {
+ "$ref": "ListVendorCustomersResponse"
+ }
+ }
+ }
+ }
+ }
+ },
+ "devices": {
+ "methods": {
+ "unclaim": {
+ "request": {
+ "$ref": "UnclaimDeviceRequest"
+ },
+ "httpMethod": "POST",
+ "flatPath": "v1/partners/{partnersId}/devices:unclaim",
+ "description": "Unclaims a device from a customer and removes it from zero-touch enrollment.",
+ "parameters": {
+ "partnerId": {
+ "format": "int64",
+ "pattern": "^[^/]+$",
+ "description": "Required. The ID of the reseller partner.",
+ "required": true,
+ "type": "string",
+ "location": "path"
+ }
+ },
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "id": "androiddeviceprovisioning.partners.devices.unclaim",
+ "path": "v1/partners/{+partnerId}/devices:unclaim",
+ "response": {
+ "$ref": "Empty"
+ }
+ },
+ "unclaimAsync": {
+ "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync",
+ "response": {
+ "$ref": "Operation"
+ },
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "request": {
+ "$ref": "UnclaimDevicesRequest"
+ },
+ "description": "Unclaims a batch of devices for a customer asynchronously. Removes the devices from zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).",
+ "httpMethod": "POST",
+ "parameters": {
+ "partnerId": {
+ "pattern": "^[^/]+$",
+ "type": "string",
+ "format": "int64",
+ "description": "Required. The reseller partner ID.",
+ "required": true,
+ "location": "path"
+ }
+ },
+ "path": "v1/partners/{+partnerId}/devices:unclaimAsync",
+ "id": "androiddeviceprovisioning.partners.devices.unclaimAsync"
+ },
+ "updateMetadataAsync": {
+ "path": "v1/partners/{+partnerId}/devices:updateMetadataAsync",
+ "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync",
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "httpMethod": "POST",
+ "description": "Updates the reseller metadata attached to a batch of devices. This method updates devices asynchronously and returns an `Operation` that can be used to track progress. Read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).",
+ "request": {
+ "$ref": "UpdateDeviceMetadataInBatchRequest"
+ },
+ "parameters": {
+ "partnerId": {
+ "description": "Required. The reseller partner ID.",
+ "format": "int64",
+ "location": "path",
+ "type": "string",
+ "pattern": "^[^/]+$",
+ "required": true
+ }
+ },
+ "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync",
+ "response": {
+ "$ref": "Operation"
+ }
+ },
+ "claimAsync": {
+ "request": {
+ "$ref": "ClaimDevicesRequest"
+ },
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "parameters": {
+ "partnerId": {
+ "location": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^[^/]+$",
+ "description": "Required. The ID of the reseller partner.",
+ "format": "int64"
+ }
+ },
+ "response": {
+ "$ref": "Operation"
+ },
+ "path": "v1/partners/{+partnerId}/devices:claimAsync",
+ "id": "androiddeviceprovisioning.partners.devices.claimAsync",
+ "httpMethod": "POST",
+ "description": "Claims a batch of devices for a customer asynchronously. Adds the devices to zero-touch enrollment. To learn more, read [Long‑running batch operations](/zero-touch/guides/how-it-works#operations).",
+ "flatPath": "v1/partners/{partnersId}/devices:claimAsync"
+ },
+ "findByIdentifier": {
+ "response": {
+ "$ref": "FindDevicesByDeviceIdentifierResponse"
+ },
+ "parameters": {
+ "partnerId": {
+ "required": true,
+ "format": "int64",
+ "type": "string",
+ "pattern": "^[^/]+$",
+ "description": "Required. The ID of the reseller partner.",
+ "location": "path"
+ }
+ },
+ "path": "v1/partners/{+partnerId}/devices:findByIdentifier",
+ "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier",
+ "id": "androiddeviceprovisioning.partners.devices.findByIdentifier",
+ "request": {
+ "$ref": "FindDevicesByDeviceIdentifierRequest"
+ },
+ "httpMethod": "POST",
+ "description": "Finds devices by hardware identifiers, such as IMEI.",
+ "parameterOrder": [
+ "partnerId"
+ ]
+ },
+ "get": {
+ "path": "v1/{+name}",
+ "httpMethod": "GET",
+ "id": "androiddeviceprovisioning.partners.devices.get",
+ "flatPath": "v1/partners/{partnersId}/devices/{devicesId}",
+ "response": {
+ "$ref": "Device"
+ },
+ "parameters": {
+ "name": {
+ "required": true,
+ "type": "string",
+ "description": "Required. The device API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.",
+ "pattern": "^partners/[^/]+/devices/[^/]+$",
+ "location": "path"
+ }
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "description": "Gets a device."
+ },
+ "findByOwner": {
+ "path": "v1/partners/{+partnerId}/devices:findByOwner",
+ "response": {
+ "$ref": "FindDevicesByOwnerResponse"
+ },
+ "httpMethod": "POST",
+ "request": {
+ "$ref": "FindDevicesByOwnerRequest"
+ },
+ "flatPath": "v1/partners/{partnersId}/devices:findByOwner",
+ "description": "Finds devices claimed for customers. The results only contain devices registered to the reseller that's identified by the `partnerId` argument. The customer's devices purchased from other resellers don't appear in the results.",
+ "parameters": {
+ "partnerId": {
+ "format": "int64",
+ "pattern": "^[^/]+$",
+ "type": "string",
+ "required": true,
+ "description": "Required. The ID of the reseller partner.",
+ "location": "path"
+ }
+ },
+ "parameterOrder": [
+ "partnerId"
+ ],
+ "id": "androiddeviceprovisioning.partners.devices.findByOwner"
+ },
+ "claim": {
+ "parameters": {
+ "partnerId": {
+ "pattern": "^[^/]+$",
+ "format": "int64",
+ "type": "string",
+ "location": "path",
+ "description": "Required. The ID of the reseller partner.",
+ "required": true
+ }
+ },
+ "response": {
+ "$ref": "ClaimDeviceResponse"
+ },
+ "id": "androiddeviceprovisioning.partners.devices.claim",
+ "httpMethod": "POST",
+ "path": "v1/partners/{+partnerId}/devices:claim",
+ "request": {
+ "$ref": "ClaimDeviceRequest"
+ },
+ "flatPath": "v1/partners/{partnersId}/devices:claim",
+ "description": "Claims a device for a customer and adds it to zero-touch enrollment. If the device is already claimed by another customer, the call returns an error.",
+ "parameterOrder": [
+ "partnerId"
+ ]
+ },
+ "metadata": {
+ "response": {
+ "$ref": "DeviceMetadata"
+ },
+ "parameterOrder": [
+ "metadataOwnerId",
+ "deviceId"
+ ],
+ "parameters": {
+ "deviceId": {
+ "required": true,
+ "pattern": "^[^/]+$",
+ "location": "path",
+ "format": "int64",
+ "description": "Required. The ID of the device.",
+ "type": "string"
+ },
+ "metadataOwnerId": {
+ "pattern": "^[^/]+$",
+ "format": "int64",
+ "location": "path",
+ "required": true,
+ "description": "Required. The owner of the newly set metadata. Set this to the partner ID.",
+ "type": "string"
+ }
+ },
+ "request": {
+ "$ref": "UpdateDeviceMetadataRequest"
+ },
+ "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata",
+ "description": "Updates reseller metadata associated with the device.",
+ "httpMethod": "POST",
+ "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata",
+ "id": "androiddeviceprovisioning.partners.devices.metadata"
+ }
+ }
+ }
+ }
+ },
+ "operations": {
+ "methods": {
+ "get": {
+ "httpMethod": "GET",
+ "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
+ "flatPath": "v1/operations/{operationsId}",
+ "path": "v1/{+name}",
+ "response": {
+ "$ref": "Operation"
+ },
+ "id": "androiddeviceprovisioning.operations.get",
+ "parameterOrder": [
+ "name"
+ ],
+ "parameters": {
+ "name": {
+ "description": "The name of the operation resource.",
+ "location": "path",
+ "pattern": "^operations/.*$",
+ "type": "string",
+ "required": true
+ }
+ }
+ }
+ }
+ },
+ "customers": {
+ "resources": {
+ "configurations": {
+ "methods": {
+ "patch": {
+ "httpMethod": "PATCH",
+ "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}",
+ "id": "androiddeviceprovisioning.customers.configurations.patch",
+ "description": "Updates a configuration's field values.",
+ "parameters": {
+ "name": {
+ "pattern": "^customers/[^/]+/configurations/[^/]+$",
+ "location": "path",
+ "required": true,
+ "type": "string",
+ "description": "Output only. The API resource name in the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by the server."
+ },
+ "updateMask": {
+ "location": "query",
+ "format": "google-fieldmask",
+ "description": "Required. The field mask applied to the target `Configuration` before updating the fields. To learn more about using field masks, read [FieldMask](/protocol-buffers/docs/reference/google.protobuf#fieldmask) in the Protocol Buffers documentation.",
+ "type": "string"
+ }
+ },
+ "request": {
+ "$ref": "Configuration"
+ },
+ "path": "v1/{+name}",
+ "response": {
+ "$ref": "Configuration"
+ },
+ "parameterOrder": [
+ "name"
+ ]
+ },
+ "list": {
+ "flatPath": "v1/customers/{customersId}/configurations",
+ "httpMethod": "GET",
+ "id": "androiddeviceprovisioning.customers.configurations.list",
+ "description": "Lists a customer's configurations.",
+ "parameterOrder": [
+ "parent"
+ ],
+ "response": {
+ "$ref": "CustomerListConfigurationsResponse"
+ },
+ "parameters": {
+ "parent": {
+ "description": "Required. The customer that manages the listed configurations. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "location": "path",
+ "type": "string",
+ "required": true,
+ "pattern": "^customers/[^/]+$"
+ }
+ },
+ "path": "v1/{+parent}/configurations"
+ },
+ "delete": {
+ "httpMethod": "DELETE",
+ "path": "v1/{+name}",
+ "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}",
+ "description": "Deletes an unused configuration. The API call fails if the customer has devices with the configuration applied.",
+ "response": {
+ "$ref": "Empty"
+ },
+ "parameterOrder": [
+ "name"
+ ],
+ "parameters": {
+ "name": {
+ "description": "Required. The configuration to delete. An API resource name in the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. If the configuration is applied to any devices, the API call fails.",
+ "location": "path",
+ "required": true,
+ "type": "string",
+ "pattern": "^customers/[^/]+/configurations/[^/]+$"
+ }
+ },
+ "id": "androiddeviceprovisioning.customers.configurations.delete"
+ },
+ "get": {
+ "response": {
+ "$ref": "Configuration"
+ },
+ "id": "androiddeviceprovisioning.customers.configurations.get",
+ "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}",
+ "httpMethod": "GET",
+ "description": "Gets the details of a configuration.",
+ "parameterOrder": [
+ "name"
+ ],
+ "parameters": {
+ "name": {
+ "required": true,
+ "type": "string",
+ "pattern": "^customers/[^/]+/configurations/[^/]+$",
+ "location": "path",
+ "description": "Required. The configuration to get. An API resource name in the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`."
+ }
+ },
+ "path": "v1/{+name}"
+ },
+ "create": {
+ "httpMethod": "POST",
+ "request": {
+ "$ref": "Configuration"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "path": "v1/{+parent}/configurations",
+ "response": {
+ "$ref": "Configuration"
+ },
+ "description": "Creates a new configuration. Once created, a customer can apply the configuration to devices.",
+ "parameters": {
+ "parent": {
+ "description": "Required. The customer that manages the configuration. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "location": "path",
+ "pattern": "^customers/[^/]+$",
+ "required": true,
+ "type": "string"
+ }
+ },
+ "flatPath": "v1/customers/{customersId}/configurations",
+ "id": "androiddeviceprovisioning.customers.configurations.create"
+ }
+ }
+ },
+ "devices": {
+ "methods": {
+ "list": {
+ "parameterOrder": [
+ "parent"
+ ],
+ "flatPath": "v1/customers/{customersId}/devices",
+ "description": "Lists a customer's devices.",
+ "response": {
+ "$ref": "CustomerListDevicesResponse"
+ },
+ "httpMethod": "GET",
+ "path": "v1/{+parent}/devices",
+ "id": "androiddeviceprovisioning.customers.devices.list",
+ "parameters": {
+ "pageToken": {
+ "type": "string",
+ "location": "query",
+ "description": "A token specifying which result page to return."
+ },
+ "pageSize": {
+ "location": "query",
+ "description": "The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive.",
+ "format": "int64",
+ "type": "string"
+ },
+ "parent": {
+ "pattern": "^customers/[^/]+$",
+ "description": "Required. The customer managing the devices. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "location": "path",
+ "type": "string",
+ "required": true
+ }
+ }
+ },
+ "unclaim": {
+ "path": "v1/{+parent}/devices:unclaim",
+ "flatPath": "v1/customers/{customersId}/devices:unclaim",
+ "httpMethod": "POST",
+ "id": "androiddeviceprovisioning.customers.devices.unclaim",
+ "response": {
+ "$ref": "Empty"
+ },
+ "request": {
+ "$ref": "CustomerUnclaimDeviceRequest"
+ },
+ "description": "Unclaims a device from a customer and removes it from zero-touch enrollment. After removing a device, a customer must contact their reseller to register the device into zero-touch enrollment again.",
+ "parameterOrder": [
+ "parent"
+ ],
+ "parameters": {
+ "parent": {
+ "type": "string",
+ "required": true,
+ "description": "Required. The customer managing the device. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "location": "path",
+ "pattern": "^customers/[^/]+$"
+ }
+ }
+ },
+ "applyConfiguration": {
+ "response": {
+ "$ref": "Empty"
+ },
+ "httpMethod": "POST",
+ "id": "androiddeviceprovisioning.customers.devices.applyConfiguration",
+ "parameterOrder": [
+ "parent"
+ ],
+ "parameters": {
+ "parent": {
+ "required": true,
+ "description": "Required. The customer managing the device. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "type": "string",
+ "location": "path",
+ "pattern": "^customers/[^/]+$"
+ }
+ },
+ "request": {
+ "$ref": "CustomerApplyConfigurationRequest"
+ },
+ "description": "Applies a Configuration to the device to register the device for zero-touch enrollment. After applying a configuration to a device, the device automatically provisions itself on first boot, or next factory reset.",
+ "flatPath": "v1/customers/{customersId}/devices:applyConfiguration",
+ "path": "v1/{+parent}/devices:applyConfiguration"
+ },
+ "removeConfiguration": {
+ "id": "androiddeviceprovisioning.customers.devices.removeConfiguration",
+ "response": {
+ "$ref": "Empty"
+ },
+ "httpMethod": "POST",
+ "description": "Removes a configuration from device.",
+ "request": {
+ "$ref": "CustomerRemoveConfigurationRequest"
+ },
+ "parameters": {
+ "parent": {
+ "required": true,
+ "description": "Required. The customer managing the device in the format `customers/[CUSTOMER_ID]`.",
+ "type": "string",
+ "location": "path",
+ "pattern": "^customers/[^/]+$"
+ }
+ },
+ "flatPath": "v1/customers/{customersId}/devices:removeConfiguration",
+ "path": "v1/{+parent}/devices:removeConfiguration",
+ "parameterOrder": [
+ "parent"
+ ]
+ },
+ "get": {
+ "parameters": {
+ "name": {
+ "pattern": "^customers/[^/]+/devices/[^/]+$",
+ "required": true,
+ "location": "path",
+ "type": "string",
+ "description": "Required. The device to get. An API resource name in the format `customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`."
+ }
+ },
+ "path": "v1/{+name}",
+ "httpMethod": "GET",
+ "response": {
+ "$ref": "Device"
+ },
+ "id": "androiddeviceprovisioning.customers.devices.get",
+ "parameterOrder": [
+ "name"
+ ],
+ "flatPath": "v1/customers/{customersId}/devices/{devicesId}",
+ "description": "Gets the details of a device."
+ }
+ }
+ },
+ "dpcs": {
+ "methods": {
+ "list": {
+ "response": {
+ "$ref": "CustomerListDpcsResponse"
+ },
+ "parameterOrder": [
+ "parent"
+ ],
+ "flatPath": "v1/customers/{customersId}/dpcs",
+ "description": "Lists the DPCs (device policy controllers) that support zero-touch enrollment.",
+ "httpMethod": "GET",
+ "parameters": {
+ "parent": {
+ "type": "string",
+ "required": true,
+ "pattern": "^customers/[^/]+$",
+ "description": "Required. The customer that can use the DPCs in configurations. An API resource name in the format `customers/[CUSTOMER_ID]`.",
+ "location": "path"
+ }
+ },
+ "id": "androiddeviceprovisioning.customers.dpcs.list",
+ "path": "v1/{+parent}/dpcs"
+ }
+ }
+ }
+ },
+ "methods": {
+ "list": {
+ "path": "v1/customers",
+ "response": {
+ "$ref": "CustomerListCustomersResponse"
+ },
+ "id": "androiddeviceprovisioning.customers.list",
+ "parameters": {
+ "pageSize": {
+ "format": "int32",
+ "type": "integer",
+ "description": "The maximum number of customers to show in a page of results. A number between 1 and 100 (inclusive).",
+ "location": "query"
+ },
+ "pageToken": {
+ "type": "string",
+ "location": "query",
+ "description": "A token specifying which result page to return."
+ }
+ },
+ "parameterOrder": [],
+ "description": "Lists the user's customer accounts.",
+ "flatPath": "v1/customers",
+ "httpMethod": "GET"
+ }
+ }
+ }
+ },
+ "revision": "20200801",
+ "mtlsRootUrl": "https://androiddeviceprovisioning.mtls.googleapis.com/",
+ "schemas": {
+ "ClaimDeviceRequest": {
+ "id": "ClaimDeviceRequest",
+ "description": "Request message to claim a device on behalf of a customer.",
+ "type": "object",
+ "properties": {
+ "deviceIdentifier": {
+ "description": "Required. Required. The device identifier of the device to claim.",
+ "$ref": "DeviceIdentifier"
+ },
+ "sectionType": {
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ],
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ],
+ "description": "Required. The section type of the device's provisioning record."
+ },
+ "customerId": {
+ "description": "Required. The ID of the customer for whom the device is being claimed.",
+ "type": "string",
+ "format": "int64"
+ },
+ "deviceMetadata": {
+ "description": "Optional. The metadata to attach to the device.",
+ "$ref": "DeviceMetadata"
+ }
+ }
+ },
+ "Empty": {
+ "id": "Empty",
+ "properties": {},
+ "type": "object",
+ "description": "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 `{}`."
+ },
+ "UpdateMetadataArguments": {
+ "id": "UpdateMetadataArguments",
+ "type": "object",
+ "properties": {
+ "deviceId": {
+ "type": "string",
+ "description": "Required. Device ID of the device.",
+ "format": "int64"
+ },
+ "deviceMetadata": {
+ "$ref": "DeviceMetadata",
+ "description": "Required. The metadata to update."
+ },
+ "deviceIdentifier": {
+ "description": "Required. Device identifier.",
+ "$ref": "DeviceIdentifier"
+ }
+ },
+ "description": "Identifies metadata updates to one device."
+ },
+ "DevicesLongRunningOperationResponse": {
+ "description": "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).",
+ "properties": {
+ "perDeviceStatus": {
+ "description": "The processing status for each device in the operation. One `PerDeviceStatus` per device. The list order matches the items in the original request.",
+ "type": "array",
+ "items": {
+ "$ref": "OperationPerDevice"
+ }
+ },
+ "successCount": {
+ "type": "integer",
+ "format": "int32",
+ "description": "A summary of how many items in the operation the server processed successfully. Updated as the operation progresses."
+ }
+ },
+ "type": "object",
+ "id": "DevicesLongRunningOperationResponse"
+ },
+ "PartnerUnclaim": {
+ "properties": {
+ "deviceIdentifier": {
+ "description": "Required. Device identifier of the device.",
+ "$ref": "DeviceIdentifier"
+ },
+ "deviceId": {
+ "format": "int64",
+ "description": "Required. Device ID of the device.",
+ "type": "string"
+ },
+ "vacationModeExpireTime": {
+ "description": "Optional. The expiration time of the vacation unlock.",
+ "type": "string",
+ "format": "google-datetime"
+ },
+ "vacationModeDays": {
+ "format": "int32",
+ "description": "Optional. The duration of the vacation unlock starting from when the request is processed. (1 day is treated as 24 hours)",
+ "type": "integer"
+ },
+ "sectionType": {
+ "description": "Required. The section type of the device's provisioning record.",
+ "type": "string",
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ],
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ]
+ }
+ },
+ "id": "PartnerUnclaim",
+ "description": "Identifies one unclaim request.",
+ "type": "object"
+ },
+ "CustomerListConfigurationsResponse": {
+ "properties": {
+ "configurations": {
+ "description": "The configurations.",
+ "items": {
+ "$ref": "Configuration"
+ },
+ "type": "array"
+ }
+ },
+ "description": "Response message of customer's listing configuration.",
+ "id": "CustomerListConfigurationsResponse",
+ "type": "object"
+ },
+ "FindDevicesByOwnerRequest": {
+ "type": "object",
+ "id": "FindDevicesByOwnerRequest",
+ "description": "Request to find devices by customers.",
+ "properties": {
+ "customerId": {
+ "description": "Required. The list of customer IDs to search for.",
+ "items": {
+ "type": "string",
+ "format": "int64"
+ },
+ "type": "array"
+ },
+ "pageToken": {
+ "type": "string",
+ "description": "A token specifying which result page to return."
+ },
+ "limit": {
+ "description": "Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive.",
+ "type": "string",
+ "format": "int64"
+ },
+ "sectionType": {
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ],
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ],
+ "type": "string",
+ "description": "Required. The section type of the device's provisioning record."
+ }
+ }
+ },
+ "CustomerListDevicesResponse": {
+ "properties": {
+ "devices": {
+ "description": "The customer's devices.",
+ "type": "array",
+ "items": {
+ "$ref": "Device"
+ }
+ },
+ "nextPageToken": {
+ "type": "string",
+ "description": "A token used to access the next page of results. Omitted if no further results are available."
+ }
+ },
+ "id": "CustomerListDevicesResponse",
+ "type": "object",
+ "description": "Response message of customer's liting devices."
+ },
+ "UpdateDeviceMetadataRequest": {
+ "properties": {
+ "deviceMetadata": {
+ "$ref": "DeviceMetadata",
+ "description": "Required. The metadata to attach to the device."
+ }
+ },
+ "type": "object",
+ "description": "Request to set metadata for a device.",
+ "id": "UpdateDeviceMetadataRequest"
+ },
+ "CustomerRemoveConfigurationRequest": {
+ "description": "Request message for customer to remove the configuration from device.",
+ "type": "object",
+ "id": "CustomerRemoveConfigurationRequest",
+ "properties": {
+ "device": {
+ "$ref": "DeviceReference",
+ "description": "Required. The device to remove the configuration from."
+ }
+ }
+ },
+ "Operation": {
+ "type": "object",
+ "description": "This resource represents a long-running operation that is the result of a network API call.",
+ "id": "Operation",
+ "properties": {
+ "name": {
+ "description": "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 be a resource name ending with `operations/{unique_id}`.",
+ "type": "string"
+ },
+ "metadata": {
+ "additionalProperties": {
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
+ },
+ "description": "This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.",
+ "type": "object"
+ },
+ "error": {
+ "description": "This field will always be not set if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`. In this case, error information for each device is set in `response.perDeviceStatus.result.status`.",
+ "$ref": "Status"
+ },
+ "done": {
+ "type": "boolean",
+ "description": "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."
+ },
+ "response": {
+ "type": "object",
+ "description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.",
+ "additionalProperties": {
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
+ }
+ }
+ }
+ },
+ "FindDevicesByOwnerResponse": {
+ "type": "object",
+ "description": "Response containing found devices.",
+ "id": "FindDevicesByOwnerResponse",
+ "properties": {
+ "totalSize": {
+ "type": "integer",
+ "description": "The total count of items in the list irrespective of pagination.",
+ "format": "int32"
+ },
+ "devices": {
+ "type": "array",
+ "items": {
+ "$ref": "Device"
+ },
+ "description": "The customer's devices."
+ },
+ "nextPageToken": {
+ "type": "string",
+ "description": "A token used to access the next page of results. Omitted if no further results are available."
+ }
+ }
+ },
+ "UnclaimDevicesRequest": {
+ "type": "object",
+ "description": "Request to unclaim devices asynchronously in batch.",
+ "id": "UnclaimDevicesRequest",
+ "properties": {
+ "unclaims": {
+ "items": {
+ "$ref": "PartnerUnclaim"
+ },
+ "description": "Required. The list of devices to unclaim.",
+ "type": "array"
+ }
+ }
+ },
+ "DeviceIdentifier": {
+ "type": "object",
+ "id": "DeviceIdentifier",
+ "properties": {
+ "serialNumber": {
+ "type": "string",
+ "description": "The manufacturer's serial number for the device. This value might not be unique across different device models."
+ },
+ "model": {
+ "description": "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).",
+ "type": "string"
+ },
+ "manufacturer": {
+ "type": "string",
+ "description": "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)."
+ },
+ "meid": {
+ "description": "The device’s MEID number.",
+ "type": "string"
+ },
+ "imei": {
+ "description": "The device’s IMEI number. Validated on input.",
+ "type": "string"
+ }
+ },
+ "description": "Encapsulates hardware and product IDs to identify a manufactured device. To understand requirements on identifier sets, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers)."
+ },
+ "DeviceClaim": {
+ "properties": {
+ "vacationModeExpireTime": {
+ "description": "The timestamp when the device will exit ‘vacation mode’. This value is present iff the device is in 'vacation mode'.",
+ "type": "string",
+ "format": "google-datetime"
+ },
+ "sectionType": {
+ "type": "string",
+ "readOnly": true,
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ],
+ "description": "Output only. The type of claim made on the device.",
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ]
+ },
+ "ownerCompanyId": {
+ "type": "string",
+ "description": "The ID of the Customer that purchased the device.",
+ "format": "int64"
+ },
+ "resellerId": {
+ "description": "The ID of the reseller that claimed the device.",
+ "format": "int64",
+ "type": "string"
+ },
+ "vacationModeStartTime": {
+ "description": "The timestamp when the device was put into ‘vacation mode’. This value is present iff the device is in 'vacation mode'.",
+ "format": "google-datetime",
+ "type": "string"
+ }
+ },
+ "description": "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).",
+ "type": "object",
+ "id": "DeviceClaim"
+ },
+ "UpdateDeviceMetadataInBatchRequest": {
+ "properties": {
+ "updates": {
+ "type": "array",
+ "description": "Required. The list of metadata updates.",
+ "items": {
+ "$ref": "UpdateMetadataArguments"
+ }
+ }
+ },
+ "id": "UpdateDeviceMetadataInBatchRequest",
+ "description": "Request to update device metadata in batch.",
+ "type": "object"
+ },
+ "CustomerListCustomersResponse": {
+ "description": "Response message for listing my customers.",
+ "properties": {
+ "nextPageToken": {
+ "type": "string",
+ "description": "A token used to access the next page of results. Omitted if no further results are available."
+ },
+ "customers": {
+ "type": "array",
+ "description": "The customer accounts the calling user is a member of.",
+ "items": {
+ "$ref": "Company"
+ }
+ }
+ },
+ "id": "CustomerListCustomersResponse",
+ "type": "object"
+ },
+ "ClaimDeviceResponse": {
+ "properties": {
+ "deviceId": {
+ "description": "The device ID of the claimed device.",
+ "type": "string",
+ "format": "int64"
+ },
+ "deviceName": {
+ "type": "string",
+ "description": "The resource name of the device in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`."
+ }
+ },
+ "id": "ClaimDeviceResponse",
+ "description": "Response message containing device id of the claim.",
+ "type": "object"
+ },
+ "DeviceMetadata": {
+ "description": "Metadata entries that can be attached to a `Device`. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata).",
+ "id": "DeviceMetadata",
+ "properties": {
+ "entries": {
+ "additionalProperties": {
+ "type": "string"
+ },
+ "type": "object",
+ "description": "Metadata entries recorded as key-value pairs."
+ }
+ },
+ "type": "object"
+ },
+ "CustomerApplyConfigurationRequest": {
+ "type": "object",
+ "description": "Request message for customer to assign a configuration to device.",
+ "properties": {
+ "device": {
+ "$ref": "DeviceReference",
+ "description": "Required. The device the configuration is applied to."
+ },
+ "configuration": {
+ "description": "Required. The configuration applied to the device in the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.",
+ "type": "string"
+ }
+ },
+ "id": "CustomerApplyConfigurationRequest"
+ },
+ "CustomerListDpcsResponse": {
+ "id": "CustomerListDpcsResponse",
+ "type": "object",
+ "description": "Response message of customer's listing DPCs.",
+ "properties": {
+ "dpcs": {
+ "items": {
+ "$ref": "Dpc"
+ },
+ "type": "array",
+ "description": "The list of DPCs available to the customer that support zero-touch enrollment."
+ }
+ }
+ },
+ "Company": {
+ "type": "object",
+ "id": "Company",
+ "description": "A reseller, vendor, or customer in the zero-touch reseller and customer APIs.",
+ "properties": {
+ "companyId": {
+ "description": "Output only. The ID of the company. Assigned by the server.",
+ "readOnly": true,
+ "format": "int64",
+ "type": "string"
+ },
+ "ownerEmails": {
+ "type": "array",
+ "items": {
+ "type": "string"
+ },
+ "description": "Required. 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."
+ },
+ "adminEmails": {
+ "items": {
+ "type": "string"
+ },
+ "type": "array",
+ "description": "Optional. Email address of customer's users in the admin role. Each email address must be associated with a Google Account."
+ },
+ "name": {
+ "type": "string",
+ "readOnly": true,
+ "description": "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."
+ },
+ "companyName": {
+ "description": "Required. The name of the company. For example _XYZ Corp_. Displayed to the company's employees in the zero-touch enrollment portal.",
+ "type": "string"
+ },
+ "termsStatus": {
+ "description": "Output only. Whether any user from the company has accepted the latest Terms of Service (ToS). See TermsStatus.",
+ "enum": [
+ "TERMS_STATUS_UNSPECIFIED",
+ "TERMS_STATUS_NOT_ACCEPTED",
+ "TERMS_STATUS_ACCEPTED",
+ "TERMS_STATUS_STALE"
+ ],
+ "enumDescriptions": [
+ "Default value. This value should never be set if the enum is present.",
+ "None of the company's users have accepted the ToS.",
+ "One (or more) of the company's users has accepted the ToS.",
+ "None of the company's users has accepted the current ToS but at least one user accepted a previous ToS."
+ ],
+ "readOnly": true,
+ "type": "string"
+ }
+ }
+ },
+ "Configuration": {
+ "properties": {
+ "contactEmail": {
+ "description": "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.",
+ "type": "string"
+ },
+ "dpcExtras": {
+ "description": "The JSON-formatted EMM provisioning extras that are passed to the DPC.",
+ "type": "string"
+ },
+ "dpcResourcePath": {
+ "description": "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`.",
+ "type": "string"
+ },
+ "name": {
+ "readOnly": true,
+ "description": "Output only. The API resource name in the format `customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by the server.",
+ "type": "string"
+ },
+ "contactPhone": {
+ "type": "string",
+ "description": "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."
+ },
+ "configurationId": {
+ "type": "string",
+ "description": "Output only. The ID of the configuration. Assigned by the server.",
+ "readOnly": true,
+ "format": "int64"
+ },
+ "configurationName": {
+ "description": "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.",
+ "type": "string"
+ },
+ "customMessage": {
+ "description": "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.",
+ "type": "string"
+ },
+ "companyName": {
+ "description": "Required. The name of the organization. Zero-touch enrollment shows this organization name to device users during device provisioning.",
+ "type": "string"
+ },
+ "isDefault": {
+ "type": "boolean",
+ "description": "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`."
+ }
+ },
+ "type": "object",
+ "description": "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.",
+ "id": "Configuration"
+ },
+ "OperationPerDevice": {
+ "description": "A task for each device in the operation. Corresponds to each device change in the request.",
+ "id": "OperationPerDevice",
+ "properties": {
+ "unclaim": {
+ "$ref": "PartnerUnclaim",
+ "description": "A copy of the original device-unclaim request received by the server."
+ },
+ "updateMetadata": {
+ "description": "A copy of the original metadata-update request received by the server.",
+ "$ref": "UpdateMetadataArguments"
+ },
+ "result": {
+ "description": "The processing result for each device.",
+ "$ref": "PerDeviceStatusInBatch"
+ },
+ "claim": {
+ "description": "A copy of the original device-claim request received by the server.",
+ "$ref": "PartnerClaim"
+ }
+ },
+ "type": "object"
+ },
+ "UnclaimDeviceRequest": {
+ "type": "object",
+ "properties": {
+ "sectionType": {
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ],
+ "type": "string",
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ],
+ "description": "Required. The section type of the device's provisioning record."
+ },
+ "deviceId": {
+ "format": "int64",
+ "type": "string",
+ "description": "Required. The device ID returned by `ClaimDevice`."
+ },
+ "vacationModeDays": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The duration of the vacation unlock starting from when the request is processed. (1 day is treated as 24 hours)"
+ },
+ "vacationModeExpireTime": {
+ "format": "google-datetime",
+ "type": "string",
+ "description": "The expiration time of the vacation unlock."
+ },
+ "deviceIdentifier": {
+ "description": "Required. The device identifier you used when you claimed this device.",
+ "$ref": "DeviceIdentifier"
+ }
+ },
+ "id": "UnclaimDeviceRequest",
+ "description": "Request message to unclaim a device."
+ },
+ "DevicesLongRunningOperationMetadata": {
+ "properties": {
+ "progress": {
+ "format": "int32",
+ "description": "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.",
+ "type": "integer"
+ },
+ "processingStatus": {
+ "type": "string",
+ "enumDescriptions": [
+ "Invalid code. Shouldn't be used.",
+ "Pending.",
+ "In progress.",
+ "Processed. This doesn't mean all items were processed successfully, you should check the `response` field for the result of every item."
+ ],
+ "enum": [
+ "BATCH_PROCESS_STATUS_UNSPECIFIED",
+ "BATCH_PROCESS_PENDING",
+ "BATCH_PROCESS_IN_PROGRESS",
+ "BATCH_PROCESS_PROCESSED"
+ ],
+ "description": "The processing status of the operation."
+ },
+ "devicesCount": {
+ "description": "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.",
+ "type": "integer",
+ "format": "int32"
+ }
+ },
+ "description": "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).",
+ "type": "object",
+ "id": "DevicesLongRunningOperationMetadata"
+ },
+ "CustomerUnclaimDeviceRequest": {
+ "id": "CustomerUnclaimDeviceRequest",
+ "properties": {
+ "device": {
+ "description": "Required. The device to unclaim.",
+ "$ref": "DeviceReference"
+ }
+ },
+ "type": "object",
+ "description": "Request message for customer to unclaim a device."
+ },
+ "Dpc": {
+ "id": "Dpc",
+ "type": "object",
+ "properties": {
+ "dpcName": {
+ "description": "Output only. The title of the DPC app in Google Play. For example, _Google Apps Device Policy_. Useful in an application's user interface.",
+ "readOnly": true,
+ "type": "string"
+ },
+ "name": {
+ "description": "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`).",
+ "type": "string",
+ "readOnly": true
+ },
+ "packageName": {
+ "readOnly": true,
+ "type": "string",
+ "description": "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."
+ }
+ },
+ "description": "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."
+ },
+ "ListVendorsResponse": {
+ "type": "object",
+ "id": "ListVendorsResponse",
+ "properties": {
+ "vendors": {
+ "type": "array",
+ "items": {
+ "$ref": "Company"
+ },
+ "description": "List of vendors of the reseller partner. Fields `name`, `companyId` and `companyName` are populated to the Company object."
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results. Omitted if no further results are available.",
+ "type": "string"
+ },
+ "totalSize": {
+ "format": "int32",
+ "description": "The total count of items in the list irrespective of pagination.",
+ "type": "integer"
+ }
+ },
+ "description": "Response message to list vendors of the partner."
+ },
+ "FindDevicesByDeviceIdentifierResponse": {
+ "properties": {
+ "nextPageToken": {
+ "description": "A token used to access the next page of results. Omitted if no further results are available.",
+ "type": "string"
+ },
+ "totalSize": {
+ "type": "integer",
+ "description": "The total count of items in the list irrespective of pagination.",
+ "format": "int32"
+ },
+ "devices": {
+ "type": "array",
+ "description": "Found devices.",
+ "items": {
+ "$ref": "Device"
+ }
+ }
+ },
+ "type": "object",
+ "description": "Response containing found devices.",
+ "id": "FindDevicesByDeviceIdentifierResponse"
+ },
+ "Status": {
+ "type": "object",
+ "description": "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). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
+ "properties": {
+ "code": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The status code, which should be an enum value of google.rpc.Code."
+ },
+ "details": {
+ "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
+ "items": {
+ "additionalProperties": {
+ "type": "any",
+ "description": "Properties of the object. Contains field @type with type URL."
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "message": {
+ "description": "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.",
+ "type": "string"
+ }
+ },
+ "id": "Status"
+ },
+ "ClaimDevicesRequest": {
+ "id": "ClaimDevicesRequest",
+ "type": "object",
+ "description": "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.",
+ "properties": {
+ "claims": {
+ "description": "Required. A list of device claims.",
+ "type": "array",
+ "items": {
+ "$ref": "PartnerClaim"
+ }
+ }
+ }
+ },
+ "Device": {
+ "id": "Device",
+ "description": "An Android device registered for zero-touch enrollment.",
+ "type": "object",
+ "properties": {
+ "deviceId": {
+ "description": "Output only. The ID of the device. Assigned by the server.",
+ "readOnly": true,
+ "format": "int64",
+ "type": "string"
+ },
+ "deviceMetadata": {
+ "$ref": "DeviceMetadata",
+ "description": "The metadata attached to the device. Structured as key-value pairs. To learn more, read [Device metadata](https://developers.google.com/zero-touch/guides/metadata)."
+ },
+ "claims": {
+ "items": {
+ "$ref": "DeviceClaim"
+ },
+ "description": "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.",
+ "readOnly": true,
+ "type": "array"
+ },
+ "name": {
+ "type": "string",
+ "description": "Output only. The API resource name in the format `partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.",
+ "readOnly": true
+ },
+ "deviceIdentifier": {
+ "$ref": "DeviceIdentifier",
+ "description": "The hardware IDs that identify a manufactured device. To learn more, read [Identifiers](https://developers.google.com/zero-touch/guides/identifiers)."
+ },
+ "configuration": {
+ "type": "string",
+ "description": "Not available to resellers."
+ }
+ }
+ },
+ "CreateCustomerRequest": {
+ "description": "Request message to create a customer.",
+ "type": "object",
+ "properties": {
+ "customer": {
+ "$ref": "Company",
+ "description": "Required. The company data to populate the new customer. Must contain a value for `companyName` and at least one `owner_email` that's associated with a Google Account. The values for `companyId` and `name` must be empty."
+ }
+ },
+ "id": "CreateCustomerRequest"
+ },
+ "FindDevicesByDeviceIdentifierRequest": {
+ "type": "object",
+ "properties": {
+ "pageToken": {
+ "type": "string",
+ "description": "A token specifying which result page to return."
+ },
+ "limit": {
+ "type": "string",
+ "format": "int64",
+ "description": "Required. The maximum number of devices to show in a page of results. Must be between 1 and 100 inclusive."
+ },
+ "deviceIdentifier": {
+ "$ref": "DeviceIdentifier",
+ "description": "Required. Required. The device identifier to search for."
+ }
+ },
+ "description": "Request to find devices.",
+ "id": "FindDevicesByDeviceIdentifierRequest"
+ },
+ "PerDeviceStatusInBatch": {
+ "description": "Captures the processing status for each device in the operation.",
+ "properties": {
+ "errorIdentifier": {
+ "description": "If processing fails, the error type.",
+ "type": "string"
+ },
+ "status": {
+ "description": "The result status of the device after processing.",
+ "enum": [
+ "SINGLE_DEVICE_STATUS_UNSPECIFIED",
+ "SINGLE_DEVICE_STATUS_UNKNOWN_ERROR",
+ "SINGLE_DEVICE_STATUS_OTHER_ERROR",
+ "SINGLE_DEVICE_STATUS_SUCCESS",
+ "SINGLE_DEVICE_STATUS_PERMISSION_DENIED",
+ "SINGLE_DEVICE_STATUS_INVALID_DEVICE_IDENTIFIER",
+ "SINGLE_DEVICE_STATUS_INVALID_SECTION_TYPE",
+ "SINGLE_DEVICE_STATUS_SECTION_NOT_YOURS"
+ ],
+ "enumDescriptions": [
+ "Invalid code. Shouldn't be used.",
+ "Unknown error. We don't expect this error to occur here.",
+ "Other error. We know/expect this error, but there's no defined error code for the error.",
+ "Success.",
+ "Permission denied.",
+ "Invalid device identifier.",
+ "Invalid section type.",
+ "This section is claimed by another company."
+ ],
+ "type": "string"
+ },
+ "errorMessage": {
+ "type": "string",
+ "description": "If processing fails, a developer message explaining what went wrong."
+ },
+ "deviceId": {
+ "format": "int64",
+ "type": "string",
+ "description": "If processing succeeds, the device ID of the device."
+ }
+ },
+ "id": "PerDeviceStatusInBatch",
+ "type": "object"
+ },
+ "PartnerClaim": {
+ "id": "PartnerClaim",
+ "type": "object",
+ "description": "Identifies one claim request.",
+ "properties": {
+ "customerId": {
+ "format": "int64",
+ "type": "string",
+ "description": "Required. The ID of the customer for whom the device is being claimed."
+ },
+ "deviceIdentifier": {
+ "$ref": "DeviceIdentifier",
+ "description": "Required. Required. Device identifier of the device."
+ },
+ "sectionType": {
+ "type": "string",
+ "enumDescriptions": [
+ "Unspecified section type.",
+ "SIM-lock section type.",
+ "Zero-touch enrollment section type."
+ ],
+ "enum": [
+ "SECTION_TYPE_UNSPECIFIED",
+ "SECTION_TYPE_SIM_LOCK",
+ "SECTION_TYPE_ZERO_TOUCH"
+ ],
+ "description": "Required. The section type of the device's provisioning record."
+ },
+ "deviceMetadata": {
+ "$ref": "DeviceMetadata",
+ "description": "Required. The metadata to attach to the device at claim."
+ }
+ }
+ },
+ "ListVendorCustomersResponse": {
+ "type": "object",
+ "properties": {
+ "totalSize": {
+ "type": "integer",
+ "format": "int32",
+ "description": "The total count of items in the list irrespective of pagination."
+ },
+ "customers": {
+ "items": {
+ "$ref": "Company"
+ },
+ "description": "List of customers of the vendor.",
+ "type": "array"
+ },
+ "nextPageToken": {
+ "description": "A token to retrieve the next page of results. Omitted if no further results are available.",
+ "type": "string"
+ }
+ },
+ "description": "Response message to list customers of the vendor.",
+ "id": "ListVendorCustomersResponse"
+ },
+ "DeviceReference": {
+ "type": "object",
+ "description": "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](https://developers.google.com/zero-touch/guides/identifiers).",
+ "id": "DeviceReference",
+ "properties": {
+ "deviceIdentifier": {
+ "description": "The hardware IDs of the device.",
+ "$ref": "DeviceIdentifier"
+ },
+ "deviceId": {
+ "type": "string",
+ "description": "The ID of the device.",
+ "format": "int64"
+ }
+ }
+ },
+ "ListCustomersResponse": {
+ "id": "ListCustomersResponse",
+ "description": "Response message of all customers related to this partner.",
+ "properties": {
+ "nextPageToken": {
+ "type": "string",
+ "description": "A token to retrieve the next page of results. Omitted if no further results are available."
+ },
+ "totalSize": {
+ "description": "The total count of items in the list irrespective of pagination.",
+ "type": "integer",
+ "format": "int32"
+ },
+ "customers": {
+ "items": {
+ "$ref": "Company"
+ },
+ "description": "List of customers related to this reseller partner.",
+ "type": "array"
+ }
+ },
+ "type": "object"
+ }
+ },
+ "id": "androiddeviceprovisioning:v1",
+ "ownerName": "Google",
+ "fullyEncodeReservedExpansion": true,
+ "rootUrl": "https://androiddeviceprovisioning.googleapis.com/"
+}