| { | |
| "basePath": "", | |
| "baseUrl": "https://androiddeviceprovisioning.googleapis.com/", | |
| "batchPath": "batch", | |
| "canonicalName": "Android Provisioning Partner", | |
| "description": "Automates Android zero-touch enrollment for device resellers, customers, and EMMs.", | |
| "discoveryVersion": "v1", | |
| "documentationLink": "https://developers.google.com/zero-touch/", | |
| "fullyEncodeReservedExpansion": true, | |
| "icons": { | |
| "x16": "http://www.google.com/images/icons/product/search-16.gif", | |
| "x32": "http://www.google.com/images/icons/product/search-32.gif" | |
| }, | |
| "id": "androiddeviceprovisioning:v1", | |
| "kind": "discovery#restDescription", | |
| "name": "androiddeviceprovisioning", | |
| "ownerDomain": "google.com", | |
| "ownerName": "Google", | |
| "parameters": { | |
| "$.xgafv": { | |
| "description": "V1 error format.", | |
| "enum": [ | |
| "1", | |
| "2" | |
| ], | |
| "enumDescriptions": [ | |
| "v1 error format", | |
| "v2 error format" | |
| ], | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "access_token": { | |
| "description": "OAuth access token.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "alt": { | |
| "default": "json", | |
| "description": "Data format for response.", | |
| "enum": [ | |
| "json", | |
| "media", | |
| "proto" | |
| ], | |
| "enumDescriptions": [ | |
| "Responses with Content-Type of application/json", | |
| "Media download with context-dependent Content-Type", | |
| "Responses with Content-Type of application/x-protobuf" | |
| ], | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "callback": { | |
| "description": "JSONP", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "fields": { | |
| "description": "Selector specifying which fields to include in a partial response.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "key": { | |
| "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.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "oauth_token": { | |
| "description": "OAuth 2.0 token for the current user.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "prettyPrint": { | |
| "default": "true", | |
| "description": "Returns response with indentations and line breaks.", | |
| "location": "query", | |
| "type": "boolean" | |
| }, | |
| "quotaUser": { | |
| "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.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "uploadType": { | |
| "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "upload_protocol": { | |
| "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", | |
| "location": "query", | |
| "type": "string" | |
| } | |
| }, | |
| "protocol": "rest", | |
| "resources": { | |
| "customers": { | |
| "methods": { | |
| "list": { | |
| "description": "Lists the user's customer accounts.", | |
| "flatPath": "v1/customers", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.list", | |
| "parameterOrder": [], | |
| "parameters": { | |
| "pageSize": { | |
| "description": "The maximum number of customers to show in a page of results.\nA number between 1 and 100 (inclusive).", | |
| "format": "int32", | |
| "location": "query", | |
| "type": "integer" | |
| }, | |
| "pageToken": { | |
| "description": "A token specifying which result page to return.", | |
| "location": "query", | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/customers", | |
| "response": { | |
| "$ref": "CustomerListCustomersResponse" | |
| } | |
| } | |
| }, | |
| "resources": { | |
| "configurations": { | |
| "methods": { | |
| "create": { | |
| "description": "Creates a new configuration. Once created, a customer can apply the\nconfiguration to devices.", | |
| "flatPath": "v1/customers/{customersId}/configurations", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.customers.configurations.create", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer that manages the configuration. An API resource name\nin the format `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/configurations", | |
| "request": { | |
| "$ref": "Configuration" | |
| }, | |
| "response": { | |
| "$ref": "Configuration" | |
| } | |
| }, | |
| "delete": { | |
| "description": "Deletes an unused configuration. The API call fails if the customer has\ndevices with the configuration applied.", | |
| "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", | |
| "httpMethod": "DELETE", | |
| "id": "androiddeviceprovisioning.customers.configurations.delete", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "Required. The configuration to delete. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. If the\nconfiguration is applied to any devices, the API call fails.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+/configurations/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "response": { | |
| "$ref": "Empty" | |
| } | |
| }, | |
| "get": { | |
| "description": "Gets the details of a configuration.", | |
| "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.configurations.get", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "Required. The configuration to get. An API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+/configurations/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "response": { | |
| "$ref": "Configuration" | |
| } | |
| }, | |
| "list": { | |
| "description": "Lists a customer's configurations.", | |
| "flatPath": "v1/customers/{customersId}/configurations", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.configurations.list", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer that manages the listed configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/configurations", | |
| "response": { | |
| "$ref": "CustomerListConfigurationsResponse" | |
| } | |
| }, | |
| "patch": { | |
| "description": "Updates a configuration's field values.", | |
| "flatPath": "v1/customers/{customersId}/configurations/{configurationsId}", | |
| "httpMethod": "PATCH", | |
| "id": "androiddeviceprovisioning.customers.configurations.patch", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+/configurations/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| }, | |
| "updateMask": { | |
| "description": "Required. The field mask applied to the target `Configuration` before\nupdating the fields. To learn more about using field masks, read\n[FieldMask](/protocol-buffers/docs/reference/google.protobuf#fieldmask) in\nthe Protocol Buffers documentation.", | |
| "format": "google-fieldmask", | |
| "location": "query", | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "request": { | |
| "$ref": "Configuration" | |
| }, | |
| "response": { | |
| "$ref": "Configuration" | |
| } | |
| } | |
| } | |
| }, | |
| "devices": { | |
| "methods": { | |
| "applyConfiguration": { | |
| "description": "Applies a Configuration to the device to register the device for zero-touch\nenrollment. After applying a configuration to a device, the device\nautomatically provisions itself on first boot, or next factory reset.", | |
| "flatPath": "v1/customers/{customersId}/devices:applyConfiguration", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.customers.devices.applyConfiguration", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/devices:applyConfiguration", | |
| "request": { | |
| "$ref": "CustomerApplyConfigurationRequest" | |
| }, | |
| "response": { | |
| "$ref": "Empty" | |
| } | |
| }, | |
| "get": { | |
| "description": "Gets the details of a device.", | |
| "flatPath": "v1/customers/{customersId}/devices/{devicesId}", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.devices.get", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "Required. The device to get. An API resource name in the format\n`customers/[CUSTOMER_ID]/devices/[DEVICE_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+/devices/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "response": { | |
| "$ref": "Device" | |
| } | |
| }, | |
| "list": { | |
| "description": "Lists a customer's devices.", | |
| "flatPath": "v1/customers/{customersId}/devices", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.devices.list", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "pageSize": { | |
| "description": "The maximum number of devices to show in a page of results.\nMust be between 1 and 100 inclusive.", | |
| "format": "int64", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "pageToken": { | |
| "description": "A token specifying which result page to return.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "parent": { | |
| "description": "Required. The customer managing the devices. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/devices", | |
| "response": { | |
| "$ref": "CustomerListDevicesResponse" | |
| } | |
| }, | |
| "removeConfiguration": { | |
| "description": "Removes a configuration from device.", | |
| "flatPath": "v1/customers/{customersId}/devices:removeConfiguration", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.customers.devices.removeConfiguration", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer managing the device in the format\n`customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/devices:removeConfiguration", | |
| "request": { | |
| "$ref": "CustomerRemoveConfigurationRequest" | |
| }, | |
| "response": { | |
| "$ref": "Empty" | |
| } | |
| }, | |
| "unclaim": { | |
| "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.\n\nAfter removing a device, a customer must contact their reseller to register\nthe device into zero-touch enrollment again.", | |
| "flatPath": "v1/customers/{customersId}/devices:unclaim", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.customers.devices.unclaim", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer managing the device. An API resource name in the\nformat `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/devices:unclaim", | |
| "request": { | |
| "$ref": "CustomerUnclaimDeviceRequest" | |
| }, | |
| "response": { | |
| "$ref": "Empty" | |
| } | |
| } | |
| } | |
| }, | |
| "dpcs": { | |
| "methods": { | |
| "list": { | |
| "description": "Lists the DPCs (device policy controllers) that support zero-touch\nenrollment.", | |
| "flatPath": "v1/customers/{customersId}/dpcs", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.customers.dpcs.list", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The customer that can use the DPCs in configurations. An API\nresource name in the format `customers/[CUSTOMER_ID]`.", | |
| "location": "path", | |
| "pattern": "^customers/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/dpcs", | |
| "response": { | |
| "$ref": "CustomerListDpcsResponse" | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "operations": { | |
| "methods": { | |
| "get": { | |
| "description": "Gets the latest state of a long-running operation. Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.", | |
| "flatPath": "v1/operations/{operationsId}", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.operations.get", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "The name of the operation resource.", | |
| "location": "path", | |
| "pattern": "^operations/.+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "response": { | |
| "$ref": "Operation" | |
| } | |
| } | |
| } | |
| }, | |
| "partners": { | |
| "resources": { | |
| "customers": { | |
| "methods": { | |
| "create": { | |
| "description": "Creates a customer for zero-touch enrollment. After the method returns\nsuccessfully, admin and owner roles can manage devices and EMM configs\nby calling API methods or using their zero-touch enrollment portal.\nThe customer receives an email that welcomes them to zero-touch enrollment\nand explains how to sign into the portal.", | |
| "flatPath": "v1/partners/{partnersId}/customers", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.customers.create", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "parent": { | |
| "description": "Required. The parent resource ID in the format `partners/[PARTNER_ID]` that\nidentifies the reseller.", | |
| "location": "path", | |
| "pattern": "^partners/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/customers", | |
| "request": { | |
| "$ref": "CreateCustomerRequest" | |
| }, | |
| "response": { | |
| "$ref": "Company" | |
| } | |
| }, | |
| "list": { | |
| "description": "Lists the customers that are enrolled to the reseller identified by the\n`partnerId` argument. This list includes customers that the reseller\ncreated and customers that enrolled themselves using the portal.", | |
| "flatPath": "v1/partners/{partnersId}/customers", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.partners.customers.list", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "pageSize": { | |
| "description": "The maximum number of results to be returned. If not specified or 0, all\nthe records are returned.", | |
| "format": "int32", | |
| "location": "query", | |
| "type": "integer" | |
| }, | |
| "pageToken": { | |
| "description": "A token identifying a page of results returned by the server.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/customers", | |
| "response": { | |
| "$ref": "ListCustomersResponse" | |
| } | |
| } | |
| } | |
| }, | |
| "devices": { | |
| "methods": { | |
| "claim": { | |
| "description": "Claims a device for a customer and adds it to zero-touch enrollment. If the\ndevice is already claimed by another customer, the call returns an error.", | |
| "flatPath": "v1/partners/{partnersId}/devices:claim", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.claim", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:claim", | |
| "request": { | |
| "$ref": "ClaimDeviceRequest" | |
| }, | |
| "response": { | |
| "$ref": "ClaimDeviceResponse" | |
| } | |
| }, | |
| "claimAsync": { | |
| "description": "Claims a batch of devices for a customer asynchronously. Adds the devices\nto zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", | |
| "flatPath": "v1/partners/{partnersId}/devices:claimAsync", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.claimAsync", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:claimAsync", | |
| "request": { | |
| "$ref": "ClaimDevicesRequest" | |
| }, | |
| "response": { | |
| "$ref": "Operation" | |
| } | |
| }, | |
| "findByIdentifier": { | |
| "description": "Finds devices by hardware identifiers, such as IMEI.", | |
| "flatPath": "v1/partners/{partnersId}/devices:findByIdentifier", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.findByIdentifier", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:findByIdentifier", | |
| "request": { | |
| "$ref": "FindDevicesByDeviceIdentifierRequest" | |
| }, | |
| "response": { | |
| "$ref": "FindDevicesByDeviceIdentifierResponse" | |
| } | |
| }, | |
| "findByOwner": { | |
| "description": "Finds devices claimed for customers. The results only contain devices\nregistered to the reseller that's identified by the `partnerId` argument.\nThe customer's devices purchased from other resellers don't appear in the\nresults.", | |
| "flatPath": "v1/partners/{partnersId}/devices:findByOwner", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.findByOwner", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:findByOwner", | |
| "request": { | |
| "$ref": "FindDevicesByOwnerRequest" | |
| }, | |
| "response": { | |
| "$ref": "FindDevicesByOwnerResponse" | |
| } | |
| }, | |
| "get": { | |
| "description": "Gets a device.", | |
| "flatPath": "v1/partners/{partnersId}/devices/{devicesId}", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.partners.devices.get", | |
| "parameterOrder": [ | |
| "name" | |
| ], | |
| "parameters": { | |
| "name": { | |
| "description": "Required. The device API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", | |
| "location": "path", | |
| "pattern": "^partners/[^/]+/devices/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+name}", | |
| "response": { | |
| "$ref": "Device" | |
| } | |
| }, | |
| "metadata": { | |
| "description": "Updates reseller metadata associated with the device.", | |
| "flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.metadata", | |
| "parameterOrder": [ | |
| "metadataOwnerId", | |
| "deviceId" | |
| ], | |
| "parameters": { | |
| "deviceId": { | |
| "description": "Required. The ID of the device.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| }, | |
| "metadataOwnerId": { | |
| "description": "Required. The owner of the newly set metadata. Set this to the partner ID.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata", | |
| "request": { | |
| "$ref": "UpdateDeviceMetadataRequest" | |
| }, | |
| "response": { | |
| "$ref": "DeviceMetadata" | |
| } | |
| }, | |
| "unclaim": { | |
| "description": "Unclaims a device from a customer and removes it from zero-touch\nenrollment.", | |
| "flatPath": "v1/partners/{partnersId}/devices:unclaim", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.unclaim", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The ID of the reseller partner.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:unclaim", | |
| "request": { | |
| "$ref": "UnclaimDeviceRequest" | |
| }, | |
| "response": { | |
| "$ref": "Empty" | |
| } | |
| }, | |
| "unclaimAsync": { | |
| "description": "Unclaims a batch of devices for a customer asynchronously. Removes the\ndevices from zero-touch enrollment. To learn more, read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", | |
| "flatPath": "v1/partners/{partnersId}/devices:unclaimAsync", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.unclaimAsync", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The reseller partner ID.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:unclaimAsync", | |
| "request": { | |
| "$ref": "UnclaimDevicesRequest" | |
| }, | |
| "response": { | |
| "$ref": "Operation" | |
| } | |
| }, | |
| "updateMetadataAsync": { | |
| "description": "Updates the reseller metadata attached to a batch of devices. This method\nupdates devices asynchronously and returns an `Operation` that can be used\nto track progress. Read [Long‑running batch\noperations](/zero-touch/guides/how-it-works#operations).", | |
| "flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync", | |
| "httpMethod": "POST", | |
| "id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync", | |
| "parameterOrder": [ | |
| "partnerId" | |
| ], | |
| "parameters": { | |
| "partnerId": { | |
| "description": "Required. The reseller partner ID.", | |
| "format": "int64", | |
| "location": "path", | |
| "pattern": "^[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/partners/{+partnerId}/devices:updateMetadataAsync", | |
| "request": { | |
| "$ref": "UpdateDeviceMetadataInBatchRequest" | |
| }, | |
| "response": { | |
| "$ref": "Operation" | |
| } | |
| } | |
| } | |
| }, | |
| "vendors": { | |
| "methods": { | |
| "list": { | |
| "description": "Lists the vendors of the partner.", | |
| "flatPath": "v1/partners/{partnersId}/vendors", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.partners.vendors.list", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "pageSize": { | |
| "description": "The maximum number of results to be returned.", | |
| "format": "int32", | |
| "location": "query", | |
| "type": "integer" | |
| }, | |
| "pageToken": { | |
| "description": "A token identifying a page of results returned by the server.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "parent": { | |
| "description": "Required. The resource name in the format `partners/[PARTNER_ID]`.", | |
| "location": "path", | |
| "pattern": "^partners/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/vendors", | |
| "response": { | |
| "$ref": "ListVendorsResponse" | |
| } | |
| } | |
| }, | |
| "resources": { | |
| "customers": { | |
| "methods": { | |
| "list": { | |
| "description": "Lists the customers of the vendor.", | |
| "flatPath": "v1/partners/{partnersId}/vendors/{vendorsId}/customers", | |
| "httpMethod": "GET", | |
| "id": "androiddeviceprovisioning.partners.vendors.customers.list", | |
| "parameterOrder": [ | |
| "parent" | |
| ], | |
| "parameters": { | |
| "pageSize": { | |
| "description": "The maximum number of results to be returned.", | |
| "format": "int32", | |
| "location": "query", | |
| "type": "integer" | |
| }, | |
| "pageToken": { | |
| "description": "A token identifying a page of results returned by the server.", | |
| "location": "query", | |
| "type": "string" | |
| }, | |
| "parent": { | |
| "description": "Required. The resource name in the format\n`partners/[PARTNER_ID]/vendors/[VENDOR_ID]`.", | |
| "location": "path", | |
| "pattern": "^partners/[^/]+/vendors/[^/]+$", | |
| "required": true, | |
| "type": "string" | |
| } | |
| }, | |
| "path": "v1/{+parent}/customers", | |
| "response": { | |
| "$ref": "ListVendorCustomersResponse" | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |
| }, | |
| "revision": "20190704", | |
| "rootUrl": "https://androiddeviceprovisioning.googleapis.com/", | |
| "schemas": { | |
| "ClaimDeviceRequest": { | |
| "description": "Request message to claim a device on behalf of a customer.", | |
| "id": "ClaimDeviceRequest", | |
| "properties": { | |
| "customerId": { | |
| "description": "Required. The ID of the customer for whom the device is being claimed.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "Required. The device identifier of the device to claim." | |
| }, | |
| "deviceMetadata": { | |
| "$ref": "DeviceMetadata", | |
| "description": "Optional. The metadata to attach to the device." | |
| }, | |
| "sectionType": { | |
| "description": "Required. The section type of the device's provisioning record.", | |
| "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." | |
| ], | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "ClaimDeviceResponse": { | |
| "description": "Response message containing device id of the claim.", | |
| "id": "ClaimDeviceResponse", | |
| "properties": { | |
| "deviceId": { | |
| "description": "The device ID of the claimed device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceName": { | |
| "description": "The resource name of the device in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "ClaimDevicesRequest": { | |
| "description": "Request to claim devices asynchronously in batch. Claiming a device adds the\ndevice to zero-touch enrollment and shows the device in the customer's view\nof the portal.", | |
| "id": "ClaimDevicesRequest", | |
| "properties": { | |
| "claims": { | |
| "description": "Required. A list of device claims.", | |
| "items": { | |
| "$ref": "PartnerClaim" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Company": { | |
| "description": "A reseller, vendor, or customer in the zero-touch reseller and customer APIs.", | |
| "id": "Company", | |
| "properties": { | |
| "adminEmails": { | |
| "description": "Optional. Input only. Email address of customer's users in the admin role.\nEach email address must be associated with a Google Account.", | |
| "items": { | |
| "type": "string" | |
| }, | |
| "type": "array" | |
| }, | |
| "companyId": { | |
| "description": "Output only. The ID of the company. Assigned by the server.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "companyName": { | |
| "description": "Required. The name of the company. For example _XYZ Corp_. Displayed to the\ncompany's employees in the zero-touch enrollment portal.", | |
| "type": "string" | |
| }, | |
| "name": { | |
| "description": "Output only. The API resource name of the company. The resource name is one\nof the following formats:\n\n* `partners/[PARTNER_ID]/customers/[CUSTOMER_ID]`\n* `partners/[PARTNER_ID]/vendors/[VENDOR_ID]`\n* `partners/[PARTNER_ID]/vendors/[VENDOR_ID]/customers/[CUSTOMER_ID]`\n\nAssigned by the server.", | |
| "type": "string" | |
| }, | |
| "ownerEmails": { | |
| "description": "Input only. Email address of customer's users in the owner role. At least\none `owner_email` is required. Each email address must be associated with a\nGoogle Account. Owners share the same access as admins but can also add,\ndelete, and edit your organization's portal users.", | |
| "items": { | |
| "type": "string" | |
| }, | |
| "type": "array" | |
| }, | |
| "termsStatus": { | |
| "description": "Output only. Whether any user from the company has accepted the latest\nTerms of Service (ToS). See\nTermsStatus.", | |
| "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\nuser accepted a previous ToS." | |
| ], | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Configuration": { | |
| "description": "A configuration collects the provisioning options for Android devices. Each\nconfiguration combines the following:\n\n* The EMM device policy controller (DPC) installed on the devices.\n* EMM policies enforced on the devices.\n* Metadata displayed on the device to help users during setup.\n\nCustomers can add as many configurations as they need. However, zero-touch\nenrollment works best when a customer sets a default configuration that's\napplied to any new devices the organization purchases.", | |
| "id": "Configuration", | |
| "properties": { | |
| "companyName": { | |
| "description": "Required. The name of the organization. Zero-touch enrollment shows this\norganization name to device users during device provisioning.", | |
| "type": "string" | |
| }, | |
| "configurationId": { | |
| "description": "Output only. The ID of the configuration. Assigned by the server.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "configurationName": { | |
| "description": "Required. A short name that describes the configuration's purpose. For\nexample, _Sales team_ or _Temporary employees_. The zero-touch enrollment\nportal displays this name to IT admins.", | |
| "type": "string" | |
| }, | |
| "contactEmail": { | |
| "description": "Required. The email address that device users can contact to get help.\nZero-touch enrollment shows this email address to device users before\ndevice provisioning. The value is validated on input.", | |
| "type": "string" | |
| }, | |
| "contactPhone": { | |
| "description": "Required. The telephone number that device users can call, using another\ndevice, to get help. Zero-touch enrollment shows this number to device\nusers before device provisioning. Accepts numerals, spaces, the plus sign,\nhyphens, and parentheses.", | |
| "type": "string" | |
| }, | |
| "customMessage": { | |
| "description": "A message, containing one or two sentences, to help device users get help\nor give them more details about what’s happening to their device.\nZero-touch enrollment shows this message before the device is provisioned.", | |
| "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)\nin the format `customers/[CUSTOMER_ID]/dpcs/*`. To list the supported DPCs,\ncall\n`customers.dpcs.list`.", | |
| "type": "string" | |
| }, | |
| "isDefault": { | |
| "description": "Required. Whether this is the default configuration that zero-touch\nenrollment applies to any new devices the organization purchases in the\nfuture. Only one customer configuration can be the default. Setting this\nvalue to `true`, changes the previous default configuration's `isDefault`\nvalue to `false`.", | |
| "type": "boolean" | |
| }, | |
| "name": { | |
| "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`. Assigned by\nthe server.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CreateCustomerRequest": { | |
| "description": "Request message to create a customer.", | |
| "id": "CreateCustomerRequest", | |
| "properties": { | |
| "customer": { | |
| "$ref": "Company", | |
| "description": "Required. The company data to populate the new customer. Must contain a\nvalue for `companyName` and at least one `owner_email` that's associated\nwith a Google Account. The values for `companyId` and `name` must be empty." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerApplyConfigurationRequest": { | |
| "description": "Request message for customer to assign a configuration to device.", | |
| "id": "CustomerApplyConfigurationRequest", | |
| "properties": { | |
| "configuration": { | |
| "description": "Required. The configuration applied to the device in the format\n`customers/[CUSTOMER_ID]/configurations/[CONFIGURATION_ID]`.", | |
| "type": "string" | |
| }, | |
| "device": { | |
| "$ref": "DeviceReference", | |
| "description": "Required. The device the configuration is applied to." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerListConfigurationsResponse": { | |
| "description": "Response message of customer's listing configuration.", | |
| "id": "CustomerListConfigurationsResponse", | |
| "properties": { | |
| "configurations": { | |
| "description": "The configurations.", | |
| "items": { | |
| "$ref": "Configuration" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerListCustomersResponse": { | |
| "description": "Response message for listing my customers.", | |
| "id": "CustomerListCustomersResponse", | |
| "properties": { | |
| "customers": { | |
| "description": "The customer accounts the calling user is a member of.", | |
| "items": { | |
| "$ref": "Company" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerListDevicesResponse": { | |
| "description": "Response message of customer's liting devices.", | |
| "id": "CustomerListDevicesResponse", | |
| "properties": { | |
| "devices": { | |
| "description": "The customer's devices.", | |
| "items": { | |
| "$ref": "Device" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerListDpcsResponse": { | |
| "description": "Response message of customer's listing DPCs.", | |
| "id": "CustomerListDpcsResponse", | |
| "properties": { | |
| "dpcs": { | |
| "description": "The list of DPCs available to the customer that support zero-touch\nenrollment.", | |
| "items": { | |
| "$ref": "Dpc" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerRemoveConfigurationRequest": { | |
| "description": "Request message for customer to remove the configuration from device.", | |
| "id": "CustomerRemoveConfigurationRequest", | |
| "properties": { | |
| "device": { | |
| "$ref": "DeviceReference", | |
| "description": "Required. The device to remove the configuration from." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "CustomerUnclaimDeviceRequest": { | |
| "description": "Request message for customer to unclaim a device.", | |
| "id": "CustomerUnclaimDeviceRequest", | |
| "properties": { | |
| "device": { | |
| "$ref": "DeviceReference", | |
| "description": "Required. The device to unclaim." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Device": { | |
| "description": "An Android device registered for zero-touch enrollment.", | |
| "id": "Device", | |
| "properties": { | |
| "claims": { | |
| "description": "Output only. The provisioning claims for a device. Devices claimed for\nzero-touch enrollment have a claim with the type `SECTION_TYPE_ZERO_TOUCH`.\nCall\n`partners.devices.unclaim`\nor\n`partners.devices.unclaimAsync`\nto remove the device from zero-touch enrollment.", | |
| "items": { | |
| "$ref": "DeviceClaim" | |
| }, | |
| "type": "array" | |
| }, | |
| "configuration": { | |
| "description": "Not available to resellers.", | |
| "type": "string" | |
| }, | |
| "deviceId": { | |
| "description": "Output only. The ID of the device. Assigned by the server.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "The hardware IDs that identify a manufactured device. To learn more, read\n[Identifiers](/zero-touch/guides/identifiers)." | |
| }, | |
| "deviceMetadata": { | |
| "$ref": "DeviceMetadata", | |
| "description": "The metadata attached to the device. Structured as key-value pairs. To\nlearn more, read [Device metadata](/zero-touch/guides/metadata)." | |
| }, | |
| "name": { | |
| "description": "Output only. The API resource name in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`. Assigned by the server.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DeviceClaim": { | |
| "description": "A record of a device claimed by a reseller for a customer. Devices claimed\nfor zero-touch enrollment have a claim with the type\n`SECTION_TYPE_ZERO_TOUCH`. To learn more, read\n[Claim devices for customers](/zero-touch/guides/how-it-works#claim).", | |
| "id": "DeviceClaim", | |
| "properties": { | |
| "ownerCompanyId": { | |
| "description": "The ID of the Customer that purchased the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "resellerId": { | |
| "description": "The ID of the reseller that claimed the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "sectionType": { | |
| "description": "Output only. The type of claim made on the device.", | |
| "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." | |
| ], | |
| "type": "string" | |
| }, | |
| "vacationModeExpireTime": { | |
| "description": "The timestamp when the device will exit ‘vacation mode’. This value is\npresent iff the device is in 'vacation mode'.", | |
| "format": "google-datetime", | |
| "type": "string" | |
| }, | |
| "vacationModeStartTime": { | |
| "description": "The timestamp when the device was put into ‘vacation mode’. This value is\npresent iff the device is in 'vacation mode'.", | |
| "format": "google-datetime", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DeviceIdentifier": { | |
| "description": "Encapsulates hardware and product IDs to identify a manufactured device.\nTo understand requirements on identifier sets, read\n[Identifiers](/zero-touch/guides/identifiers).", | |
| "id": "DeviceIdentifier", | |
| "properties": { | |
| "imei": { | |
| "description": "The device’s IMEI number. Validated on input.", | |
| "type": "string" | |
| }, | |
| "manufacturer": { | |
| "description": "The device manufacturer’s name. Matches the device's built-in\nvalue returned from `android.os.Build.MANUFACTURER`. Allowed values are\nlisted in\n[manufacturers](/zero-touch/resources/manufacturer-names#manufacturers-names).", | |
| "type": "string" | |
| }, | |
| "meid": { | |
| "description": "The device’s MEID number.", | |
| "type": "string" | |
| }, | |
| "model": { | |
| "description": "The device model's name. Matches the device's built-in value returned from\n`android.os.Build.MODEL`. Allowed values are listed in\n[models](/zero-touch/resources/manufacturer-names#model-names).", | |
| "type": "string" | |
| }, | |
| "serialNumber": { | |
| "description": "The manufacturer's serial number for the device. This value might not be\nunique across different device models.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DeviceMetadata": { | |
| "description": "Metadata entries that can be attached to a `Device`. To learn more, read\n[Device metadata](/zero-touch/guides/metadata).", | |
| "id": "DeviceMetadata", | |
| "properties": { | |
| "entries": { | |
| "additionalProperties": { | |
| "type": "string" | |
| }, | |
| "description": "Metadata entries recorded as key-value pairs.", | |
| "type": "object" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DeviceReference": { | |
| "description": "A `DeviceReference` is an API abstraction that lets you supply a _device_\nargument to a method using one of the following identifier types:\n\n* A numeric API resource ID.\n* Real-world hardware IDs, such as IMEI number, belonging to the manufactured\n device.\n\nMethods that operate on devices take a `DeviceReference` as a parameter type\nbecause it's more flexible for the caller. To learn more about device\nidentifiers, read [Identifiers](/zero-touch/guides/identifiers).", | |
| "id": "DeviceReference", | |
| "properties": { | |
| "deviceId": { | |
| "description": "The ID of the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "The hardware IDs of the device." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DevicesLongRunningOperationMetadata": { | |
| "description": "Tracks the status of a long-running operation to asynchronously update a\nbatch of reseller metadata attached to devices. To learn more, read\n[Long‑running batch operations](/zero-touch/guides/how-it-works#operations).", | |
| "id": "DevicesLongRunningOperationMetadata", | |
| "properties": { | |
| "devicesCount": { | |
| "description": "The number of metadata updates in the operation. This might be different\nfrom the number of updates in the request if the API can't parse some of\nthe updates.", | |
| "format": "int32", | |
| "type": "integer" | |
| }, | |
| "processingStatus": { | |
| "description": "The processing status of the operation.", | |
| "enum": [ | |
| "BATCH_PROCESS_STATUS_UNSPECIFIED", | |
| "BATCH_PROCESS_PENDING", | |
| "BATCH_PROCESS_IN_PROGRESS", | |
| "BATCH_PROCESS_PROCESSED" | |
| ], | |
| "enumDescriptions": [ | |
| "Invalid code. Shouldn't be used.", | |
| "Pending.", | |
| "In progress.", | |
| "Processed.\nThis doesn't mean all items were processed successfully, you should\ncheck the `response` field for the result of every item." | |
| ], | |
| "type": "string" | |
| }, | |
| "progress": { | |
| "description": "The processing progress of the operation. Measured as a number from 0 to\n100. A value of 10O doesnt always mean the operation completed—check for\nthe inclusion of a `done` field.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "DevicesLongRunningOperationResponse": { | |
| "description": "Tracks the status of a long-running operation to claim, unclaim, or attach\nmetadata to devices. To learn more, read\n[Long‑running batch operations](/zero-touch/guides/how-it-works#operations).", | |
| "id": "DevicesLongRunningOperationResponse", | |
| "properties": { | |
| "perDeviceStatus": { | |
| "description": "The processing status for each device in the operation.\nOne `PerDeviceStatus` per device. The list order matches the items in the\noriginal request.", | |
| "items": { | |
| "$ref": "OperationPerDevice" | |
| }, | |
| "type": "array" | |
| }, | |
| "successCount": { | |
| "description": "A summary of how many items in the operation the server processed\nsuccessfully. Updated as the operation progresses.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Dpc": { | |
| "description": "An EMM's DPC ([device policy\ncontroller](http://developer.android.com/work/dpc/build-dpc.html)).\nZero-touch enrollment installs a DPC (listed in the `Configuration`) on a\ndevice to maintain the customer's mobile policies. All the DPCs listed by the\nAPI support zero-touch enrollment and are available in Google Play.", | |
| "id": "Dpc", | |
| "properties": { | |
| "dpcName": { | |
| "description": "Output only. The title of the DPC app in Google Play. For example, _Google\nApps Device Policy_. Useful in an application's user interface.", | |
| "type": "string" | |
| }, | |
| "name": { | |
| "description": "Output only. The API resource name in the format\n`customers/[CUSTOMER_ID]/dpcs/[DPC_ID]`. Assigned by\nthe server. To maintain a reference to a DPC across customer accounts,\npersist and match the last path component (`DPC_ID`).", | |
| "type": "string" | |
| }, | |
| "packageName": { | |
| "description": "Output only. The DPC's Android application ID that looks like a Java\npackage name. Zero-touch enrollment installs the DPC app onto a device\nusing this identifier.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Empty": { | |
| "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.", | |
| "id": "Empty", | |
| "properties": {}, | |
| "type": "object" | |
| }, | |
| "FindDevicesByDeviceIdentifierRequest": { | |
| "description": "Request to find devices.", | |
| "id": "FindDevicesByDeviceIdentifierRequest", | |
| "properties": { | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "Required. The device identifier to search for." | |
| }, | |
| "limit": { | |
| "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "pageToken": { | |
| "description": "A token specifying which result page to return.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "FindDevicesByDeviceIdentifierResponse": { | |
| "description": "Response containing found devices.", | |
| "id": "FindDevicesByDeviceIdentifierResponse", | |
| "properties": { | |
| "devices": { | |
| "description": "Found devices.", | |
| "items": { | |
| "$ref": "Device" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token used to access the next page of results. Omitted if no further\nresults are available.", | |
| "type": "string" | |
| }, | |
| "totalSize": { | |
| "description": "The total count of items in the list irrespective of pagination.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "FindDevicesByOwnerRequest": { | |
| "description": "Request to find devices by customers.", | |
| "id": "FindDevicesByOwnerRequest", | |
| "properties": { | |
| "customerId": { | |
| "description": "Required. The list of customer IDs to search for.", | |
| "items": { | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "type": "array" | |
| }, | |
| "limit": { | |
| "description": "Required. The maximum number of devices to show in a page of results. Must\nbe between 1 and 100 inclusive.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "pageToken": { | |
| "description": "A token specifying which result page to return.", | |
| "type": "string" | |
| }, | |
| "sectionType": { | |
| "description": "Required. The section type of the device's provisioning record.", | |
| "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." | |
| ], | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "FindDevicesByOwnerResponse": { | |
| "description": "Response containing found devices.", | |
| "id": "FindDevicesByOwnerResponse", | |
| "properties": { | |
| "devices": { | |
| "description": "The customer's devices.", | |
| "items": { | |
| "$ref": "Device" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token used to access the next page of results.\nOmitted if no further results are available.", | |
| "type": "string" | |
| }, | |
| "totalSize": { | |
| "description": "The total count of items in the list irrespective of pagination.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "ListCustomersResponse": { | |
| "description": "Response message of all customers related to this partner.", | |
| "id": "ListCustomersResponse", | |
| "properties": { | |
| "customers": { | |
| "description": "List of customers related to this reseller partner.", | |
| "items": { | |
| "$ref": "Company" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token to retrieve the next page of results. Omitted if no further results\nare available.", | |
| "type": "string" | |
| }, | |
| "totalSize": { | |
| "description": "The total count of items in the list irrespective of pagination.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "ListVendorCustomersResponse": { | |
| "description": "Response message to list customers of the vendor.", | |
| "id": "ListVendorCustomersResponse", | |
| "properties": { | |
| "customers": { | |
| "description": "List of customers of the vendor.", | |
| "items": { | |
| "$ref": "Company" | |
| }, | |
| "type": "array" | |
| }, | |
| "nextPageToken": { | |
| "description": "A token to retrieve the next page of results. Omitted if no further results\nare available.", | |
| "type": "string" | |
| }, | |
| "totalSize": { | |
| "description": "The total count of items in the list irrespective of pagination.", | |
| "format": "int32", | |
| "type": "integer" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "ListVendorsResponse": { | |
| "description": "Response message to list vendors of the partner.", | |
| "id": "ListVendorsResponse", | |
| "properties": { | |
| "nextPageToken": { | |
| "description": "A token to retrieve the next page of results. Omitted if no further results\nare available.", | |
| "type": "string" | |
| }, | |
| "totalSize": { | |
| "description": "The total count of items in the list irrespective of pagination.", | |
| "format": "int32", | |
| "type": "integer" | |
| }, | |
| "vendors": { | |
| "description": "List of vendors of the reseller partner. Fields `name`, `companyId` and\n`companyName` are populated to the Company object.", | |
| "items": { | |
| "$ref": "Company" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Operation": { | |
| "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.", | |
| "id": "Operation", | |
| "properties": { | |
| "done": { | |
| "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.", | |
| "type": "boolean" | |
| }, | |
| "error": { | |
| "$ref": "Status", | |
| "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`." | |
| }, | |
| "metadata": { | |
| "additionalProperties": { | |
| "description": "Properties of the object. Contains field @type with type URL.", | |
| "type": "any" | |
| }, | |
| "description": "This field will contain a `DevicesLongRunningOperationMetadata` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", | |
| "type": "object" | |
| }, | |
| "name": { | |
| "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.", | |
| "type": "string" | |
| }, | |
| "response": { | |
| "additionalProperties": { | |
| "description": "Properties of the object. Contains field @type with type URL.", | |
| "type": "any" | |
| }, | |
| "description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.", | |
| "type": "object" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "OperationPerDevice": { | |
| "description": "A task for each device in the operation. Corresponds to each device\nchange in the request.", | |
| "id": "OperationPerDevice", | |
| "properties": { | |
| "claim": { | |
| "$ref": "PartnerClaim", | |
| "description": "A copy of the original device-claim request received by the server." | |
| }, | |
| "result": { | |
| "$ref": "PerDeviceStatusInBatch", | |
| "description": "The processing result for each device." | |
| }, | |
| "unclaim": { | |
| "$ref": "PartnerUnclaim", | |
| "description": "A copy of the original device-unclaim request received by the server." | |
| }, | |
| "updateMetadata": { | |
| "$ref": "UpdateMetadataArguments", | |
| "description": "A copy of the original metadata-update request received by the server." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "PartnerClaim": { | |
| "description": "Identifies one claim request.", | |
| "id": "PartnerClaim", | |
| "properties": { | |
| "customerId": { | |
| "description": "Required. The ID of the customer for whom the device is being claimed.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "Required. Device identifier of the device." | |
| }, | |
| "deviceMetadata": { | |
| "$ref": "DeviceMetadata", | |
| "description": "Required. The metadata to attach to the device at claim." | |
| }, | |
| "sectionType": { | |
| "description": "Required. The section type of the device's provisioning record.", | |
| "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." | |
| ], | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "PartnerUnclaim": { | |
| "description": "Identifies one unclaim request.", | |
| "id": "PartnerUnclaim", | |
| "properties": { | |
| "deviceId": { | |
| "description": "Device ID of the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "Device identifier of the device." | |
| }, | |
| "sectionType": { | |
| "description": "Required. The section type of the device's provisioning record.", | |
| "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." | |
| ], | |
| "type": "string" | |
| }, | |
| "vacationModeDays": { | |
| "description": "The duration of the vacation unlock starting from when the request is\nprocessed. (1 day is treated as 24 hours)", | |
| "format": "int32", | |
| "type": "integer" | |
| }, | |
| "vacationModeExpireTime": { | |
| "description": "The expiration time of the vacation unlock.", | |
| "format": "google-datetime", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "PerDeviceStatusInBatch": { | |
| "description": "Captures the processing status for each device in the operation.", | |
| "id": "PerDeviceStatusInBatch", | |
| "properties": { | |
| "deviceId": { | |
| "description": "If processing succeeds, the device ID of the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "errorIdentifier": { | |
| "description": "If processing fails, the error type.", | |
| "type": "string" | |
| }, | |
| "errorMessage": { | |
| "description": "If processing fails, a developer message explaining what went wrong.", | |
| "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.\nWe don't expect this error to occur here.", | |
| "Other error.\nWe know/expect this error, but there's no defined error code for the\nerror.", | |
| "Success.", | |
| "Permission denied.", | |
| "Invalid device identifier.", | |
| "Invalid section type.", | |
| "This section is claimed by another company." | |
| ], | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "Status": { | |
| "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).", | |
| "id": "Status", | |
| "properties": { | |
| "code": { | |
| "description": "The status code, which should be an enum value of google.rpc.Code.", | |
| "format": "int32", | |
| "type": "integer" | |
| }, | |
| "details": { | |
| "description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.", | |
| "items": { | |
| "additionalProperties": { | |
| "description": "Properties of the object. Contains field @type with type URL.", | |
| "type": "any" | |
| }, | |
| "type": "object" | |
| }, | |
| "type": "array" | |
| }, | |
| "message": { | |
| "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "UnclaimDeviceRequest": { | |
| "description": "Request message to unclaim a device.", | |
| "id": "UnclaimDeviceRequest", | |
| "properties": { | |
| "deviceId": { | |
| "description": "The device ID returned by `ClaimDevice`.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "The device identifier you used when you claimed this device." | |
| }, | |
| "sectionType": { | |
| "description": "Required. The section type of the device's provisioning record.", | |
| "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." | |
| ], | |
| "type": "string" | |
| }, | |
| "vacationModeDays": { | |
| "description": "The duration of the vacation unlock starting from when the request is\nprocessed. (1 day is treated as 24 hours)", | |
| "format": "int32", | |
| "type": "integer" | |
| }, | |
| "vacationModeExpireTime": { | |
| "description": "The expiration time of the vacation unlock.", | |
| "format": "google-datetime", | |
| "type": "string" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "UnclaimDevicesRequest": { | |
| "description": "Request to unclaim devices asynchronously in batch.", | |
| "id": "UnclaimDevicesRequest", | |
| "properties": { | |
| "unclaims": { | |
| "description": "Required. The list of devices to unclaim.", | |
| "items": { | |
| "$ref": "PartnerUnclaim" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "UpdateDeviceMetadataInBatchRequest": { | |
| "description": "Request to update device metadata in batch.", | |
| "id": "UpdateDeviceMetadataInBatchRequest", | |
| "properties": { | |
| "updates": { | |
| "description": "Required. The list of metadata updates.", | |
| "items": { | |
| "$ref": "UpdateMetadataArguments" | |
| }, | |
| "type": "array" | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "UpdateDeviceMetadataRequest": { | |
| "description": "Request to set metadata for a device.", | |
| "id": "UpdateDeviceMetadataRequest", | |
| "properties": { | |
| "deviceMetadata": { | |
| "$ref": "DeviceMetadata", | |
| "description": "Required. The metdata to attach to the device." | |
| } | |
| }, | |
| "type": "object" | |
| }, | |
| "UpdateMetadataArguments": { | |
| "description": "Identifies metdata updates to one device.", | |
| "id": "UpdateMetadataArguments", | |
| "properties": { | |
| "deviceId": { | |
| "description": "Device ID of the device.", | |
| "format": "int64", | |
| "type": "string" | |
| }, | |
| "deviceIdentifier": { | |
| "$ref": "DeviceIdentifier", | |
| "description": "Device identifier." | |
| }, | |
| "deviceMetadata": { | |
| "$ref": "DeviceMetadata", | |
| "description": "Required. The metadata to update." | |
| } | |
| }, | |
| "type": "object" | |
| } | |
| }, | |
| "servicePath": "", | |
| "title": "Android Device Provisioning Partner API", | |
| "version": "v1", | |
| "version_module": true | |
| } |