{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/androidmanagement": {
          "description": "Manage Android devices and apps for your customers"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://androidmanagement.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Android Management",
  "description": "The Android Management API provides remote enterprise management of Android devices and apps.",
  "discoveryVersion": "v1",
  "documentationLink": "https://developers.google.com/android/management",
  "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": "androidmanagement:v1",
  "kind": "discovery#restDescription",
  "name": "androidmanagement",
  "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": {
    "enterprises": {
      "methods": {
        "create": {
          "description": "Creates an enterprise. This is the last step in the enterprise signup flow.",
          "flatPath": "v1/enterprises",
          "httpMethod": "POST",
          "id": "androidmanagement.enterprises.create",
          "parameterOrder": [],
          "parameters": {
            "enterpriseToken": {
              "description": "The enterprise token appended to the callback URL.",
              "location": "query",
              "type": "string"
            },
            "projectId": {
              "description": "The ID of the Google Cloud Platform project which will own the enterprise.",
              "location": "query",
              "type": "string"
            },
            "signupUrlName": {
              "description": "The name of the SignupUrl used to sign up for the enterprise.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/enterprises",
          "request": {
            "$ref": "Enterprise"
          },
          "response": {
            "$ref": "Enterprise"
          },
          "scopes": [
            "https://www.googleapis.com/auth/androidmanagement"
          ]
        },
        "get": {
          "description": "Gets an enterprise.",
          "flatPath": "v1/enterprises/{enterprisesId}",
          "httpMethod": "GET",
          "id": "androidmanagement.enterprises.get",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The name of the enterprise in the form enterprises/{enterpriseId}.",
              "location": "path",
              "pattern": "^enterprises/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "response": {
            "$ref": "Enterprise"
          },
          "scopes": [
            "https://www.googleapis.com/auth/androidmanagement"
          ]
        },
        "patch": {
          "description": "Updates an enterprise.",
          "flatPath": "v1/enterprises/{enterprisesId}",
          "httpMethod": "PATCH",
          "id": "androidmanagement.enterprises.patch",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "The name of the enterprise in the form enterprises/{enterpriseId}.",
              "location": "path",
              "pattern": "^enterprises/[^/]+$",
              "required": true,
              "type": "string"
            },
            "updateMask": {
              "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.",
              "format": "google-fieldmask",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/{+name}",
          "request": {
            "$ref": "Enterprise"
          },
          "response": {
            "$ref": "Enterprise"
          },
          "scopes": [
            "https://www.googleapis.com/auth/androidmanagement"
          ]
        }
      },
      "resources": {
        "applications": {
          "methods": {
            "get": {
              "description": "Gets info about an application.",
              "flatPath": "v1/enterprises/{enterprisesId}/applications/{applicationsId}",
              "httpMethod": "GET",
              "id": "androidmanagement.enterprises.applications.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "languageCode": {
                  "description": "The preferred language for localized application info, as a BCP47 tag (e.g. \"en-US\", \"de\"). If not specified the default language of the application will be used.",
                  "location": "query",
                  "type": "string"
                },
                "name": {
                  "description": "The name of the application in the form enterprises/{enterpriseId}/applications/{package_name}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/applications/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Application"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            }
          }
        },
        "devices": {
          "methods": {
            "delete": {
              "description": "Deletes a device. This operation wipes the device.",
              "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}",
              "httpMethod": "DELETE",
              "id": "androidmanagement.enterprises.devices.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/devices/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "wipeDataFlags": {
                  "description": "Optional flags that control the device wiping behavior.",
                  "enum": [
                    "WIPE_DATA_FLAG_UNSPECIFIED",
                    "PRESERVE_RESET_PROTECTION_DATA",
                    "WIPE_EXTERNAL_STORAGE"
                  ],
                  "location": "query",
                  "repeated": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "get": {
              "description": "Gets a device.",
              "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}",
              "httpMethod": "GET",
              "id": "androidmanagement.enterprises.devices.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/devices/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Device"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "issueCommand": {
              "description": "Issues a command to a device. The Operation resource returned contains a Command in its metadata field. Use the get operation method to get the status of the command.",
              "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}:issueCommand",
              "httpMethod": "POST",
              "id": "androidmanagement.enterprises.devices.issueCommand",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/devices/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}:issueCommand",
              "request": {
                "$ref": "Command"
              },
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "list": {
              "description": "Lists devices for a given enterprise.",
              "flatPath": "v1/enterprises/{enterprisesId}/devices",
              "httpMethod": "GET",
              "id": "androidmanagement.enterprises.devices.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "The requested page size. The actual page size may be fixed to a min or max value.",
                  "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": "The name of the enterprise in the form enterprises/{enterpriseId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/devices",
              "response": {
                "$ref": "ListDevicesResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "patch": {
              "description": "Updates a device.",
              "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}",
              "httpMethod": "PATCH",
              "id": "androidmanagement.enterprises.devices.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/devices/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "updateMask": {
                  "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.",
                  "format": "google-fieldmask",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "request": {
                "$ref": "Device"
              },
              "response": {
                "$ref": "Device"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            }
          },
          "resources": {
            "operations": {
              "methods": {
                "cancel": {
                  "description": "Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of 1, corresponding to Code.CANCELLED.",
                  "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}:cancel",
                  "httpMethod": "POST",
                  "id": "androidmanagement.enterprises.devices.operations.cancel",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource to be cancelled.",
                      "location": "path",
                      "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}:cancel",
                  "response": {
                    "$ref": "Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/androidmanagement"
                  ]
                },
                "delete": {
                  "description": "Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns google.rpc.Code.UNIMPLEMENTED.",
                  "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}",
                  "httpMethod": "DELETE",
                  "id": "androidmanagement.enterprises.devices.operations.delete",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource to be deleted.",
                      "location": "path",
                      "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Empty"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/androidmanagement"
                  ]
                },
                "get": {
                  "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
                  "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations/{operationsId}",
                  "httpMethod": "GET",
                  "id": "androidmanagement.enterprises.devices.operations.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "The name of the operation resource.",
                      "location": "path",
                      "pattern": "^enterprises/[^/]+/devices/[^/]+/operations/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "Operation"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/androidmanagement"
                  ]
                },
                "list": {
                  "description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns UNIMPLEMENTED.NOTE: the name binding allows API services to override the binding to use different resource name schemes, such as users/*/operations. To override the binding, API services can add a binding such as \"/v1/{name=users/*}/operations\" to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
                  "flatPath": "v1/enterprises/{enterprisesId}/devices/{devicesId}/operations",
                  "httpMethod": "GET",
                  "id": "androidmanagement.enterprises.devices.operations.list",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "filter": {
                      "description": "The standard list filter.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "description": "The name of the operation's parent resource.",
                      "location": "path",
                      "pattern": "^enterprises/[^/]+/devices/[^/]+/operations$",
                      "required": true,
                      "type": "string"
                    },
                    "pageSize": {
                      "description": "The standard list page size.",
                      "format": "int32",
                      "location": "query",
                      "type": "integer"
                    },
                    "pageToken": {
                      "description": "The standard list page token.",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v1/{+name}",
                  "response": {
                    "$ref": "ListOperationsResponse"
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/androidmanagement"
                  ]
                }
              }
            }
          }
        },
        "enrollmentTokens": {
          "methods": {
            "create": {
              "description": "Creates an enrollment token for a given enterprise.",
              "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens",
              "httpMethod": "POST",
              "id": "androidmanagement.enterprises.enrollmentTokens.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "The name of the enterprise in the form enterprises/{enterpriseId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/enrollmentTokens",
              "request": {
                "$ref": "EnrollmentToken"
              },
              "response": {
                "$ref": "EnrollmentToken"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "delete": {
              "description": "Deletes an enrollment token. This operation invalidates the token, preventing its future use.",
              "flatPath": "v1/enterprises/{enterprisesId}/enrollmentTokens/{enrollmentTokensId}",
              "httpMethod": "DELETE",
              "id": "androidmanagement.enterprises.enrollmentTokens.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the enrollment token in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/enrollmentTokens/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            }
          }
        },
        "policies": {
          "methods": {
            "delete": {
              "description": "Deletes a policy. This operation is only permitted if no devices are currently referencing the policy.",
              "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}",
              "httpMethod": "DELETE",
              "id": "androidmanagement.enterprises.policies.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/policies/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "get": {
              "description": "Gets a policy.",
              "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}",
              "httpMethod": "GET",
              "id": "androidmanagement.enterprises.policies.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/policies/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "response": {
                "$ref": "Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "list": {
              "description": "Lists policies for a given enterprise.",
              "flatPath": "v1/enterprises/{enterprisesId}/policies",
              "httpMethod": "GET",
              "id": "androidmanagement.enterprises.policies.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "The requested page size. The actual page size may be fixed to a min or max value.",
                  "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": "The name of the enterprise in the form enterprises/{enterpriseId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/policies",
              "response": {
                "$ref": "ListPoliciesResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            },
            "patch": {
              "description": "Updates or creates a policy.",
              "flatPath": "v1/enterprises/{enterprisesId}/policies/{policiesId}",
              "httpMethod": "PATCH",
              "id": "androidmanagement.enterprises.policies.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+/policies/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "updateMask": {
                  "description": "The field mask indicating the fields to update. If not set, all modifiable fields will be modified.",
                  "format": "google-fieldmask",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1/{+name}",
              "request": {
                "$ref": "Policy"
              },
              "response": {
                "$ref": "Policy"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            }
          }
        },
        "webTokens": {
          "methods": {
            "create": {
              "description": "Creates a web token to access an embeddable managed Google Play web UI for a given enterprise.",
              "flatPath": "v1/enterprises/{enterprisesId}/webTokens",
              "httpMethod": "POST",
              "id": "androidmanagement.enterprises.webTokens.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "The name of the enterprise in the form enterprises/{enterpriseId}.",
                  "location": "path",
                  "pattern": "^enterprises/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1/{+parent}/webTokens",
              "request": {
                "$ref": "WebToken"
              },
              "response": {
                "$ref": "WebToken"
              },
              "scopes": [
                "https://www.googleapis.com/auth/androidmanagement"
              ]
            }
          }
        }
      }
    },
    "signupUrls": {
      "methods": {
        "create": {
          "description": "Creates an enterprise signup URL.",
          "flatPath": "v1/signupUrls",
          "httpMethod": "POST",
          "id": "androidmanagement.signupUrls.create",
          "parameterOrder": [],
          "parameters": {
            "callbackUrl": {
              "description": "The callback URL that the admin will be redirected to after successfully creating an enterprise. Before redirecting there the system will add a query parameter to this URL named enterpriseToken which will contain an opaque token to be used for the create enterprise request. The URL will be parsed then reformatted in order to add the enterpriseToken parameter, so there may be some minor formatting changes.",
              "location": "query",
              "type": "string"
            },
            "projectId": {
              "description": "The ID of the Google Cloud Platform project which will own the enterprise.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1/signupUrls",
          "response": {
            "$ref": "SignupUrl"
          },
          "scopes": [
            "https://www.googleapis.com/auth/androidmanagement"
          ]
        }
      }
    }
  },
  "revision": "20180706",
  "rootUrl": "https://androidmanagement.googleapis.com/",
  "schemas": {
    "AlwaysOnVpnPackage": {
      "description": "Configuration for an always-on VPN connection.",
      "id": "AlwaysOnVpnPackage",
      "properties": {
        "lockdownEnabled": {
          "description": "Disallows networking when the VPN is not connected.",
          "type": "boolean"
        },
        "packageName": {
          "description": "The package name of the VPN app.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApiLevelCondition": {
      "description": "A compliance rule condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement. There can only be one rule with this type of condition per policy.",
      "id": "ApiLevelCondition",
      "properties": {
        "minApiLevel": {
          "description": "The minimum desired Android Framework API level. If the device doesn't meet the minimum requirement, this condition is satisfied. Must be greater than zero.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "Application": {
      "description": "Information about an app.",
      "id": "Application",
      "properties": {
        "managedProperties": {
          "description": "The set of managed properties available to be pre-configured for the app.",
          "items": {
            "$ref": "ManagedProperty"
          },
          "type": "array"
        },
        "name": {
          "description": "The name of the app in the form enterprises/{enterpriseId}/applications/{package_name}.",
          "type": "string"
        },
        "permissions": {
          "description": "The permissions required by the app.",
          "items": {
            "$ref": "ApplicationPermission"
          },
          "type": "array"
        },
        "title": {
          "description": "The title of the app. Localized.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApplicationEvent": {
      "description": "An app-related event.",
      "id": "ApplicationEvent",
      "properties": {
        "createTime": {
          "description": "The creation time of the event.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventType": {
          "description": "App event type.",
          "enum": [
            "APPLICATION_EVENT_TYPE_UNSPECIFIED",
            "INSTALLED",
            "CHANGED",
            "DATA_CLEARED",
            "REMOVED",
            "REPLACED",
            "RESTARTED",
            "PINNED",
            "UNPINNED"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "The app was installed.",
            "The app was changed, for example, a component was enabled or disabled.",
            "The app data was cleared.",
            "The app was removed.",
            "A new version of the app has been installed, replacing the old version.",
            "The app was restarted.",
            "The app was pinned to the foreground.",
            "The app was unpinned."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApplicationPermission": {
      "description": "A permission required by the app.",
      "id": "ApplicationPermission",
      "properties": {
        "description": {
          "description": "A longer description of the permission, providing more detail on what it affects. Localized.",
          "type": "string"
        },
        "name": {
          "description": "The name of the permission. Localized.",
          "type": "string"
        },
        "permissionId": {
          "description": "An opaque string uniquely identifying the permission. Not localized.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApplicationPolicy": {
      "description": "Policy for an individual app.",
      "id": "ApplicationPolicy",
      "properties": {
        "defaultPermissionPolicy": {
          "description": "The default policy for all permissions requested by the app. If specified, this overrides the policy-level default_permission_policy which applies to all apps. It does not override the permission_grants which applies to all apps.",
          "enum": [
            "PERMISSION_POLICY_UNSPECIFIED",
            "PROMPT",
            "GRANT",
            "DENY"
          ],
          "enumDescriptions": [
            "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.",
            "Prompt the user to grant a permission.",
            "Automatically grant a permission.",
            "Automatically deny a permission."
          ],
          "type": "string"
        },
        "delegatedScopes": {
          "description": "The scopes delegated to the app from Android Device Policy.",
          "enumDescriptions": [
            "No delegation scope specified.",
            "Grants access to certificate installation and management.",
            "Grants access to managed configurations management.",
            "Grants access to blocking uninstallation.",
            "Grants access to permission policy and permission grant state.",
            "Grants access to package access state.",
            "Grants access for enabling system apps."
          ],
          "items": {
            "enum": [
              "DELEGATED_SCOPE_UNSPECIFIED",
              "CERT_INSTALL",
              "MANAGED_CONFIGURATIONS",
              "BLOCK_UNINSTALL",
              "PERMISSION_GRANT",
              "PACKAGE_ACCESS",
              "ENABLE_SYSTEM_APP"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "disabled": {
          "description": "Whether the app is disabled. When disabled, the app data is still preserved.",
          "type": "boolean"
        },
        "installType": {
          "description": "The type of installation to perform.",
          "enum": [
            "INSTALL_TYPE_UNSPECIFIED",
            "PREINSTALLED",
            "FORCE_INSTALLED",
            "AVAILABLE"
          ],
          "enumDescriptions": [
            "Unspecified. Defaults to AVAILABLE.",
            "The app is automatically installed and can be removed by the user.",
            "The app is automatically installed and can't be removed by the user.",
            "The app is available to install."
          ],
          "type": "string"
        },
        "lockTaskAllowed": {
          "description": "Whether the app is allowed to lock itself in full-screen mode.",
          "type": "boolean"
        },
        "managedConfiguration": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Managed configuration applied to the app. The format for the configuration is dictated by the ManagedProperty values supported by the app. Each field name in the managed configuration must match the key field of the ManagedProperty. The field value must be compatible with the type of the ManagedProperty: \u003ctable\u003e \u003ctr\u003e\u003ctd\u003e\u003ci\u003etype\u003c/i\u003e\u003c/td\u003e\u003ctd\u003e\u003ci\u003eJSON value\u003c/i\u003e\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBOOL\u003c/td\u003e\u003ctd\u003etrue or false\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eSTRING\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eINTEGER\u003c/td\u003e\u003ctd\u003enumber\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eCHOICE\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eMULTISELECT\u003c/td\u003e\u003ctd\u003earray of strings\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eHIDDEN\u003c/td\u003e\u003ctd\u003estring\u003c/td\u003e\u003c/tr\u003e \u003ctr\u003e\u003ctd\u003eBUNDLE_ARRAY\u003c/td\u003e\u003ctd\u003earray of objects\u003c/td\u003e\u003c/tr\u003e \u003c/table\u003e",
          "type": "object"
        },
        "minimumVersionCode": {
          "description": "The minimum version of the app that runs on the device. If set, the device attempts to update the app to at least this version code. If the app is not up-to-date, the device will contain a NonComplianceDetail with non_compliance_reason set to APP_NOT_UPDATED. The app must already be published to Google Play with a version code greater than or equal to this value. At most 20 apps may specify a minimum version code per policy.",
          "format": "int32",
          "type": "integer"
        },
        "packageName": {
          "description": "The package name of the app. For example, com.google.android.youtube for the YouTube app.",
          "type": "string"
        },
        "permissionGrants": {
          "description": "Explicit permission grants or denials for the app. These values override the default_permission_policy and permission_grants which apply to all apps.",
          "items": {
            "$ref": "PermissionGrant"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ApplicationReport": {
      "description": "Information reported about an installed app.",
      "id": "ApplicationReport",
      "properties": {
        "applicationSource": {
          "description": "The source of the package.",
          "enum": [
            "APPLICATION_SOURCE_UNSPECIFIED",
            "SYSTEM_APP_FACTORY_VERSION",
            "SYSTEM_APP_UPDATED_VERSION",
            "INSTALLED_FROM_PLAY_STORE"
          ],
          "enumDescriptions": [
            "The app was sideloaded from an unspecified source.",
            "This is a system app from the device's factory image.",
            "This is an updated system app.",
            "The app was installed from the Google Play Store."
          ],
          "type": "string"
        },
        "displayName": {
          "description": "The display name of the app.",
          "type": "string"
        },
        "events": {
          "description": "List of app events. The most recent 20 events are stored in the list.",
          "items": {
            "$ref": "ApplicationEvent"
          },
          "type": "array"
        },
        "installerPackageName": {
          "description": "The package name of the app that installed this app.",
          "type": "string"
        },
        "packageName": {
          "description": "Package name of the app.",
          "type": "string"
        },
        "packageSha256Hash": {
          "description": "The SHA-256 hash of the app's APK file, which can be used to verify the app hasn't been modified. Each byte of the hash value is represented as a two-digit hexadecimal number.",
          "type": "string"
        },
        "signingKeyCertFingerprints": {
          "description": "The SHA-1 hash of each android.content.pm.Signature (https://developer.android.com/reference/android/content/pm/Signature.html) associated with the app package. Each byte of each hash value is represented as a two-digit hexadecimal number.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "state": {
          "description": "Application state.",
          "enum": [
            "INSTALLED",
            "REMOVED"
          ],
          "enumDescriptions": [
            "App is installed on the device",
            "App was removed from the device"
          ],
          "type": "string"
        },
        "versionCode": {
          "description": "The app version code, which can be used to determine whether one version is more recent than another.",
          "format": "int32",
          "type": "integer"
        },
        "versionName": {
          "description": "The app version as displayed to the user.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ChoosePrivateKeyRule": {
      "description": "A rule for automatically choosing a private key and certificate to authenticate the device to a server.",
      "id": "ChoosePrivateKeyRule",
      "properties": {
        "packageNames": {
          "description": "The package names for which outgoing requests are subject to this rule. If no package names are specified, then the rule applies to all packages. For each package name listed, the rule applies to that package and all other packages that shared the same Android UID. The SHA256 hash of the signing key signatures of each package_name will be verified against those provided by Play",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "privateKeyAlias": {
          "description": "The alias of the private key to be used.",
          "type": "string"
        },
        "urlPattern": {
          "description": "The URL pattern to match against the URL of the outgoing request. The pattern may contain asterisk (*) wildcards. Any URL is matched if unspecified.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Command": {
      "description": "A command.",
      "id": "Command",
      "properties": {
        "createTime": {
          "description": "The timestamp at which the command was created. The timestamp is automatically generated by the server.",
          "format": "google-datetime",
          "type": "string"
        },
        "duration": {
          "description": "The duration for which the command is valid. The command will expire if not executed by the device during this time. The default duration if unspecified is ten minutes. There is no maximum duration.",
          "format": "google-duration",
          "type": "string"
        },
        "errorCode": {
          "description": "If the command failed, an error code explaining the failure. This is not set when the command is cancelled by the caller.",
          "enum": [
            "COMMAND_ERROR_CODE_UNSPECIFIED",
            "UNKNOWN",
            "API_LEVEL",
            "MANAGEMENT_MODE",
            "INVALID_VALUE",
            "UNSUPPORTED"
          ],
          "enumDescriptions": [
            "There was no error.",
            "An unknown error occurred.",
            "The API level of the device does not support this command.",
            "The management mode (profile owner, device owner, etc.) does not support the command.",
            "The command has an invalid parameter value.",
            "The device doesn't support the command. Updating Android Device Policy to the latest version may resolve the issue."
          ],
          "type": "string"
        },
        "newPassword": {
          "description": "For commands of type RESET_PASSWORD, optionally specifies the new password.",
          "type": "string"
        },
        "resetPasswordFlags": {
          "description": "For commands of type RESET_PASSWORD, optionally specifies flags.",
          "enumDescriptions": [
            "This value is ignored.",
            "Don't allow other admins to change the password again until the user has entered it.",
            "Don't ask for user credentials on device boot.",
            "Lock the device after password reset."
          ],
          "items": {
            "enum": [
              "RESET_PASSWORD_FLAG_UNSPECIFIED",
              "REQUIRE_ENTRY",
              "DO_NOT_ASK_CREDENTIALS_ON_BOOT",
              "LOCK_NOW"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "type": {
          "description": "The type of the command.",
          "enum": [
            "COMMAND_TYPE_UNSPECIFIED",
            "LOCK",
            "RESET_PASSWORD",
            "REBOOT"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "Lock the device, as if the lock screen timeout had expired.",
            "Reset the user's password.",
            "Reboot the device. Only supported on API level 24+."
          ],
          "type": "string"
        },
        "userName": {
          "description": "The resource name of the user that owns the device in the form enterprises/{enterpriseId}/users/{userId}. This is automatically generated by the server based on the device the command is sent to.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ComplianceRule": {
      "description": "A rule declaring which mitigating actions to take when a device is not compliant with its policy. For every rule, there is always an implicit mitigating action to set policy_compliant to false for the Device resource, and display a message on the device indicating that the device is not compliant with its policy. Other mitigating actions may optionally be taken as well, depending on the field values in the rule.",
      "id": "ComplianceRule",
      "properties": {
        "apiLevelCondition": {
          "$ref": "ApiLevelCondition",
          "description": "A condition which is satisfied if the Android Framework API level on the device doesn't meet a minimum requirement."
        },
        "disableApps": {
          "description": "If set to true, the rule includes a mitigating action to disable apps so that the device is effectively disabled, but app data is preserved. If the device is running an app in locked task mode, the app will be closed and a UI showing the reason for non-compliance will be displayed.",
          "type": "boolean"
        },
        "nonComplianceDetailCondition": {
          "$ref": "NonComplianceDetailCondition",
          "description": "A condition which is satisfied if there exists any matching NonComplianceDetail for the device."
        },
        "packageNamesToDisable": {
          "description": "If set, the rule includes a mitigating action to disable apps specified in the list, but app data is preserved.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "Device": {
      "description": "A device owned by an enterprise. Unless otherwise noted, all fields are read-only and can't be modified by enterprises.devices.patch.",
      "id": "Device",
      "properties": {
        "apiLevel": {
          "description": "The API level of the Android platform version running on the device.",
          "format": "int32",
          "type": "integer"
        },
        "applicationReports": {
          "description": "Reports for apps installed on the device. This information is only available when application_reports_enabled is true in the device's policy.",
          "items": {
            "$ref": "ApplicationReport"
          },
          "type": "array"
        },
        "appliedPolicyName": {
          "description": "The name of the policy currently applied to the device.",
          "type": "string"
        },
        "appliedPolicyVersion": {
          "description": "The version of the policy currently applied to the device.",
          "format": "int64",
          "type": "string"
        },
        "appliedState": {
          "description": "The state currently applied to the device.",
          "enum": [
            "DEVICE_STATE_UNSPECIFIED",
            "ACTIVE",
            "DISABLED",
            "DELETED",
            "PROVISIONING"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "The device is active.",
            "The device is disabled.",
            "The device was deleted. This state will never be returned by an API call, but is used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.",
            "The device is being provisioned. Newly enrolled devices are in this state until they have a policy applied."
          ],
          "type": "string"
        },
        "deviceSettings": {
          "$ref": "DeviceSettings",
          "description": "Device settings information. This information is only available if deviceSettingsEnabled is true in the device's policy."
        },
        "disabledReason": {
          "$ref": "UserFacingMessage",
          "description": "If the device state is DISABLED, an optional message that is displayed on the device indicating the reason the device is disabled. This field can be modified by a patch request."
        },
        "displays": {
          "description": "Detailed information about displays on the device. This information is only available if displayInfoEnabled is true in the device's policy.",
          "items": {
            "$ref": "Display"
          },
          "type": "array"
        },
        "enrollmentTime": {
          "description": "The time of device enrollment.",
          "format": "google-datetime",
          "type": "string"
        },
        "enrollmentTokenData": {
          "description": "If the device was enrolled with an enrollment token with additional data provided, this field contains that data.",
          "type": "string"
        },
        "enrollmentTokenName": {
          "description": "If the device was enrolled with an enrollment token, this field contains the name of the token.",
          "type": "string"
        },
        "hardwareInfo": {
          "$ref": "HardwareInfo",
          "description": "Detailed information about the device hardware."
        },
        "hardwareStatusSamples": {
          "description": "Hardware status samples in chronological order. This information is only available if hardwareStatusEnabled is true in the device's policy.",
          "items": {
            "$ref": "HardwareStatus"
          },
          "type": "array"
        },
        "lastPolicyComplianceReportTime": {
          "description": "The last time the device sent a policy compliance report. Important: This field is deprecated. The timestamp will be on last_status_report_time field, and last_status_report_time will be used for both status report and compliance report.",
          "format": "google-datetime",
          "type": "string"
        },
        "lastPolicySyncTime": {
          "description": "The last time the device fetched its policy.",
          "format": "google-datetime",
          "type": "string"
        },
        "lastStatusReportTime": {
          "description": "The last time the device sent a status report.",
          "format": "google-datetime",
          "type": "string"
        },
        "managementMode": {
          "description": "The type of management mode Android Device Policy takes on the device. This influences which policy settings are supported.",
          "enum": [
            "MANAGEMENT_MODE_UNSPECIFIED",
            "DEVICE_OWNER",
            "PROFILE_OWNER"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "Device owner. Android Device Policy has full control over the device.",
            "Profile owner. Android Device Policy has control over a managed profile on the device."
          ],
          "type": "string"
        },
        "memoryEvents": {
          "description": "Events related to memory and storage measurements in chronological order. This information is only available if memoryInfoEnabled is true in the device's policy.",
          "items": {
            "$ref": "MemoryEvent"
          },
          "type": "array"
        },
        "memoryInfo": {
          "$ref": "MemoryInfo",
          "description": "Memory information. This information is only available if memoryInfoEnabled is true in the device's policy."
        },
        "name": {
          "description": "The name of the device in the form enterprises/{enterpriseId}/devices/{deviceId}.",
          "type": "string"
        },
        "networkInfo": {
          "$ref": "NetworkInfo",
          "description": "Device network information. This information is only available if networkInfoEnabled is true in the device's policy."
        },
        "nonComplianceDetails": {
          "description": "Details about policy settings that the device is not compliant with.",
          "items": {
            "$ref": "NonComplianceDetail"
          },
          "type": "array"
        },
        "policyCompliant": {
          "description": "Whether the device is compliant with its policy.",
          "type": "boolean"
        },
        "policyName": {
          "description": "The name of the policy applied to the device, in the form enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the device's user is applied. This field can be modified by a patch request. You can specify only the policyId when calling enterprises.devices.patch, as long as the policyId doesn’t contain any slashes. The rest of the policy name is inferred.",
          "type": "string"
        },
        "powerManagementEvents": {
          "description": "Power management events on the device in chronological order. This information is only available if powerManagementEventsEnabled is true in the device's policy.",
          "items": {
            "$ref": "PowerManagementEvent"
          },
          "type": "array"
        },
        "previousDeviceNames": {
          "description": "If the same physical device has been enrolled multiple times, this field contains its previous device names. The serial number is used as the unique identifier to determine if the same physical device has enrolled previously. The names are in chronological order.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "softwareInfo": {
          "$ref": "SoftwareInfo",
          "description": "Detailed information about the device software. This information is only available if softwareInfoEnabled is true in the device's policy."
        },
        "state": {
          "description": "The state to be applied to the device. This field can be modified by a patch request. Note that when calling enterprises.devices.patch, ACTIVE and DISABLED are the only allowable values. To enter the device into a DELETED state, call enterprises.devices.delete.",
          "enum": [
            "DEVICE_STATE_UNSPECIFIED",
            "ACTIVE",
            "DISABLED",
            "DELETED",
            "PROVISIONING"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "The device is active.",
            "The device is disabled.",
            "The device was deleted. This state will never be returned by an API call, but is used in the final policy compliance report published to Cloud Pub/Sub when the device acknowledges the deletion.",
            "The device is being provisioned. Newly enrolled devices are in this state until they have a policy applied."
          ],
          "type": "string"
        },
        "userName": {
          "description": "The resource name of the user that owns this device in the form enterprises/{enterpriseId}/users/{userId}.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DeviceSettings": {
      "description": "Information about security related device settings on device.",
      "id": "DeviceSettings",
      "properties": {
        "adbEnabled": {
          "description": "Whether ADB (https://developer.android.com/studio/command-line/adb.html) is enabled on the device.",
          "type": "boolean"
        },
        "developmentSettingsEnabled": {
          "description": "Whether developer mode is enabled on the device.",
          "type": "boolean"
        },
        "encryptionStatus": {
          "description": "Encryption status from DevicePolicyManager.",
          "enum": [
            "ENCRYPTION_STATUS_UNSPECIFIED",
            "UNSUPPORTED",
            "INACTIVE",
            "ACTIVATING",
            "ACTIVE",
            "ACTIVE_DEFAULT_KEY",
            "ACTIVE_PER_USER"
          ],
          "enumDescriptions": [
            "Unspecified. No device should have this type.",
            "Encryption is not supported by the device.",
            "Encryption is supported by the device, but is not currently active.",
            "Encryption is not currently active, but is currently being activated.",
            "Encryption is active.",
            "Encryption is active, but an encryption key is not set by the user.",
            "Encryption is active, and the encryption key is tied to the user profile."
          ],
          "type": "string"
        },
        "isDeviceSecure": {
          "description": "Whether the device is secured with PIN/password.",
          "type": "boolean"
        },
        "isEncrypted": {
          "description": "Whether the storage encryption is enabled.",
          "type": "boolean"
        },
        "unknownSourcesEnabled": {
          "description": "Whether installing apps from unknown sources is enabled.",
          "type": "boolean"
        },
        "verifyAppsEnabled": {
          "description": "Whether Verify Apps (Google Play Protect (https://support.google.com/googleplay/answer/2812853)) is enabled on the device.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "Display": {
      "description": "Device display information.",
      "id": "Display",
      "properties": {
        "density": {
          "description": "Display density expressed as dots-per-inch.",
          "format": "int32",
          "type": "integer"
        },
        "displayId": {
          "description": "Unique display id.",
          "format": "int32",
          "type": "integer"
        },
        "height": {
          "description": "Display height in pixels.",
          "format": "int32",
          "type": "integer"
        },
        "name": {
          "description": "Name of the display.",
          "type": "string"
        },
        "refreshRate": {
          "description": "Refresh rate of the display in frames per second.",
          "format": "int32",
          "type": "integer"
        },
        "state": {
          "description": "State of the display.",
          "enum": [
            "DISPLAY_STATE_UNSPECIFIED",
            "OFF",
            "ON",
            "DOZE",
            "SUSPENDED"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "Display is off.",
            "Display is on.",
            "Display is dozing in a low power state",
            "Display is dozing in a suspended low power state."
          ],
          "type": "string"
        },
        "width": {
          "description": "Display width in pixels.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance:\nservice Foo {\n  rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n}\nThe JSON representation for Empty is empty JSON object {}.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "EnrollmentToken": {
      "description": "An enrollment token.",
      "id": "EnrollmentToken",
      "properties": {
        "additionalData": {
          "description": "Optional, arbitrary data associated with the enrollment token. This could contain, for example, the ID of an org unit the device is assigned to after enrollment. After a device enrolls with the token, this data will be exposed in the enrollment_token_data field of the Device resource. The data must be 1024 characters or less; otherwise, the creation request will fail.",
          "type": "string"
        },
        "duration": {
          "description": "The length of time the enrollment token is valid, ranging from 1 minute to 30 days. If not specified, the default duration is 1 hour.",
          "format": "google-duration",
          "type": "string"
        },
        "expirationTimestamp": {
          "description": "The expiration time of the token. This is a read-only field generated by the server.",
          "format": "google-datetime",
          "type": "string"
        },
        "name": {
          "description": "The name of the enrollment token, which is generated by the server during creation, in the form enterprises/{enterpriseId}/enrollmentTokens/{enrollmentTokenId}.",
          "type": "string"
        },
        "oneTimeOnly": {
          "description": "Whether the enrollment token is for one time use only. If the flag is set to true, only one device can use it for registration.",
          "type": "boolean"
        },
        "policyName": {
          "description": "The name of the policy initially applied to the enrolled device, in the form enterprises/{enterpriseId}/policies/{policyId}. If not specified, the policy_name for the device’s user is applied. If user_name is also not specified, enterprises/{enterpriseId}/policies/default is applied by default. When updating this field, you can specify only the policyId as long as the policyId doesn’t contain any slashes. The rest of the policy name will be inferred.",
          "type": "string"
        },
        "qrCode": {
          "description": "A JSON string whose UTF-8 representation can be used to generate a QR code to enroll a device with this enrollment token. To enroll a device using NFC, the NFC record must contain a serialized java.util.Properties representation of the properties in the JSON.",
          "type": "string"
        },
        "value": {
          "description": "The token value that's passed to the device and authorizes the device to enroll. This is a read-only field generated by the server.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Enterprise": {
      "description": "The configuration applied to an enterprise.",
      "id": "Enterprise",
      "properties": {
        "appAutoApprovalEnabled": {
          "description": "Deprecated and unused.",
          "type": "boolean"
        },
        "enabledNotificationTypes": {
          "description": "The types of Google Pub/Sub notifications enabled for the enterprise.",
          "enumDescriptions": [
            "This value is ignored.",
            "A notification sent when a device enrolls.",
            "A notification sent when a device issues a policy compliance report. Important: This enum value is deprecated. The notification will be sent as STATUS_REPORT.",
            "A notification sent when a device issues a status report.",
            "A notification sent when a device command has completed."
          ],
          "items": {
            "enum": [
              "NOTIFICATION_TYPE_UNSPECIFIED",
              "ENROLLMENT",
              "COMPLIANCE_REPORT",
              "STATUS_REPORT",
              "COMMAND"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "enterpriseDisplayName": {
          "description": "The name of the enterprise displayed to users.",
          "type": "string"
        },
        "logo": {
          "$ref": "ExternalData",
          "description": "An image displayed as a logo during device provisioning. Supported types are: image/bmp, image/gif, image/x-ico, image/jpeg, image/png, image/webp, image/vnd.wap.wbmp, image/x-adobe-dng."
        },
        "name": {
          "description": "The name of the enterprise which is generated by the server during creation, in the form enterprises/{enterpriseId}.",
          "type": "string"
        },
        "primaryColor": {
          "description": "A color in RGB format that indicates the predominant color to display in the device management app UI. The color components are stored as follows: (red \u003c\u003c 16) | (green \u003c\u003c 8) | blue, where the value of each component is between 0 and 255, inclusive.",
          "format": "int32",
          "type": "integer"
        },
        "pubsubTopic": {
          "description": "The topic that Cloud Pub/Sub notifications are published to, in the form projects/{project}/topics/{topic}. This field is only required if Pub/Sub notifications are enabled.",
          "type": "string"
        },
        "termsAndConditions": {
          "description": "Terms and conditions that must be accepted when provisioning a device for this enterprise. A page of terms is generated for each value in this list.",
          "items": {
            "$ref": "TermsAndConditions"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ExternalData": {
      "description": "Data hosted at an external location. The data is to be downloaded by Android Device Policy and verified against the hash.",
      "id": "ExternalData",
      "properties": {
        "sha256Hash": {
          "description": "The base-64 encoded SHA-256 hash of the content hosted at url. If the content doesn't match this hash, Android Device Policy won't use the data.",
          "type": "string"
        },
        "url": {
          "description": "The absolute URL to the data, which must use either the http or https scheme. Android Device Policy doesn't provide any credentials in the GET request, so the URL must be publicly accessible. Including a long, random component in the URL may be used to prevent attackers from discovering the URL.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "HardwareInfo": {
      "description": "Information about device hardware. The fields related to temperature thresholds are only available if hardwareStatusEnabled is true in the device's policy.",
      "id": "HardwareInfo",
      "properties": {
        "batteryShutdownTemperatures": {
          "description": "Battery shutdown temperature thresholds in Celsius for each battery on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "batteryThrottlingTemperatures": {
          "description": "Battery throttling temperature thresholds in Celsius for each battery on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "brand": {
          "description": "Brand of the device. For example, Google.",
          "type": "string"
        },
        "cpuShutdownTemperatures": {
          "description": "CPU shutdown temperature thresholds in Celsius for each CPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "cpuThrottlingTemperatures": {
          "description": "CPU throttling temperature thresholds in Celsius for each CPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "deviceBasebandVersion": {
          "description": "Baseband version. For example, MDM9625_104662.22.05.34p.",
          "type": "string"
        },
        "gpuShutdownTemperatures": {
          "description": "GPU shutdown temperature thresholds in Celsius for each GPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "gpuThrottlingTemperatures": {
          "description": "GPU throttling temperature thresholds in Celsius for each GPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "hardware": {
          "description": "Name of the hardware. For example, Angler.",
          "type": "string"
        },
        "manufacturer": {
          "description": "Manufacturer. For example, Motorola.",
          "type": "string"
        },
        "model": {
          "description": "The model of the device. For example, Asus Nexus 7.",
          "type": "string"
        },
        "serialNumber": {
          "description": "The device serial number.",
          "type": "string"
        },
        "skinShutdownTemperatures": {
          "description": "Device skin shutdown temperature thresholds in Celsius.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "skinThrottlingTemperatures": {
          "description": "Device skin throttling temperature thresholds in Celsius.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "HardwareStatus": {
      "description": "Hardware status. Temperatures may be compared to the temperature thresholds available in hardwareInfo to determine hardware health.",
      "id": "HardwareStatus",
      "properties": {
        "batteryTemperatures": {
          "description": "Current battery temperatures in Celsius for each battery on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "cpuTemperatures": {
          "description": "Current CPU temperatures in Celsius for each CPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "cpuUsages": {
          "description": "CPU usages in percentage for each core available on the device. Usage is 0 for each unplugged core. Empty array implies that CPU usage is not supported in the system.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "createTime": {
          "description": "The time the measurements were taken.",
          "format": "google-datetime",
          "type": "string"
        },
        "fanSpeeds": {
          "description": "Fan speeds in RPM for each fan on the device. Empty array means that there are no fans or fan speed is not supported on the system.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "gpuTemperatures": {
          "description": "Current GPU temperatures in Celsius for each GPU on the device.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        },
        "skinTemperatures": {
          "description": "Current device skin temperatures in Celsius.",
          "items": {
            "format": "float",
            "type": "number"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ListDevicesResponse": {
      "description": "Response to a request to list devices for a given enterprise.",
      "id": "ListDevicesResponse",
      "properties": {
        "devices": {
          "description": "The list of devices.",
          "items": {
            "$ref": "Device"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "If there are more results, a token to retrieve next page of results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListOperationsResponse": {
      "description": "The response message for Operations.ListOperations.",
      "id": "ListOperationsResponse",
      "properties": {
        "nextPageToken": {
          "description": "The standard List next-page token.",
          "type": "string"
        },
        "operations": {
          "description": "A list of operations that matches the specified filter in the request.",
          "items": {
            "$ref": "Operation"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ListPoliciesResponse": {
      "description": "Response to a request to list policies for a given enterprise.",
      "id": "ListPoliciesResponse",
      "properties": {
        "nextPageToken": {
          "description": "If there are more results, a token to retrieve next page of results.",
          "type": "string"
        },
        "policies": {
          "description": "The list of policies.",
          "items": {
            "$ref": "Policy"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ManagedProperty": {
      "description": "Managed property.",
      "id": "ManagedProperty",
      "properties": {
        "defaultValue": {
          "description": "The default value of the property. BUNDLE_ARRAY properties don't have a default value.",
          "type": "any"
        },
        "description": {
          "description": "A longer description of the property, providing more detail of what it affects. Localized.",
          "type": "string"
        },
        "entries": {
          "description": "For CHOICE or MULTISELECT properties, the list of possible entries.",
          "items": {
            "$ref": "ManagedPropertyEntry"
          },
          "type": "array"
        },
        "key": {
          "description": "The unique key that the app uses to identify the property, e.g. \"com.google.android.gm.fieldname\".",
          "type": "string"
        },
        "nestedProperties": {
          "description": "For BUNDLE_ARRAY properties, the list of nested properties. A BUNDLE_ARRAY property is at most two levels deep.",
          "items": {
            "$ref": "ManagedProperty"
          },
          "type": "array"
        },
        "title": {
          "description": "The name of the property. Localized.",
          "type": "string"
        },
        "type": {
          "description": "The type of the property.",
          "enum": [
            "MANAGED_PROPERTY_TYPE_UNSPECIFIED",
            "BOOL",
            "STRING",
            "INTEGER",
            "CHOICE",
            "MULTISELECT",
            "HIDDEN",
            "BUNDLE_ARRAY"
          ],
          "enumDescriptions": [
            "Not used.",
            "A property of boolean type.",
            "A property of string type.",
            "A property of integer type.",
            "A choice of one item from a set.",
            "A choice of multiple items from a set.",
            "A hidden restriction of string type (the default value can be used to pass along information that can't be modified, such as a version code).",
            "An array of property bundles."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ManagedPropertyEntry": {
      "description": "An entry of a managed property.",
      "id": "ManagedPropertyEntry",
      "properties": {
        "name": {
          "description": "The human-readable name of the value. Localized.",
          "type": "string"
        },
        "value": {
          "description": "The machine-readable value of the entry, which should be used in the configuration. Not localized.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "MemoryEvent": {
      "description": "An event related to memory and storage measurements.",
      "id": "MemoryEvent",
      "properties": {
        "byteCount": {
          "description": "The number of free bytes in the medium, or for EXTERNAL_STORAGE_DETECTED, the total capacity in bytes of the storage medium.",
          "format": "int64",
          "type": "string"
        },
        "createTime": {
          "description": "The creation time of the event.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventType": {
          "description": "Event type.",
          "enum": [
            "MEMORY_EVENT_TYPE_UNSPECIFIED",
            "RAM_MEASURED",
            "INTERNAL_STORAGE_MEASURED",
            "EXTERNAL_STORAGE_DETECTED",
            "EXTERNAL_STORAGE_REMOVED",
            "EXTERNAL_STORAGE_MEASURED"
          ],
          "enumDescriptions": [
            "Unspecified. No events have this type.",
            "Free space in RAM was measured.",
            "Free space in internal storage was measured.",
            "A new external storage medium was detected. The reported byte count is the total capacity of the storage medium.",
            "An external storage medium was removed. The reported byte count is zero.",
            "Free space in an external storage medium was measured."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "MemoryInfo": {
      "description": "Information about device memory and storage.",
      "id": "MemoryInfo",
      "properties": {
        "totalInternalStorage": {
          "description": "Total internal storage on device in bytes.",
          "format": "int64",
          "type": "string"
        },
        "totalRam": {
          "description": "Total RAM on device in bytes.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "NetworkInfo": {
      "description": "Device network info.",
      "id": "NetworkInfo",
      "properties": {
        "imei": {
          "description": "IMEI number of the GSM device. For example, A1000031212.",
          "type": "string"
        },
        "meid": {
          "description": "MEID number of the CDMA device. For example, A00000292788E1.",
          "type": "string"
        },
        "networkOperatorName": {
          "description": "Alphabetic name of current registered operator. For example, Vodafone.",
          "type": "string"
        },
        "wifiMacAddress": {
          "description": "Wi-Fi MAC address of the device. For example, 7c:11:11:11:11:11.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "NonComplianceDetail": {
      "description": "Provides detail about non-compliance with a policy setting.",
      "id": "NonComplianceDetail",
      "properties": {
        "currentValue": {
          "description": "If the policy setting could not be applied, the current value of the setting on the device.",
          "type": "any"
        },
        "fieldPath": {
          "description": "For settings with nested fields, if a particular nested field is out of compliance, this specifies the full path to the offending field. The path is formatted in the same way the policy JSON field would be referenced in JavaScript, that is: 1) For object-typed fields, the field name is followed by a dot then by a  subfield name. 2) For array-typed fields, the field name is followed by the array index  enclosed in brackets. For example, to indicate a problem with the url field in the externalData field in the 3rd application, the path would be applications[2].externalData.url",
          "type": "string"
        },
        "installationFailureReason": {
          "description": "If package_name is set and the non-compliance reason is APP_NOT_INSTALLED or APP_NOT_UPDATED, the detailed reason the app can't be installed or updated.",
          "enum": [
            "INSTALLATION_FAILURE_REASON_UNSPECIFIED",
            "INSTALLATION_FAILURE_REASON_UNKNOWN",
            "IN_PROGRESS",
            "NOT_FOUND",
            "NOT_COMPATIBLE_WITH_DEVICE",
            "NOT_APPROVED",
            "PERMISSIONS_NOT_ACCEPTED",
            "NOT_AVAILABLE_IN_COUNTRY",
            "NO_LICENSES_REMAINING",
            "NOT_ENROLLED",
            "USER_INVALID"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "An unknown condition is preventing the app from being installed. Some potential reasons are that the device doesn't have enough storage, the device network connection is unreliable, or the installation is taking longer than expected. The installation will be retried automatically.",
            "The installation is still in progress.",
            "The app was not found in Play.",
            "The app is incompatible with the device.",
            "The app has not been approved by the admin.",
            "The app has new permissions that have not been accepted by the admin.",
            "The app is not available in the user's country.",
            "There are no licenses available to assign to the user.",
            "The enterprise is no longer enrolled with managed Play or Android Device Policy is not enabled for the enterprise.",
            "The user is no longer valid. The user may have been deleted or disabled."
          ],
          "type": "string"
        },
        "nonComplianceReason": {
          "description": "The reason the device is not in compliance with the setting.",
          "enum": [
            "NON_COMPLIANCE_REASON_UNSPECIFIED",
            "API_LEVEL",
            "MANAGEMENT_MODE",
            "USER_ACTION",
            "INVALID_VALUE",
            "APP_NOT_INSTALLED",
            "UNSUPPORTED",
            "APP_INSTALLED",
            "PENDING",
            "APP_INCOMPATIBLE",
            "APP_NOT_UPDATED"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "The setting is not supported in the API level of the Android version running on the device.",
            "The management mode (profile owner, device owner, etc.) doesn't support the setting.",
            "The user has not taken required action to comply with the setting.",
            "The setting has an invalid value.",
            "The app required to implement the policy is not installed.",
            "The policy is not supported by the version of Android Device Policy on the device.",
            "A blocked app is installed.",
            "The setting hasn't been applied at the time of the report, but is expected to be applied shortly.",
            "The setting can't be applied to the app because the app doesn't support it, for example because its target SDK version is not high enough.",
            "The app is installed, but it hasn't been updated to the minimum version code specified by policy."
          ],
          "type": "string"
        },
        "packageName": {
          "description": "The package name indicating which app is out of compliance, if applicable.",
          "type": "string"
        },
        "settingName": {
          "description": "The name of the policy setting. This is the JSON field name of a top-level Policy  field.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "NonComplianceDetailCondition": {
      "description": "A compliance rule condition which is satisfied if there exists any matching NonComplianceDetail for the device. A NonComplianceDetail matches a NonComplianceDetailCondition if all the fields which are set within the NonComplianceDetailCondition match the corresponding NonComplianceDetail fields.",
      "id": "NonComplianceDetailCondition",
      "properties": {
        "nonComplianceReason": {
          "description": "The reason the device is not in compliance with the setting. If not set, then this condition matches any reason.",
          "enum": [
            "NON_COMPLIANCE_REASON_UNSPECIFIED",
            "API_LEVEL",
            "MANAGEMENT_MODE",
            "USER_ACTION",
            "INVALID_VALUE",
            "APP_NOT_INSTALLED",
            "UNSUPPORTED",
            "APP_INSTALLED",
            "PENDING",
            "APP_INCOMPATIBLE",
            "APP_NOT_UPDATED"
          ],
          "enumDescriptions": [
            "This value is disallowed.",
            "The setting is not supported in the API level of the Android version running on the device.",
            "The management mode (profile owner, device owner, etc.) doesn't support the setting.",
            "The user has not taken required action to comply with the setting.",
            "The setting has an invalid value.",
            "The app required to implement the policy is not installed.",
            "The policy is not supported by the version of Android Device Policy on the device.",
            "A blocked app is installed.",
            "The setting hasn't been applied at the time of the report, but is expected to be applied shortly.",
            "The setting can't be applied to the app because the app doesn't support it, for example because its target SDK version is not high enough.",
            "The app is installed, but it hasn't been updated to the minimum version code specified by policy."
          ],
          "type": "string"
        },
        "packageName": {
          "description": "The package name of the app that's out of compliance. If not set, then this condition matches any package name.",
          "type": "string"
        },
        "settingName": {
          "description": "The name of the policy setting. This is the JSON field name of a top-level Policy field. If not set, then this condition matches any setting name.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Operation": {
      "description": "This resource represents a long-running operation that is the result of a network API call.",
      "id": "Operation",
      "properties": {
        "done": {
          "description": "If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.",
          "type": "boolean"
        },
        "error": {
          "$ref": "Status",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should have the format of operations/some/unique/name.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "PackageNameList": {
      "description": "A list of package names.",
      "id": "PackageNameList",
      "properties": {
        "packageNames": {
          "description": "A list of package names.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "PasswordRequirements": {
      "description": "Requirements for the password used to unlock a device.",
      "id": "PasswordRequirements",
      "properties": {
        "maximumFailedPasswordsForWipe": {
          "description": "Number of incorrect device-unlock passwords that can be entered before a device is wiped. A value of 0 means there is no restriction.",
          "format": "int32",
          "type": "integer"
        },
        "passwordExpirationTimeout": {
          "description": "Password expiration timeout.",
          "format": "google-duration",
          "type": "string"
        },
        "passwordHistoryLength": {
          "description": "The length of the password history. After setting this field, the user won't be able to enter a new password that is the same as any password in the history. A value of 0 means there is no restriction.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumLength": {
          "description": "The minimum allowed password length. A value of 0 means there is no restriction. Only enforced when password_quality is NUMERIC, NUMERIC_COMPLEX, ALPHABETIC, ALPHANUMERIC, or COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumLetters": {
          "description": "Minimum number of letters required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumLowerCase": {
          "description": "Minimum number of lower case letters required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumNonLetter": {
          "description": "Minimum number of non-letter characters (numerical digits or symbols) required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumNumeric": {
          "description": "Minimum number of numerical digits required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumSymbols": {
          "description": "Minimum number of symbols required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordMinimumUpperCase": {
          "description": "Minimum number of upper case letters required in the password. Only enforced when password_quality is COMPLEX.",
          "format": "int32",
          "type": "integer"
        },
        "passwordQuality": {
          "description": "The required password quality.",
          "enum": [
            "PASSWORD_QUALITY_UNSPECIFIED",
            "BIOMETRIC_WEAK",
            "SOMETHING",
            "NUMERIC",
            "NUMERIC_COMPLEX",
            "ALPHABETIC",
            "ALPHANUMERIC",
            "COMPLEX"
          ],
          "enumDescriptions": [
            "There are no password requirements.",
            "The device must be secured with a low-security biometric recognition technology, at minimum. This includes technologies that can recognize the identity of an individual that are roughly equivalent to a 3-digit PIN (false detection is less than 1 in 1,000).",
            "A password is required, but there are no restrictions on what the password must contain.",
            "The password must contain numeric characters.",
            "The password must contain numeric characters with no repeating (4444) or ordered (1234, 4321, 2468) sequences.",
            "The password must contain alphabetic (or symbol) characters.",
            "The password must contain both numeric and alphabetic (or symbol) characters.",
            "The password must contain at least a letter, a numerical digit and a special symbol. Other password constraints, for example, password_minimum_letters are enforced."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "PermissionGrant": {
      "description": "Configuration for an Android permission and its grant state.",
      "id": "PermissionGrant",
      "properties": {
        "permission": {
          "description": "The android permission or group, e.g. android.permission.READ_CALENDAR or android.permission_group.CALENDAR.",
          "type": "string"
        },
        "policy": {
          "description": "The policy for granting the permission.",
          "enum": [
            "PERMISSION_POLICY_UNSPECIFIED",
            "PROMPT",
            "GRANT",
            "DENY"
          ],
          "enumDescriptions": [
            "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.",
            "Prompt the user to grant a permission.",
            "Automatically grant a permission.",
            "Automatically deny a permission."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "PersistentPreferredActivity": {
      "description": "A default activity for handling intents that match a particular intent filter.",
      "id": "PersistentPreferredActivity",
      "properties": {
        "actions": {
          "description": "The intent actions to match in the filter. If any actions are included in the filter, then an intent's action must be one of those values for it to match. If no actions are included, the intent action is ignored.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "categories": {
          "description": "The intent categories to match in the filter. An intent includes the categories that it requires, all of which must be included in the filter in order to match. In other words, adding a category to the filter has no impact on matching unless that category is specified in the intent.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "receiverActivity": {
          "description": "The activity that should be the default intent handler. This should be an Android component name, e.g. com.android.enterprise.app/.MainActivity. Alternatively, the value may be the package name of an app, which causes Android Device Policy to choose an appropriate activity from the app to handle the intent.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Policy": {
      "description": "A policy resources represents a group settings that govern the behavior of a managed device and the apps installed on it.",
      "id": "Policy",
      "properties": {
        "accountTypesWithManagementDisabled": {
          "description": "Account types that can't be managed by the user.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "addUserDisabled": {
          "description": "Whether adding new users and profiles is disabled.",
          "type": "boolean"
        },
        "adjustVolumeDisabled": {
          "description": "Whether adjusting the master volume is disabled.",
          "type": "boolean"
        },
        "alwaysOnVpnPackage": {
          "$ref": "AlwaysOnVpnPackage",
          "description": "Configuration for an always-on VPN connection. Use with vpn_config_disabled to prevent modification of this setting."
        },
        "androidDevicePolicyTracks": {
          "description": "The app tracks for Android Device Policy the device can access. The device receives the latest version among all accessible tracks. If no tracks are specified, then the device only uses the production track.",
          "enumDescriptions": [
            "This value is ignored.",
            "The production track, which provides the latest stable release.",
            "The beta track, which provides the latest beta release."
          ],
          "items": {
            "enum": [
              "APP_TRACK_UNSPECIFIED",
              "PRODUCTION",
              "BETA"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "appAutoUpdatePolicy": {
          "description": "The app auto update policy, which controls when automatic app updates can be applied.",
          "enum": [
            "APP_AUTO_UPDATE_POLICY_UNSPECIFIED",
            "CHOICE_TO_THE_USER",
            "NEVER",
            "WIFI_ONLY",
            "ALWAYS"
          ],
          "enumDescriptions": [
            "The auto-update policy is not set. Equivalent to CHOICE_TO_THE_USER.",
            "The user can control auto-updates.",
            "Apps are never auto-updated.",
            "Apps are auto-updated over Wi-Fi only.",
            "Apps are auto-updated at any time. Data charges may apply."
          ],
          "type": "string"
        },
        "applications": {
          "description": "Policy applied to apps.",
          "items": {
            "$ref": "ApplicationPolicy"
          },
          "type": "array"
        },
        "autoTimeRequired": {
          "description": "Whether auto time is required, which prevents the user from manually setting the date and time.",
          "type": "boolean"
        },
        "blockApplicationsEnabled": {
          "description": "Whether applications other than the ones configured in applications are blocked from being installed. When set, applications that were installed under a previous policy but no longer appear in the policy are automatically uninstalled.",
          "type": "boolean"
        },
        "bluetoothConfigDisabled": {
          "description": "Whether configuring bluetooth is disabled.",
          "type": "boolean"
        },
        "bluetoothContactSharingDisabled": {
          "description": "Whether bluetooth contact sharing is disabled.",
          "type": "boolean"
        },
        "bluetoothDisabled": {
          "description": "Whether bluetooth is disabled. Prefer this setting over bluetooth_config_disabled because bluetooth_config_disabled can be bypassed by the user.",
          "type": "boolean"
        },
        "cameraDisabled": {
          "description": "Whether all cameras on the device are disabled.",
          "type": "boolean"
        },
        "cellBroadcastsConfigDisabled": {
          "description": "Whether configuring cell broadcast is disabled.",
          "type": "boolean"
        },
        "choosePrivateKeyRules": {
          "description": "Rules for automatically choosing a private key and certificate to authenticate the device to a server. The rules are ordered by increasing precedence, so if an outgoing request matches more than one rule, the last rule defines which private key to use.",
          "items": {
            "$ref": "ChoosePrivateKeyRule"
          },
          "type": "array"
        },
        "complianceRules": {
          "description": "Rules declaring which mitigating actions to take when a device is not compliant with its policy. When the conditions for multiple rules are satisfied, all of the mitigating actions for the rules are taken. There is a maximum limit of 100 rules.",
          "items": {
            "$ref": "ComplianceRule"
          },
          "type": "array"
        },
        "createWindowsDisabled": {
          "description": "Whether creating windows besides app windows is disabled.",
          "type": "boolean"
        },
        "credentialsConfigDisabled": {
          "description": "Whether configuring user credentials is disabled.",
          "type": "boolean"
        },
        "dataRoamingDisabled": {
          "description": "Whether roaming data services are disabled.",
          "type": "boolean"
        },
        "debuggingFeaturesAllowed": {
          "description": "Whether the user is allowed to enable debugging features.",
          "type": "boolean"
        },
        "defaultPermissionPolicy": {
          "description": "The default permission policy for runtime permission requests.",
          "enum": [
            "PERMISSION_POLICY_UNSPECIFIED",
            "PROMPT",
            "GRANT",
            "DENY"
          ],
          "enumDescriptions": [
            "Policy not specified. If no policy is specified for a permission at any level, then the PROMPT behavior is used by default.",
            "Prompt the user to grant a permission.",
            "Automatically grant a permission.",
            "Automatically deny a permission."
          ],
          "type": "string"
        },
        "deviceOwnerLockScreenInfo": {
          "$ref": "UserFacingMessage",
          "description": "The device owner information to be shown on the lock screen."
        },
        "encryptionPolicy": {
          "description": "Whether encryption is enabled",
          "enum": [
            "ENCRYPTION_POLICY_UNSPECIFIED",
            "ENABLED_WITHOUT_PASSWORD",
            "ENABLED_WITH_PASSWORD"
          ],
          "enumDescriptions": [
            "This value is ignored, i.e. no encryption required",
            "Encryption required but no password required to boot",
            "Encryption required with password required to boot"
          ],
          "type": "string"
        },
        "ensureVerifyAppsEnabled": {
          "description": "Whether app verification is force-enabled.",
          "type": "boolean"
        },
        "factoryResetDisabled": {
          "description": "Whether factory resetting from settings is disabled.",
          "type": "boolean"
        },
        "frpAdminEmails": {
          "description": "Email addresses of device administrators for factory reset protection. When the device is factory reset, it will require one of these admins to log in with the Google account email and password to unlock the device. If no admins are specified, the device won't provide factory reset protection.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "funDisabled": {
          "description": "Whether the user is allowed to have fun. Controls whether the Easter egg game in Settings is disabled.",
          "type": "boolean"
        },
        "installAppsDisabled": {
          "description": "Whether user installation of apps is disabled.",
          "type": "boolean"
        },
        "installUnknownSourcesAllowed": {
          "description": "Whether the user is allowed to enable the \"Unknown Sources\" setting, which allows installation of apps from unknown sources.",
          "type": "boolean"
        },
        "keyguardDisabled": {
          "description": "Whether the keyguard is disabled.",
          "type": "boolean"
        },
        "keyguardDisabledFeatures": {
          "description": "Disabled keyguard customizations, such as widgets.",
          "enumDescriptions": [
            "This value is ignored.",
            "Disable the camera on secure keyguard screens (e.g. PIN).",
            "Disable showing all notifications on secure keyguard screens.",
            "Disable unredacted notifications on secure keyguard screens.",
            "Ignore trust agent state on secure keyguard screens.",
            "Disable fingerprint sensor on keyguard secure screens.",
            "Disable text entry into notifications on secure keyguard screens.",
            "Disable all current and future keyguard customizations."
          ],
          "items": {
            "enum": [
              "KEYGUARD_DISABLED_FEATURE_UNSPECIFIED",
              "CAMERA",
              "NOTIFICATIONS",
              "UNREDACTED_NOTIFICATIONS",
              "TRUST_AGENTS",
              "DISABLE_FINGERPRINT",
              "DISABLE_REMOTE_INPUT",
              "ALL_FEATURES"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "kioskCustomLauncherEnabled": {
          "description": "Whether the kiosk custom launcher is enabled. This replaces the home screen with a launcher that locks down the device to the apps installed via the applications setting. The apps appear on a single page in alphabetical order. It is recommended to also use status_bar_disabled to block access to device settings.",
          "type": "boolean"
        },
        "locationMode": {
          "description": "The degree of location detection enabled. The user may change the value unless the user is otherwise blocked from accessing device settings.",
          "enum": [
            "LOCATION_MODE_UNSPECIFIED",
            "HIGH_ACCURACY",
            "SENSORS_ONLY",
            "BATTERY_SAVING",
            "OFF"
          ],
          "enumDescriptions": [
            "The current device value is not modified.",
            "All location detection methods are enabled, including GPS, networks, and other sensors.",
            "Only GPS and other sensors are enabled.",
            "Only the network location provider is enabled.",
            "Location detection is disabled."
          ],
          "type": "string"
        },
        "longSupportMessage": {
          "$ref": "UserFacingMessage",
          "description": "A message displayed to the user in the device administators settings screen."
        },
        "maximumTimeToLock": {
          "description": "Maximum time in milliseconds for user activity until the device locks. A value of 0 means there is no restriction.",
          "format": "int64",
          "type": "string"
        },
        "mobileNetworksConfigDisabled": {
          "description": "Whether configuring mobile networks is disabled.",
          "type": "boolean"
        },
        "modifyAccountsDisabled": {
          "description": "Whether adding or removing accounts is disabled.",
          "type": "boolean"
        },
        "mountPhysicalMediaDisabled": {
          "description": "Whether the user mounting physical external media is disabled.",
          "type": "boolean"
        },
        "name": {
          "description": "The name of the policy in the form enterprises/{enterpriseId}/policies/{policyId}.",
          "type": "string"
        },
        "networkEscapeHatchEnabled": {
          "description": "Whether the network escape hatch is enabled. If a network connection can't be made at boot time, the escape hatch prompts the user to temporarily connect to a network in order to refresh the device policy. After applying policy, the temporary network will be forgotten and the device will continue booting. This prevents being unable to connect to a network if there is no suitable network in the last policy and the device boots into an app in lock task mode, or the user is otherwise unable to reach device settings.",
          "type": "boolean"
        },
        "networkResetDisabled": {
          "description": "Whether resetting network settings is disabled.",
          "type": "boolean"
        },
        "openNetworkConfiguration": {
          "additionalProperties": {
            "description": "Properties of the object.",
            "type": "any"
          },
          "description": "Network configuration for the device. See configure networks for more information.",
          "type": "object"
        },
        "outgoingBeamDisabled": {
          "description": "Whether using NFC to beam data from apps is disabled.",
          "type": "boolean"
        },
        "outgoingCallsDisabled": {
          "description": "Whether outgoing calls are disabled.",
          "type": "boolean"
        },
        "passwordRequirements": {
          "$ref": "PasswordRequirements",
          "description": "Password requirements."
        },
        "permissionGrants": {
          "description": "Explicit permission or group grants or denials for all apps. These values override the default_permission_policy.",
          "items": {
            "$ref": "PermissionGrant"
          },
          "type": "array"
        },
        "permittedInputMethods": {
          "$ref": "PackageNameList",
          "description": "If present, only the input methods provided by packages in this list are permitted. If this field is present, but the list is empty, then only system input methods are permitted."
        },
        "persistentPreferredActivities": {
          "description": "Default intent handler activities.",
          "items": {
            "$ref": "PersistentPreferredActivity"
          },
          "type": "array"
        },
        "privateKeySelectionEnabled": {
          "description": "Allows showing UI on a device for a user to choose a private key alias if there are no matching rules in ChoosePrivateKeyRules. For devices below Android P, setting this may leave enterprise keys vulnerable.",
          "type": "boolean"
        },
        "recommendedGlobalProxy": {
          "$ref": "ProxyInfo",
          "description": "The network-independent global HTTP proxy. Typically proxies should be configured per-network in open_network_configuration. However for unusual configurations like general internal filtering a global HTTP proxy may be useful. If the proxy is not accessible, network access may break. The global proxy is only a recommendation and some apps may ignore it."
        },
        "removeUserDisabled": {
          "description": "Whether removing other users is disabled.",
          "type": "boolean"
        },
        "safeBootDisabled": {
          "description": "Whether rebooting the device into safe boot is disabled.",
          "type": "boolean"
        },
        "screenCaptureDisabled": {
          "description": "Whether screen capture is disabled.",
          "type": "boolean"
        },
        "setUserIconDisabled": {
          "description": "Whether changing the user icon is disabled.",
          "type": "boolean"
        },
        "setWallpaperDisabled": {
          "description": "Whether changing the wallpaper is disabled.",
          "type": "boolean"
        },
        "shareLocationDisabled": {
          "description": "Whether location sharing is disabled.",
          "type": "boolean"
        },
        "shortSupportMessage": {
          "$ref": "UserFacingMessage",
          "description": "A message displayed to the user in the settings screen wherever functionality has been disabled by the admin."
        },
        "skipFirstUseHintsEnabled": {
          "description": "Flag to skip hints on the first use. Enterprise admin can enable the system recommendation for apps to skip their user tutorial and other introductory hints on first start-up.",
          "type": "boolean"
        },
        "smsDisabled": {
          "description": "Whether sending and receiving SMS messages is disabled.",
          "type": "boolean"
        },
        "statusBarDisabled": {
          "description": "Whether the status bar is disabled. This disables notifications, quick settings, and other screen overlays that allow escape from full-screen mode.",
          "type": "boolean"
        },
        "statusReportingSettings": {
          "$ref": "StatusReportingSettings",
          "description": "Status reporting settings"
        },
        "stayOnPluggedModes": {
          "description": "The battery plugged in modes for which the device stays on. When using this setting, it is recommended to clear maximum_time_to_lock so that the device doesn't lock itself while it stays on.",
          "enumDescriptions": [
            "This value is ignored.",
            "Power source is an AC charger.",
            "Power source is a USB port.",
            "Power source is wireless."
          ],
          "items": {
            "enum": [
              "BATTERY_PLUGGED_MODE_UNSPECIFIED",
              "AC",
              "USB",
              "WIRELESS"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "systemUpdate": {
          "$ref": "SystemUpdate",
          "description": "The system update policy, which controls how OS updates are applied. If the update type is WINDOWED, the update window will automatically apply to Play app updates as well."
        },
        "tetheringConfigDisabled": {
          "description": "Whether configuring tethering and portable hotspots is disabled.",
          "type": "boolean"
        },
        "uninstallAppsDisabled": {
          "description": "Whether user uninstallation of applications is disabled.",
          "type": "boolean"
        },
        "unmuteMicrophoneDisabled": {
          "description": "Whether the microphone is muted and adjusting microphone volume is disabled.",
          "type": "boolean"
        },
        "usbFileTransferDisabled": {
          "description": "Whether transferring files over USB is disabled.",
          "type": "boolean"
        },
        "usbMassStorageEnabled": {
          "description": "Whether USB storage is enabled.",
          "type": "boolean"
        },
        "version": {
          "description": "The version of the policy. This is a read-only field. The version is incremented each time the policy is updated.",
          "format": "int64",
          "type": "string"
        },
        "vpnConfigDisabled": {
          "description": "Whether configuring VPN is disabled.",
          "type": "boolean"
        },
        "wifiConfigDisabled": {
          "description": "Whether configuring Wi-Fi access points is disabled.",
          "type": "boolean"
        },
        "wifiConfigsLockdownEnabled": {
          "description": "Whether Wi-Fi networks defined in Open Network Configuration are locked so they can't be edited by the user.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "PowerManagementEvent": {
      "description": "A power management event.",
      "id": "PowerManagementEvent",
      "properties": {
        "batteryLevel": {
          "description": "For BATTERY_LEVEL_COLLECTED events, the battery level as a percentage.",
          "format": "float",
          "type": "number"
        },
        "createTime": {
          "description": "The creation time of the event.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventType": {
          "description": "Event type.",
          "enum": [
            "POWER_MANAGEMENT_EVENT_TYPE_UNSPECIFIED",
            "BATTERY_LEVEL_COLLECTED",
            "POWER_CONNECTED",
            "POWER_DISCONNECTED",
            "BATTERY_LOW",
            "BATTERY_OKAY",
            "BOOT_COMPLETED",
            "SHUTDOWN"
          ],
          "enumDescriptions": [
            "Unspecified. No events have this type.",
            "Battery level was measured.",
            "The device started charging.",
            "The device stopped charging.",
            "The device entered low-power mode.",
            "The device exited low-power mode.",
            "The device booted.",
            "The device shut down."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "ProxyInfo": {
      "description": "Configuration info for an HTTP proxy. For a direct proxy, set the host, port, and excluded_hosts fields. For a PAC script proxy, set the pac_uri field.",
      "id": "ProxyInfo",
      "properties": {
        "excludedHosts": {
          "description": "For a direct proxy, the hosts for which the proxy is bypassed. The host names may contain wildcards such as *.example.com.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "host": {
          "description": "The host of the direct proxy.",
          "type": "string"
        },
        "pacUri": {
          "description": "The URI of the PAC script used to configure the proxy.",
          "type": "string"
        },
        "port": {
          "description": "The port of the direct proxy.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "SignupUrl": {
      "description": "An enterprise signup URL.",
      "id": "SignupUrl",
      "properties": {
        "name": {
          "description": "The name of the resource. Use this value in the signupUrl field when calling enterprises.create to complete the enterprise signup flow.",
          "type": "string"
        },
        "url": {
          "description": "A URL where an enterprise admin can register their enterprise. The page can't be rendered in an iframe.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SoftwareInfo": {
      "description": "Information about device software.",
      "id": "SoftwareInfo",
      "properties": {
        "androidBuildNumber": {
          "description": "Android build ID string meant for displaying to the user. For example, shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys.",
          "type": "string"
        },
        "androidBuildTime": {
          "description": "Build time.",
          "format": "google-datetime",
          "type": "string"
        },
        "androidDevicePolicyVersionCode": {
          "description": "The Android Device Policy app version code.",
          "format": "int32",
          "type": "integer"
        },
        "androidDevicePolicyVersionName": {
          "description": "The Android Device Policy app version as displayed to the user.",
          "type": "string"
        },
        "androidVersion": {
          "description": "The user-visible Android version string. For example, 6.0.1.",
          "type": "string"
        },
        "bootloaderVersion": {
          "description": "The system bootloader version number, e.g. 0.6.7.",
          "type": "string"
        },
        "deviceBuildSignature": {
          "description": "SHA-256 hash of android.content.pm.Signature (https://developer.android.com/reference/android/content/pm/Signature.html) associated with the system package, which can be used to verify that the system build hasn't been modified.",
          "type": "string"
        },
        "deviceKernelVersion": {
          "description": "Kernel version, for example, 2.6.32.9-g103d848.",
          "type": "string"
        },
        "primaryLanguageCode": {
          "description": "An IETF BCP 47 language code for the primary locale on the device.",
          "type": "string"
        },
        "securityPatchLevel": {
          "description": "Security patch level, e.g. 2016-05-01.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Status": {
      "description": "The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC (https://github.com/grpc). The error model is designed to be:\nSimple to use and understand for most users\nFlexible enough to meet unexpected needsOverviewThe Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions.Language mappingThe Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C.Other usesThe error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments.Example uses of this error model include:\nPartial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.\nWorkflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.\nBatch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.\nAsynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.\nLogging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons.",
      "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 message 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 user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "StatusReportingSettings": {
      "description": "Settings controlling the behavior of status reports.",
      "id": "StatusReportingSettings",
      "properties": {
        "applicationReportsEnabled": {
          "description": "Whether app reports are enabled.",
          "type": "boolean"
        },
        "deviceSettingsEnabled": {
          "description": "Whether device settings reporting is enabled.",
          "type": "boolean"
        },
        "displayInfoEnabled": {
          "description": "Whether displays reporting is enabled.",
          "type": "boolean"
        },
        "hardwareStatusEnabled": {
          "description": "Whether hardware status reporting is enabled.",
          "type": "boolean"
        },
        "memoryInfoEnabled": {
          "description": "Whether memory info reporting is enabled.",
          "type": "boolean"
        },
        "networkInfoEnabled": {
          "description": "Whether network info reporting is enabled.",
          "type": "boolean"
        },
        "powerManagementEventsEnabled": {
          "description": "Whether power management event reporting is enabled.",
          "type": "boolean"
        },
        "softwareInfoEnabled": {
          "description": "Whether software info reporting is enabled.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "SystemUpdate": {
      "description": "Configuration for managing system updates",
      "id": "SystemUpdate",
      "properties": {
        "endMinutes": {
          "description": "If the type is WINDOWED, the end of the maintenance window, measured as the number of minutes after midnight in device's local time. This value must be between 0 and 1439, inclusive. If this value is less than start_minutes, then the maintenance window spans midnight. If the maintenance window specified is smaller than 30 minutes, the actual window is extended to 30 minutes beyond the start time.",
          "format": "int32",
          "type": "integer"
        },
        "startMinutes": {
          "description": "If the type is WINDOWED, the start of the maintenance window, measured as the number of minutes after midnight in the device's local time. This value must be between 0 and 1439, inclusive.",
          "format": "int32",
          "type": "integer"
        },
        "type": {
          "description": "The type of system update to configure.",
          "enum": [
            "SYSTEM_UPDATE_TYPE_UNSPECIFIED",
            "AUTOMATIC",
            "WINDOWED",
            "POSTPONE"
          ],
          "enumDescriptions": [
            "Follow the default update behavior for the device, which typically requires the user to accept system updates.",
            "Install automatically as soon as an update is available.",
            "Install automatically within a daily maintenance window. This also configures Play apps to be updated within the window. This is strongly recommended for kiosk devices because this is the only way apps persistently pinned to the foreground can be updated by Play.",
            "Postpone automatic install up to a maximum of 30 days."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "TermsAndConditions": {
      "description": "A terms and conditions page to be accepted during provisioning.",
      "id": "TermsAndConditions",
      "properties": {
        "content": {
          "$ref": "UserFacingMessage",
          "description": "A well-formatted HTML string. It will be parsed on the client with android.text.Html#fromHtml."
        },
        "header": {
          "$ref": "UserFacingMessage",
          "description": "A short header which appears above the HTML content."
        }
      },
      "type": "object"
    },
    "UserFacingMessage": {
      "description": "Provides a user-facing message with locale info. The maximum message length is 4096 characters.",
      "id": "UserFacingMessage",
      "properties": {
        "defaultMessage": {
          "description": "The default message displayed if no localized message is specified or the user's locale doesn't match with any of the localized messages. A default message must be provided if any localized messages are provided.",
          "type": "string"
        },
        "localizedMessages": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "A map containing \u003clocale, message\u003e pairs, where locale is a well-formed BCP 47 language (https://www.w3.org/International/articles/language-tags/) code, such as en-US, es-ES, or fr.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "WebToken": {
      "description": "A web token used to access the managed Google Play iframe.",
      "id": "WebToken",
      "properties": {
        "name": {
          "description": "The name of the web token, which is generated by the server during creation in the form enterprises/{enterpriseId}/webTokens/{webTokenId}.",
          "type": "string"
        },
        "parentFrameUrl": {
          "description": "The URL of the parent frame hosting the iframe with the embedded UI. To prevent XSS, the iframe may not be hosted at other URLs. The URL must use the https scheme.",
          "type": "string"
        },
        "permissions": {
          "description": "Permissions available to an admin in the embedded UI. An admin must have all of these permissions in order to view the UI.",
          "enumDescriptions": [
            "This value is ignored.",
            "The permission to approve apps for the enterprise."
          ],
          "items": {
            "enum": [
              "WEB_TOKEN_PERMISSION_UNSPECIFIED",
              "APPROVE_APPS"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "value": {
          "description": "The token value which is used in the hosting page to generate the iframe with the embedded UI. This is a read-only field generated by the server.",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Android Management API",
  "version": "v1",
  "version_module": true
}