forked from TrueCloudLab/restic
1081 lines
39 KiB
JSON
1081 lines
39 KiB
JSON
{
|
|
"canonicalName": "Android Provisioning Partner",
|
|
"kind": "discovery#restDescription",
|
|
"description": "Automates reseller integration into zero-touch enrollment by assigning devices to customers and creating device reports.",
|
|
"servicePath": "",
|
|
"rootUrl": "https://androiddeviceprovisioning.googleapis.com/",
|
|
"basePath": "",
|
|
"ownerDomain": "google.com",
|
|
"name": "androiddeviceprovisioning",
|
|
"batchPath": "batch",
|
|
"id": "androiddeviceprovisioning:v1",
|
|
"documentationLink": "https://developers.google.com/zero-touch/",
|
|
"revision": "20170920",
|
|
"title": "Android Device Provisioning Partner API",
|
|
"ownerName": "Google",
|
|
"discoveryVersion": "v1",
|
|
"version_module": true,
|
|
"resources": {
|
|
"partners": {
|
|
"resources": {
|
|
"devices": {
|
|
"methods": {
|
|
"updateMetadataAsync": {
|
|
"request": {
|
|
"$ref": "UpdateDeviceMetadataInBatchRequest"
|
|
},
|
|
"description": "Set metadata in batch asynchronously.",
|
|
"response": {
|
|
"$ref": "Operation"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"location": "path",
|
|
"description": "Partner ID.",
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"type": "string",
|
|
"required": true
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:updateMetadataAsync",
|
|
"path": "v1/partners/{+partnerId}/devices:updateMetadataAsync",
|
|
"id": "androiddeviceprovisioning.partners.devices.updateMetadataAsync"
|
|
},
|
|
"get": {
|
|
"id": "androiddeviceprovisioning.partners.devices.get",
|
|
"path": "v1/{+name}",
|
|
"description": "Get a device.",
|
|
"httpMethod": "GET",
|
|
"parameterOrder": [
|
|
"name"
|
|
],
|
|
"response": {
|
|
"$ref": "Device"
|
|
},
|
|
"parameters": {
|
|
"name": {
|
|
"description": "Resource name in `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.",
|
|
"required": true,
|
|
"type": "string",
|
|
"pattern": "^partners/[^/]+/devices/[^/]+$",
|
|
"location": "path"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices/{devicesId}"
|
|
},
|
|
"unclaim": {
|
|
"flatPath": "v1/partners/{partnersId}/devices:unclaim",
|
|
"path": "v1/partners/{+partnerId}/devices:unclaim",
|
|
"id": "androiddeviceprovisioning.partners.devices.unclaim",
|
|
"request": {
|
|
"$ref": "UnclaimDeviceRequest"
|
|
},
|
|
"description": "Unclaim the device identified by the `device_id` or the `deviceIdentifier`.",
|
|
"response": {
|
|
"$ref": "Empty"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string",
|
|
"location": "path",
|
|
"description": "ID of the partner.",
|
|
"pattern": "^[^/]+$"
|
|
}
|
|
}
|
|
},
|
|
"findByOwner": {
|
|
"description": "Find devices by ownership.",
|
|
"request": {
|
|
"$ref": "FindDevicesByOwnerRequest"
|
|
},
|
|
"response": {
|
|
"$ref": "FindDevicesByOwnerResponse"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"location": "path",
|
|
"description": "ID of the partner.",
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:findByOwner",
|
|
"path": "v1/partners/{+partnerId}/devices:findByOwner",
|
|
"id": "androiddeviceprovisioning.partners.devices.findByOwner"
|
|
},
|
|
"claim": {
|
|
"response": {
|
|
"$ref": "ClaimDeviceResponse"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"format": "int64",
|
|
"type": "string",
|
|
"required": true,
|
|
"location": "path",
|
|
"description": "ID of the partner.",
|
|
"pattern": "^[^/]+$"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:claim",
|
|
"path": "v1/partners/{+partnerId}/devices:claim",
|
|
"id": "androiddeviceprovisioning.partners.devices.claim",
|
|
"request": {
|
|
"$ref": "ClaimDeviceRequest"
|
|
},
|
|
"description": "Claim the device identified by device identifier."
|
|
},
|
|
"claimAsync": {
|
|
"request": {
|
|
"$ref": "ClaimDevicesRequest"
|
|
},
|
|
"description": "Claim devices asynchronously.",
|
|
"response": {
|
|
"$ref": "Operation"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"location": "path",
|
|
"description": "Partner ID.",
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:claimAsync",
|
|
"path": "v1/partners/{+partnerId}/devices:claimAsync",
|
|
"id": "androiddeviceprovisioning.partners.devices.claimAsync"
|
|
},
|
|
"findByIdentifier": {
|
|
"description": "Find devices by device identifier.",
|
|
"request": {
|
|
"$ref": "FindDevicesByDeviceIdentifierRequest"
|
|
},
|
|
"response": {
|
|
"$ref": "FindDevicesByDeviceIdentifierResponse"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"format": "int64",
|
|
"type": "string",
|
|
"required": true,
|
|
"location": "path",
|
|
"description": "ID of the partner.",
|
|
"pattern": "^[^/]+$"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:findByIdentifier",
|
|
"path": "v1/partners/{+partnerId}/devices:findByIdentifier",
|
|
"id": "androiddeviceprovisioning.partners.devices.findByIdentifier"
|
|
},
|
|
"unclaimAsync": {
|
|
"response": {
|
|
"$ref": "Operation"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"location": "path",
|
|
"description": "Partner ID.",
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices:unclaimAsync",
|
|
"path": "v1/partners/{+partnerId}/devices:unclaimAsync",
|
|
"id": "androiddeviceprovisioning.partners.devices.unclaimAsync",
|
|
"description": "Unclaim devices asynchronously.",
|
|
"request": {
|
|
"$ref": "UnclaimDevicesRequest"
|
|
}
|
|
},
|
|
"metadata": {
|
|
"path": "v1/partners/{+metadataOwnerId}/devices/{+deviceId}/metadata",
|
|
"id": "androiddeviceprovisioning.partners.devices.metadata",
|
|
"request": {
|
|
"$ref": "UpdateDeviceMetadataRequest"
|
|
},
|
|
"description": "Update the metadata.",
|
|
"response": {
|
|
"$ref": "DeviceMetadata"
|
|
},
|
|
"parameterOrder": [
|
|
"metadataOwnerId",
|
|
"deviceId"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"deviceId": {
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string",
|
|
"location": "path",
|
|
"description": "ID of the partner.",
|
|
"pattern": "^[^/]+$"
|
|
},
|
|
"metadataOwnerId": {
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"type": "string",
|
|
"required": true,
|
|
"location": "path",
|
|
"description": "The owner of the newly set metadata. Set this to the partner ID."
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/devices/{devicesId}/metadata"
|
|
}
|
|
}
|
|
},
|
|
"customers": {
|
|
"methods": {
|
|
"create": {
|
|
"response": {
|
|
"$ref": "Company"
|
|
},
|
|
"parameterOrder": [
|
|
"parent"
|
|
],
|
|
"httpMethod": "POST",
|
|
"parameters": {
|
|
"parent": {
|
|
"description": "Required. The parent resource ID in format `partners/[PARTNER_ID]` that\nidentifies the reseller.",
|
|
"required": true,
|
|
"type": "string",
|
|
"pattern": "^partners/[^/]+$",
|
|
"location": "path"
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/customers",
|
|
"path": "v1/{+parent}/customers",
|
|
"id": "androiddeviceprovisioning.partners.customers.create",
|
|
"request": {
|
|
"$ref": "CreateCustomerRequest"
|
|
},
|
|
"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. The API\ndoesn't notify the customer that they have access."
|
|
},
|
|
"list": {
|
|
"response": {
|
|
"$ref": "ListCustomersResponse"
|
|
},
|
|
"parameterOrder": [
|
|
"partnerId"
|
|
],
|
|
"httpMethod": "GET",
|
|
"parameters": {
|
|
"partnerId": {
|
|
"pattern": "^[^/]+$",
|
|
"format": "int64",
|
|
"required": true,
|
|
"type": "string",
|
|
"location": "path",
|
|
"description": "The ID of the partner."
|
|
}
|
|
},
|
|
"flatPath": "v1/partners/{partnersId}/customers",
|
|
"path": "v1/partners/{+partnerId}/customers",
|
|
"id": "androiddeviceprovisioning.partners.customers.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."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"operations": {
|
|
"methods": {
|
|
"get": {
|
|
"response": {
|
|
"$ref": "Operation"
|
|
},
|
|
"parameterOrder": [
|
|
"name"
|
|
],
|
|
"httpMethod": "GET",
|
|
"parameters": {
|
|
"name": {
|
|
"pattern": "^operations/.+$",
|
|
"location": "path",
|
|
"description": "The name of the operation resource.",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"flatPath": "v1/operations/{operationsId}",
|
|
"path": "v1/{+name}",
|
|
"id": "androiddeviceprovisioning.operations.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."
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"parameters": {
|
|
"quotaUser": {
|
|
"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.",
|
|
"type": "string"
|
|
},
|
|
"pp": {
|
|
"location": "query",
|
|
"description": "Pretty-print response.",
|
|
"type": "boolean",
|
|
"default": "true"
|
|
},
|
|
"oauth_token": {
|
|
"description": "OAuth 2.0 token for the current user.",
|
|
"type": "string",
|
|
"location": "query"
|
|
},
|
|
"bearer_token": {
|
|
"description": "OAuth bearer token.",
|
|
"type": "string",
|
|
"location": "query"
|
|
},
|
|
"upload_protocol": {
|
|
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
|
|
"type": "string",
|
|
"location": "query"
|
|
},
|
|
"prettyPrint": {
|
|
"location": "query",
|
|
"description": "Returns response with indentations and line breaks.",
|
|
"type": "boolean",
|
|
"default": "true"
|
|
},
|
|
"fields": {
|
|
"description": "Selector specifying which fields to include in a partial response.",
|
|
"type": "string",
|
|
"location": "query"
|
|
},
|
|
"uploadType": {
|
|
"location": "query",
|
|
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
|
|
"type": "string"
|
|
},
|
|
"$.xgafv": {
|
|
"description": "V1 error format.",
|
|
"type": "string",
|
|
"enumDescriptions": [
|
|
"v1 error format",
|
|
"v2 error format"
|
|
],
|
|
"location": "query",
|
|
"enum": [
|
|
"1",
|
|
"2"
|
|
]
|
|
},
|
|
"callback": {
|
|
"description": "JSONP",
|
|
"type": "string",
|
|
"location": "query"
|
|
},
|
|
"alt": {
|
|
"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",
|
|
"description": "Data format for response.",
|
|
"default": "json",
|
|
"enum": [
|
|
"json",
|
|
"media",
|
|
"proto"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"access_token": {
|
|
"description": "OAuth access token.",
|
|
"type": "string",
|
|
"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"
|
|
}
|
|
},
|
|
"schemas": {
|
|
"UpdateDeviceMetadataRequest": {
|
|
"description": "Request to set metadata for a device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceMetadata": {
|
|
"$ref": "DeviceMetadata",
|
|
"description": "The metdata to set."
|
|
}
|
|
},
|
|
"id": "UpdateDeviceMetadataRequest"
|
|
},
|
|
"PartnerUnclaim": {
|
|
"description": "Identifies one unclaim request.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceIdentifier": {
|
|
"description": "Device identifier of the device.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"sectionType": {
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
],
|
|
"description": "Section type to unclaim.",
|
|
"type": "string",
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
]
|
|
},
|
|
"deviceId": {
|
|
"description": "Device ID of the device.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "PartnerUnclaim"
|
|
},
|
|
"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 `{}`.",
|
|
"type": "object",
|
|
"properties": {},
|
|
"id": "Empty"
|
|
},
|
|
"FindDevicesByDeviceIdentifierResponse": {
|
|
"description": "Response containing found devices.",
|
|
"type": "object",
|
|
"properties": {
|
|
"nextPageToken": {
|
|
"description": "Page token of the next page.",
|
|
"type": "string"
|
|
},
|
|
"devices": {
|
|
"description": "Found devices.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "Device"
|
|
}
|
|
}
|
|
},
|
|
"id": "FindDevicesByDeviceIdentifierResponse"
|
|
},
|
|
"PartnerClaim": {
|
|
"description": "Identifies one claim request.",
|
|
"type": "object",
|
|
"properties": {
|
|
"customerId": {
|
|
"description": "Customer ID to claim for.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
},
|
|
"deviceIdentifier": {
|
|
"description": "Device identifier of the device.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"deviceMetadata": {
|
|
"$ref": "DeviceMetadata",
|
|
"description": "Metadata to set at claim."
|
|
},
|
|
"sectionType": {
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
],
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
],
|
|
"description": "Section type to claim.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "PartnerClaim"
|
|
},
|
|
"UnclaimDeviceRequest": {
|
|
"description": "Request message to unclaim a device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceId": {
|
|
"description": "The device ID returned by `ClaimDevice`.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
},
|
|
"deviceIdentifier": {
|
|
"description": "The device identifier you used when you claimed this device.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"sectionType": {
|
|
"description": "The section type to unclaim for.",
|
|
"type": "string",
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
],
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
]
|
|
}
|
|
},
|
|
"id": "UnclaimDeviceRequest"
|
|
},
|
|
"DeviceMetadata": {
|
|
"properties": {
|
|
"entries": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"description": "Metadata entries",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"id": "DeviceMetadata",
|
|
"description": "A key-value pair of the device metadata.",
|
|
"type": "object"
|
|
},
|
|
"DevicesLongRunningOperationResponse": {
|
|
"properties": {
|
|
"successCount": {
|
|
"description": "Number of succeesfully processed ones.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"perDeviceStatus": {
|
|
"description": "Processing status for each device.\nOne `PerDeviceStatus` per device. The order is the same as in your requests.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "OperationPerDevice"
|
|
}
|
|
}
|
|
},
|
|
"id": "DevicesLongRunningOperationResponse",
|
|
"description": "Long running operation response.",
|
|
"type": "object"
|
|
},
|
|
"DeviceClaim": {
|
|
"description": "Information about a device claimed for a partner.",
|
|
"type": "object",
|
|
"properties": {
|
|
"sectionType": {
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
],
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
],
|
|
"description": "Section type of the device claim.",
|
|
"type": "string"
|
|
},
|
|
"ownerCompanyId": {
|
|
"description": "Owner ID.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "DeviceClaim"
|
|
},
|
|
"PerDeviceStatusInBatch": {
|
|
"description": "Stores the processing result for each device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceId": {
|
|
"description": "Device ID of the device if process succeeds.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"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."
|
|
],
|
|
"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"
|
|
],
|
|
"description": "Process result.",
|
|
"type": "string"
|
|
},
|
|
"errorIdentifier": {
|
|
"description": "Error identifier.",
|
|
"type": "string"
|
|
},
|
|
"errorMessage": {
|
|
"description": "Error message.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "PerDeviceStatusInBatch"
|
|
},
|
|
"FindDevicesByOwnerRequest": {
|
|
"description": "Request to find devices by customers.",
|
|
"type": "object",
|
|
"properties": {
|
|
"limit": {
|
|
"description": "The number of devices to show in the result.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
},
|
|
"pageToken": {
|
|
"description": "Page token.",
|
|
"type": "string"
|
|
},
|
|
"sectionType": {
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
],
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
],
|
|
"description": "The section type.",
|
|
"type": "string"
|
|
},
|
|
"customerId": {
|
|
"description": "List of customer IDs to search for.",
|
|
"type": "array",
|
|
"items": {
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"id": "FindDevicesByOwnerRequest"
|
|
},
|
|
"ClaimDevicesRequest": {
|
|
"description": "Request to claim devices asynchronously in batch.",
|
|
"type": "object",
|
|
"properties": {
|
|
"claims": {
|
|
"description": "List of claims.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "PartnerClaim"
|
|
}
|
|
}
|
|
},
|
|
"id": "ClaimDevicesRequest"
|
|
},
|
|
"DeviceIdentifier": {
|
|
"description": "Identifies a unique device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"meid": {
|
|
"description": "MEID number.",
|
|
"type": "string"
|
|
},
|
|
"manufacturer": {
|
|
"description": "Manufacturer name to match `android.os.Build.MANUFACTURER` (required).\nAllowed values listed in\n[manufacturer names](/zero-touch/resources/manufacturer-names).",
|
|
"type": "string"
|
|
},
|
|
"serialNumber": {
|
|
"description": "Serial number (optional).",
|
|
"type": "string"
|
|
},
|
|
"imei": {
|
|
"description": "IMEI number.",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "DeviceIdentifier"
|
|
},
|
|
"Operation": {
|
|
"description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
|
|
"type": "object",
|
|
"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"
|
|
},
|
|
"response": {
|
|
"description": "This field will contain a `DevicesLongRunningOperationResponse` object if the operation is created by `claimAsync`, `unclaimAsync`, or `updateMetadataAsync`.",
|
|
"type": "object",
|
|
"additionalProperties": {
|
|
"description": "Properties of the object. Contains field @type with type URL.",
|
|
"type": "any"
|
|
}
|
|
},
|
|
"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 have the format of `operations/some/unique/name`.",
|
|
"type": "string"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"id": "Operation"
|
|
},
|
|
"UnclaimDevicesRequest": {
|
|
"description": "Request to unclaim devices asynchronously in batch.",
|
|
"type": "object",
|
|
"properties": {
|
|
"unclaims": {
|
|
"description": "List of devices to unclaim.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "PartnerUnclaim"
|
|
}
|
|
}
|
|
},
|
|
"id": "UnclaimDevicesRequest"
|
|
},
|
|
"Status": {
|
|
"description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
|
|
"type": "object",
|
|
"properties": {
|
|
"details": {
|
|
"description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
|
|
"type": "array",
|
|
"items": {
|
|
"additionalProperties": {
|
|
"description": "Properties of the object. Contains field @type with type URL.",
|
|
"type": "any"
|
|
},
|
|
"type": "object"
|
|
}
|
|
},
|
|
"code": {
|
|
"description": "The status code, which should be an enum value of google.rpc.Code.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"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"
|
|
}
|
|
},
|
|
"id": "Status"
|
|
},
|
|
"FindDevicesByDeviceIdentifierRequest": {
|
|
"description": "Request to find devices.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceIdentifier": {
|
|
"description": "The device identifier to search.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"pageToken": {
|
|
"description": "Page token.",
|
|
"type": "string"
|
|
},
|
|
"limit": {
|
|
"description": "Number of devices to show.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "FindDevicesByDeviceIdentifierRequest"
|
|
},
|
|
"OperationPerDevice": {
|
|
"properties": {
|
|
"claim": {
|
|
"$ref": "PartnerClaim",
|
|
"description": "Request to claim a device."
|
|
},
|
|
"updateMetadata": {
|
|
"$ref": "UpdateMetadataArguments",
|
|
"description": "Request to set metadata for a device."
|
|
},
|
|
"unclaim": {
|
|
"description": "Request to unclaim a device.",
|
|
"$ref": "PartnerUnclaim"
|
|
},
|
|
"result": {
|
|
"description": "Processing result for every device.",
|
|
"$ref": "PerDeviceStatusInBatch"
|
|
}
|
|
},
|
|
"id": "OperationPerDevice",
|
|
"description": "Operation the server received for every device.",
|
|
"type": "object"
|
|
},
|
|
"FindDevicesByOwnerResponse": {
|
|
"description": "Response containing found devices.",
|
|
"type": "object",
|
|
"properties": {
|
|
"nextPageToken": {
|
|
"description": "Page token of the next page.",
|
|
"type": "string"
|
|
},
|
|
"devices": {
|
|
"description": "Devices found.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "Device"
|
|
}
|
|
}
|
|
},
|
|
"id": "FindDevicesByOwnerResponse"
|
|
},
|
|
"ClaimDeviceRequest": {
|
|
"description": "Request message to claim a device on behalf of a customer.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceIdentifier": {
|
|
"description": "The device identifier of the device to claim.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"sectionType": {
|
|
"enumDescriptions": [
|
|
"Unspecified section type.",
|
|
"Zero touch section type."
|
|
],
|
|
"enum": [
|
|
"SECTION_TYPE_UNSPECIFIED",
|
|
"SECTION_TYPE_ZERO_TOUCH"
|
|
],
|
|
"description": "The section to claim.",
|
|
"type": "string"
|
|
},
|
|
"customerId": {
|
|
"description": "The customer to claim for.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "ClaimDeviceRequest"
|
|
},
|
|
"DevicesLongRunningOperationMetadata": {
|
|
"description": "Long running operation metadata.",
|
|
"type": "object",
|
|
"properties": {
|
|
"progress": {
|
|
"description": "Processing progress from 0 to 100.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"devicesCount": {
|
|
"description": "Number of devices parsed in your requests.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"processingStatus": {
|
|
"description": "The overall processing status.",
|
|
"type": "string",
|
|
"enumDescriptions": [
|
|
"Invalid code. Shouldn't be used.",
|
|
"Pending.",
|
|
"In progress.",
|
|
"Processed.\nThis doesn't mean all items were processed sucessfully, you should\ncheck the `response` field for the result of every item."
|
|
],
|
|
"enum": [
|
|
"BATCH_PROCESS_STATUS_UNSPECIFIED",
|
|
"BATCH_PROCESS_PENDING",
|
|
"BATCH_PROCESS_IN_PROGRESS",
|
|
"BATCH_PROCESS_PROCESSED"
|
|
]
|
|
}
|
|
},
|
|
"id": "DevicesLongRunningOperationMetadata"
|
|
},
|
|
"UpdateDeviceMetadataInBatchRequest": {
|
|
"description": "Request to update device metadata in batch.",
|
|
"type": "object",
|
|
"properties": {
|
|
"updates": {
|
|
"description": "List of metadata updates.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "UpdateMetadataArguments"
|
|
}
|
|
}
|
|
},
|
|
"id": "UpdateDeviceMetadataInBatchRequest"
|
|
},
|
|
"UpdateMetadataArguments": {
|
|
"description": "Identifies metdata updates to one device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceIdentifier": {
|
|
"description": "Device identifier.",
|
|
"$ref": "DeviceIdentifier"
|
|
},
|
|
"deviceMetadata": {
|
|
"description": "The metadata to update.",
|
|
"$ref": "DeviceMetadata"
|
|
},
|
|
"deviceId": {
|
|
"description": "Device ID of the device.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "UpdateMetadataArguments"
|
|
},
|
|
"ClaimDeviceResponse": {
|
|
"description": "Response message containing device id of the claim.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceName": {
|
|
"description": "The resource name of the device in the format\n`partners/[PARTNER_ID]/devices/[DEVICE_ID]`.",
|
|
"type": "string"
|
|
},
|
|
"deviceId": {
|
|
"description": "The device ID of the claimed device.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"id": "ClaimDeviceResponse"
|
|
},
|
|
"ListCustomersResponse": {
|
|
"description": "Response message of all customers related to this partner.",
|
|
"type": "object",
|
|
"properties": {
|
|
"customers": {
|
|
"description": "List of customers related to this partner.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "Company"
|
|
}
|
|
}
|
|
},
|
|
"id": "ListCustomersResponse"
|
|
},
|
|
"Device": {
|
|
"description": "An Android device.",
|
|
"type": "object",
|
|
"properties": {
|
|
"deviceIdentifier": {
|
|
"$ref": "DeviceIdentifier",
|
|
"description": "Device identifier."
|
|
},
|
|
"deviceMetadata": {
|
|
"description": "Device metadata.",
|
|
"$ref": "DeviceMetadata"
|
|
},
|
|
"name": {
|
|
"description": "Resource name in `partners/[PARTNER_ID]/devices/[DEVICE_ID]`.",
|
|
"type": "string"
|
|
},
|
|
"deviceId": {
|
|
"description": "Device ID.",
|
|
"format": "int64",
|
|
"type": "string"
|
|
},
|
|
"configuration": {
|
|
"description": "The resource name of the configuration.\nOnly set for customers.",
|
|
"type": "string"
|
|
},
|
|
"claims": {
|
|
"description": "Claims.",
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "DeviceClaim"
|
|
}
|
|
}
|
|
},
|
|
"id": "Device"
|
|
},
|
|
"CreateCustomerRequest": {
|
|
"description": "Request message to create a customer.",
|
|
"type": "object",
|
|
"properties": {
|
|
"customer": {
|
|
"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.",
|
|
"$ref": "Company"
|
|
}
|
|
},
|
|
"id": "CreateCustomerRequest"
|
|
},
|
|
"Company": {
|
|
"properties": {
|
|
"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.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"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_. Characters\nallowed are: Latin letters, numerals, hyphens, and spaces. Displayed to the\ncustomer's employees in the zero-touch enrollment portal.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "Output only. The API resource name of the company in the format\n`partners/[PARTNER_ID]/customers/[CUSTOMER_ID]`. Assigned by the server.",
|
|
"type": "string"
|
|
},
|
|
"adminEmails": {
|
|
"description": "Input only. Optional. Email address of customer's users in the admin role.\nEach email address must be associated with a Google Account.",
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string"
|
|
}
|
|
}
|
|
},
|
|
"id": "Company",
|
|
"description": "A customer resource in the zero-touch enrollment API.",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"protocol": "rest",
|
|
"icons": {
|
|
"x32": "http://www.google.com/images/icons/product/search-32.gif",
|
|
"x16": "http://www.google.com/images/icons/product/search-16.gif"
|
|
},
|
|
"version": "v1",
|
|
"baseUrl": "https://androiddeviceprovisioning.googleapis.com/"
|
|
}
|