{
    "auth": {
        "oauth2": {
            "scopes": {
                "https://www.googleapis.com/auth/androidenterprise": {
                    "description": "Manage corporate Android devices"
                }
            }
        }
    },
    "basePath": "/androidenterprise/v1/",
    "baseUrl": "https://www.googleapis.com/androidenterprise/v1/",
    "batchPath": "batch/androidenterprise/v1",
    "canonicalName": "Android Enterprise",
    "description": "Manages the deployment of apps to Android for Work users.",
    "discoveryVersion": "v1",
    "documentationLink": "https://developers.google.com/android/work/play/emm-api",
    "etag": "\"YWOzh2SDasdU84ArJnpYek-OMdg/7UslSb60TeW6KI2iSku03nsKFWw\"",
    "icons": {
        "x16": "https://www.google.com/images/icons/product/android-16.png",
        "x32": "https://www.google.com/images/icons/product/android-32.png"
    },
    "id": "androidenterprise:v1",
    "kind": "discovery#restDescription",
    "name": "androidenterprise",
    "ownerDomain": "google.com",
    "ownerName": "Google",
    "parameters": {
        "alt": {
            "default": "json",
            "description": "Data format for the response.",
            "enum": [
                "json"
            ],
            "enumDescriptions": [
                "Responses with Content-Type of application/json"
            ],
            "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. Overrides userIp if both are provided.",
            "location": "query",
            "type": "string"
        },
        "userIp": {
            "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.",
            "location": "query",
            "type": "string"
        }
    },
    "protocol": "rest",
    "resources": {
        "devices": {
            "methods": {
                "get": {
                    "description": "Retrieves the details of a device.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.devices.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}",
                    "response": {
                        "$ref": "Device"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getState": {
                    "description": "Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.devices.getState",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state",
                    "response": {
                        "$ref": "DeviceState"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Retrieves the IDs of all of a user's devices.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.devices.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices",
                    "response": {
                        "$ref": "DevicesListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "setState": {
                    "description": "Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.devices.setState",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state",
                    "request": {
                        "$ref": "DeviceState"
                    },
                    "response": {
                        "$ref": "DeviceState"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "enterprises": {
            "methods": {
                "acknowledgeNotificationSet": {
                    "description": "Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.acknowledgeNotificationSet",
                    "parameters": {
                        "notificationSetId": {
                            "description": "The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided.",
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/acknowledgeNotificationSet",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "completeSignup": {
                    "description": "Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.completeSignup",
                    "parameters": {
                        "completionToken": {
                            "description": "The Completion token initially returned by GenerateSignupUrl.",
                            "location": "query",
                            "type": "string"
                        },
                        "enterpriseToken": {
                            "description": "The Enterprise token appended to the Callback URL.",
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/completeSignup",
                    "response": {
                        "$ref": "Enterprise"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "createWebToken": {
                    "description": "Returns a unique token to access an embeddable UI. To generate a web UI, pass the generated token into the managed Google Play javascript API. Each token may only be used to start one UI session. See the javascript API documentation for further information.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.createWebToken",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/createWebToken",
                    "request": {
                        "$ref": "AdministratorWebTokenSpec"
                    },
                    "response": {
                        "$ref": "AdministratorWebToken"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "delete": {
                    "description": "Deletes the binding between the EMM and enterprise. This is now deprecated. Use this method only to unenroll customers that were previously enrolled with the insert call, then enroll them again with the enroll call.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.enterprises.delete",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "enroll": {
                    "description": "Enrolls an enterprise with the calling EMM.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.enroll",
                    "parameterOrder": [
                        "token"
                    ],
                    "parameters": {
                        "token": {
                            "description": "The token provided by the enterprise to register the EMM.",
                            "location": "query",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/enroll",
                    "request": {
                        "$ref": "Enterprise"
                    },
                    "response": {
                        "$ref": "Enterprise"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "generateSignupUrl": {
                    "description": "Generates a sign-up URL.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.generateSignupUrl",
                    "parameters": {
                        "callbackUrl": {
                            "description": "The callback URL to which the Admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a single query parameter to this URL named \"enterpriseToken\" which will contain an opaque token to be used for the CompleteSignup request.\nBeware that this means that the URL will be parsed, the parameter added and then a new URL formatted, i.e. there may be some minor formatting changes and, more importantly, the URL must be well-formed so that it can be parsed.",
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/signupUrl",
                    "response": {
                        "$ref": "SignupInfo"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves the name and domain of an enterprise.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.enterprises.get",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}",
                    "response": {
                        "$ref": "Enterprise"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getAndroidDevicePolicyConfig": {
                    "description": "Returns the Android Device Policy config resource.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.enterprises.getAndroidDevicePolicyConfig",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig",
                    "response": {
                        "$ref": "AndroidDevicePolicyConfig"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getServiceAccount": {
                    "description": "Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side.\n\nThis method can only be called after calling Enterprises.Enroll or Enterprises.CompleteSignup, and before Enterprises.SetAccount; at other times it will return an error.\n\nSubsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.\n\nOnce the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.enterprises.getServiceAccount",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "keyType": {
                            "description": "The type of credential to return with the service account. Required.",
                            "enum": [
                                "googleCredentials",
                                "pkcs12"
                            ],
                            "enumDescriptions": [
                                "",
                                ""
                            ],
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/serviceAccount",
                    "response": {
                        "$ref": "ServiceAccount"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getStoreLayout": {
                    "description": "Returns the store layout for the enterprise. If the store layout has not been set, returns \"basic\" as the store layout type and no homepage.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.enterprises.getStoreLayout",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout",
                    "response": {
                        "$ref": "StoreLayout"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "insert": {
                    "description": "Establishes the binding between the EMM and an enterprise. This is now deprecated; use enroll instead.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.insert",
                    "parameterOrder": [
                        "token"
                    ],
                    "parameters": {
                        "token": {
                            "description": "The token provided by the enterprise to register the EMM.",
                            "location": "query",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises",
                    "request": {
                        "$ref": "Enterprise"
                    },
                    "response": {
                        "$ref": "Enterprise"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.enterprises.list",
                    "parameterOrder": [
                        "domain"
                    ],
                    "parameters": {
                        "domain": {
                            "description": "The exact primary domain name of the enterprise to look up.",
                            "location": "query",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises",
                    "response": {
                        "$ref": "EnterprisesListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "pullNotificationSet": {
                    "description": "Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending.\nA notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty.\nNotifications that are not acknowledged within the 20 seconds will eventually be included again in the response to another PullNotificationSet request, and those that are never acknowledged will ultimately be deleted according to the Google Cloud Platform Pub/Sub system policy.\nMultiple requests might be performed concurrently to retrieve notifications, in which case the pending notifications (if any) will be split among each caller, if any are pending.\nIf no notifications are present, an empty notification list is returned. Subsequent requests may return more notifications once they become available.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.pullNotificationSet",
                    "parameters": {
                        "requestMode": {
                            "description": "The request mode for pulling notifications.\nSpecifying waitForNotifications will cause the request to block and wait until one or more notifications are present, or return an empty notification list if no notifications are present after some time.\nSpeciying returnImmediately will cause the request to immediately return the pending notifications, or an empty list if no notifications are present.\nIf omitted, defaults to waitForNotifications.",
                            "enum": [
                                "returnImmediately",
                                "waitForNotifications"
                            ],
                            "enumDescriptions": [
                                "",
                                ""
                            ],
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/pullNotificationSet",
                    "response": {
                        "$ref": "NotificationSet"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "sendTestPushNotification": {
                    "description": "Sends a test notification to validate the EMM integration with the Google Cloud Pub/Sub service for this enterprise.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.sendTestPushNotification",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/sendTestPushNotification",
                    "response": {
                        "$ref": "EnterprisesSendTestPushNotificationResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "setAccount": {
                    "description": "Sets the account that will be used to authenticate to the API as the enterprise.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.enterprises.setAccount",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/account",
                    "request": {
                        "$ref": "EnterpriseAccount"
                    },
                    "response": {
                        "$ref": "EnterpriseAccount"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "setAndroidDevicePolicyConfig": {
                    "description": "Sets the Android Device Policy config resource. EMM may use this method to enable or disable Android Device Policy support for the specified enterprise. To learn more about managing devices and apps with Android Device Policy, see the Android Management API.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.enterprises.setAndroidDevicePolicyConfig",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/androidDevicePolicyConfig",
                    "request": {
                        "$ref": "AndroidDevicePolicyConfig"
                    },
                    "response": {
                        "$ref": "AndroidDevicePolicyConfig"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "setStoreLayout": {
                    "description": "Sets the store layout for the enterprise. By default, storeLayoutType is set to \"basic\" and the basic store layout is enabled. The basic layout only contains apps approved by the admin, and that have been added to the available product set for a user (using the  setAvailableProductSet call). Apps on the page are sorted in order of their product ID value. If you create a custom store layout (by setting storeLayoutType = \"custom\" and setting a homepage), the basic store layout is disabled.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.enterprises.setStoreLayout",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout",
                    "request": {
                        "$ref": "StoreLayout"
                    },
                    "response": {
                        "$ref": "StoreLayout"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "unenroll": {
                    "description": "Unenrolls an enterprise from the calling EMM.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.enterprises.unenroll",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/unenroll",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "entitlements": {
            "methods": {
                "delete": {
                    "description": "Removes an entitlement to an app for a user.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.entitlements.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "entitlementId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "entitlementId": {
                            "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of an entitlement.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.entitlements.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "entitlementId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "entitlementId": {
                            "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}",
                    "response": {
                        "$ref": "Entitlement"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Lists all entitlements for the specified user. Only the ID is set.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.entitlements.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/entitlements",
                    "response": {
                        "$ref": "EntitlementsListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Adds or updates an entitlement to an app for a user. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.entitlements.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "entitlementId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "entitlementId": {
                            "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "install": {
                            "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.",
                            "location": "query",
                            "type": "boolean"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}",
                    "request": {
                        "$ref": "Entitlement"
                    },
                    "response": {
                        "$ref": "Entitlement"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Adds or updates an entitlement to an app for a user.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.entitlements.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "entitlementId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "entitlementId": {
                            "description": "The ID of the entitlement (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "install": {
                            "description": "Set to true to also install the product on all the user's devices where possible. Failure to install on one or more devices will not prevent this operation from returning successfully, as long as the entitlement was successfully assigned to the user.",
                            "location": "query",
                            "type": "boolean"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/entitlements/{entitlementId}",
                    "request": {
                        "$ref": "Entitlement"
                    },
                    "response": {
                        "$ref": "Entitlement"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "grouplicenses": {
            "methods": {
                "get": {
                    "description": "Retrieves details of an enterprise's group license for a product.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.grouplicenses.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "groupLicenseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "groupLicenseId": {
                            "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}",
                    "response": {
                        "$ref": "GroupLicense"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Retrieves IDs of all products for which the enterprise has a group license.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.grouplicenses.list",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/groupLicenses",
                    "response": {
                        "$ref": "GroupLicensesListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "grouplicenseusers": {
            "methods": {
                "list": {
                    "description": "Retrieves the IDs of the users who have been granted entitlements under the license.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.grouplicenseusers.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "groupLicenseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "groupLicenseId": {
                            "description": "The ID of the product the group license is for, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/groupLicenses/{groupLicenseId}/users",
                    "response": {
                        "$ref": "GroupLicenseUsersListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "installs": {
            "methods": {
                "delete": {
                    "description": "Requests to remove an app from a device. A call to get or list will still show the app as installed on the device until it is actually removed.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.installs.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "installId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "installId": {
                            "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of an installation of an app on a device.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.installs.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "installId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "installId": {
                            "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}",
                    "response": {
                        "$ref": "Install"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Retrieves the details of all apps installed on the specified device.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.installs.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs",
                    "response": {
                        "$ref": "InstallsListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.installs.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "installId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "installId": {
                            "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}",
                    "request": {
                        "$ref": "Install"
                    },
                    "response": {
                        "$ref": "Install"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Requests to install the latest version of an app to a device. If the app is already installed, then it is updated to the latest version if necessary.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.installs.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "installId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "installId": {
                            "description": "The ID of the product represented by the install, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/installs/{installId}",
                    "request": {
                        "$ref": "Install"
                    },
                    "response": {
                        "$ref": "Install"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "managedconfigurationsfordevice": {
            "methods": {
                "delete": {
                    "description": "Removes a per-device managed configuration for an app for the specified device.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.managedconfigurationsfordevice.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "managedConfigurationForDeviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForDeviceId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of a per-device managed configuration.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.managedconfigurationsfordevice.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "managedConfigurationForDeviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForDeviceId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}",
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Lists all the per-device managed configurations for the specified device. Only the ID is set.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.managedconfigurationsfordevice.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice",
                    "response": {
                        "$ref": "ManagedConfigurationsForDeviceListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Adds or updates a per-device managed configuration for an app for the specified device. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.managedconfigurationsfordevice.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "managedConfigurationForDeviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForDeviceId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}",
                    "request": {
                        "$ref": "ManagedConfiguration"
                    },
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Adds or updates a per-device managed configuration for an app for the specified device.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.managedconfigurationsfordevice.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "deviceId",
                        "managedConfigurationForDeviceId"
                    ],
                    "parameters": {
                        "deviceId": {
                            "description": "The Android ID of the device.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForDeviceId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}",
                    "request": {
                        "$ref": "ManagedConfiguration"
                    },
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "managedconfigurationsforuser": {
            "methods": {
                "delete": {
                    "description": "Removes a per-user managed configuration for an app for the specified user.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.managedconfigurationsforuser.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "managedConfigurationForUserId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForUserId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of a per-user managed configuration for an app for the specified user.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.managedconfigurationsforuser.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "managedConfigurationForUserId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForUserId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}",
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Lists all the per-user managed configurations for the specified user. Only the ID is set.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.managedconfigurationsforuser.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser",
                    "response": {
                        "$ref": "ManagedConfigurationsForUserListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Adds or updates a per-user managed configuration for an app for the specified user. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.managedconfigurationsforuser.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "managedConfigurationForUserId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForUserId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}",
                    "request": {
                        "$ref": "ManagedConfiguration"
                    },
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Adds or updates a per-user managed configuration for an app for the specified user.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.managedconfigurationsforuser.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId",
                        "managedConfigurationForUserId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "managedConfigurationForUserId": {
                            "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}",
                    "request": {
                        "$ref": "ManagedConfiguration"
                    },
                    "response": {
                        "$ref": "ManagedConfiguration"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "permissions": {
            "methods": {
                "get": {
                    "description": "Retrieves details of an Android app permission for display to an enterprise admin.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.permissions.get",
                    "parameterOrder": [
                        "permissionId"
                    ],
                    "parameters": {
                        "language": {
                            "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\")",
                            "location": "query",
                            "type": "string"
                        },
                        "permissionId": {
                            "description": "The ID of the permission.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "permissions/{permissionId}",
                    "response": {
                        "$ref": "Permission"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "products": {
            "methods": {
                "approve": {
                    "description": "Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.\n\nTo learn how to use managed Google Play to design and create a store layout to display approved products to your users, see Store Layout Design.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.products.approve",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}/approve",
                    "request": {
                        "$ref": "ProductsApproveRequest"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "generateApprovalUrl": {
                    "description": "Generates a URL that can be rendered in an iframe to display the permissions (if any) of a product. An enterprise admin must view these permissions and accept them on behalf of their organization in order to approve that product.\n\nAdmins should accept the displayed permissions by interacting with a separate UI element in the EMM console, which in turn should trigger the use of this URL as the approvalUrlInfo.approvalUrl property in a Products.approve call to approve the product. This URL can only be used to display permissions for up to 1 day.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.products.generateApprovalUrl",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "languageCode": {
                            "description": "The BCP 47 language code used for permission names and descriptions in the returned iframe, for instance \"en-US\".",
                            "location": "query",
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}/generateApprovalUrl",
                    "response": {
                        "$ref": "ProductsGenerateApprovalUrlResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of a product for display to an enterprise admin.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.products.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "language": {
                            "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").",
                            "location": "query",
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product, e.g. \"app:com.google.android.gm\".",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}",
                    "response": {
                        "$ref": "Product"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getAppRestrictionsSchema": {
                    "description": "Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an admin to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.products.getAppRestrictionsSchema",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "language": {
                            "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\").",
                            "location": "query",
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}/appRestrictionsSchema",
                    "response": {
                        "$ref": "AppRestrictionsSchema"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getPermissions": {
                    "description": "Retrieves the Android app permissions required by this app.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.products.getPermissions",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}/permissions",
                    "response": {
                        "$ref": "ProductPermissions"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Finds approved products that match a query, or all approved products if there is no query.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.products.list",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "approved": {
                            "description": "Specifies whether to search among all products (false) or among only products that have been approved (true). Only \"true\" is supported, and should be specified.",
                            "location": "query",
                            "type": "boolean"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "language": {
                            "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\"). Results are returned in the language best matching the preferred language.",
                            "location": "query",
                            "type": "string"
                        },
                        "maxResults": {
                            "description": "Specifies the maximum number of products that can be returned per request. If not specified, uses a default value of 100, which is also the maximum retrievable within a single response.",
                            "format": "uint32",
                            "location": "query",
                            "type": "integer"
                        },
                        "query": {
                            "description": "The search query as typed in the Google Play store search box. If omitted, all approved apps will be returned (using the pagination parameters), including apps that are not available in the store (e.g. unpublished apps).",
                            "location": "query",
                            "type": "string"
                        },
                        "token": {
                            "description": "A pagination token is contained in a request''s response when there are more products. The token can be used in a subsequent request to obtain more products, and so forth. This parameter cannot be used in the initial request.",
                            "location": "query",
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products",
                    "response": {
                        "$ref": "ProductsListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "unapprove": {
                    "description": "Unapproves the specified product (and the relevant app permissions, if any)",
                    "httpMethod": "POST",
                    "id": "androidenterprise.products.unapprove",
                    "parameterOrder": [
                        "enterpriseId",
                        "productId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "productId": {
                            "description": "The ID of the product.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/products/{productId}/unapprove",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "serviceaccountkeys": {
            "methods": {
                "delete": {
                    "description": "Removes and invalidates the specified credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.serviceaccountkeys.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "keyId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "keyId": {
                            "description": "The ID of the key.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/serviceAccountKeys/{keyId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "insert": {
                    "description": "Generates new credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.\n\nOnly the type of the key should be populated in the resource to be inserted.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.serviceaccountkeys.insert",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/serviceAccountKeys",
                    "request": {
                        "$ref": "ServiceAccountKey"
                    },
                    "response": {
                        "$ref": "ServiceAccountKey"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Lists all active credentials for the service account associated with this enterprise. Only the ID and key type are returned. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.serviceaccountkeys.list",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/serviceAccountKeys",
                    "response": {
                        "$ref": "ServiceAccountKeysListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "storelayoutclusters": {
            "methods": {
                "delete": {
                    "description": "Deletes a cluster.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.storelayoutclusters.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId",
                        "clusterId"
                    ],
                    "parameters": {
                        "clusterId": {
                            "description": "The ID of the cluster.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of a cluster.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.storelayoutclusters.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId",
                        "clusterId"
                    ],
                    "parameters": {
                        "clusterId": {
                            "description": "The ID of the cluster.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}",
                    "response": {
                        "$ref": "StoreCluster"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "insert": {
                    "description": "Inserts a new cluster in a page.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.storelayoutclusters.insert",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters",
                    "request": {
                        "$ref": "StoreCluster"
                    },
                    "response": {
                        "$ref": "StoreCluster"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Retrieves the details of all clusters on the specified page.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.storelayoutclusters.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters",
                    "response": {
                        "$ref": "StoreLayoutClustersListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Updates a cluster. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.storelayoutclusters.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId",
                        "clusterId"
                    ],
                    "parameters": {
                        "clusterId": {
                            "description": "The ID of the cluster.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}",
                    "request": {
                        "$ref": "StoreCluster"
                    },
                    "response": {
                        "$ref": "StoreCluster"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Updates a cluster.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.storelayoutclusters.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId",
                        "clusterId"
                    ],
                    "parameters": {
                        "clusterId": {
                            "description": "The ID of the cluster.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}/clusters/{clusterId}",
                    "request": {
                        "$ref": "StoreCluster"
                    },
                    "response": {
                        "$ref": "StoreCluster"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "storelayoutpages": {
            "methods": {
                "delete": {
                    "description": "Deletes a store page.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.storelayoutpages.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves details of a store page.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.storelayoutpages.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}",
                    "response": {
                        "$ref": "StorePage"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "insert": {
                    "description": "Inserts a new store page.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.storelayoutpages.insert",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages",
                    "request": {
                        "$ref": "StorePage"
                    },
                    "response": {
                        "$ref": "StorePage"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Retrieves the details of all pages in the store.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.storelayoutpages.list",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages",
                    "response": {
                        "$ref": "StoreLayoutPagesListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Updates the content of a store page. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.storelayoutpages.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}",
                    "request": {
                        "$ref": "StorePage"
                    },
                    "response": {
                        "$ref": "StorePage"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Updates the content of a store page.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.storelayoutpages.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "pageId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "pageId": {
                            "description": "The ID of the page.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/storeLayout/pages/{pageId}",
                    "request": {
                        "$ref": "StorePage"
                    },
                    "response": {
                        "$ref": "StorePage"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        },
        "users": {
            "methods": {
                "delete": {
                    "description": "Deleted an EMM-managed user.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.users.delete",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "generateAuthenticationToken": {
                    "description": "Generates an authentication token which the device policy client can use to provision the given EMM-managed user account on a device. The generated token is single-use and expires after a few minutes.\n\nThis call only works with EMM-managed accounts.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.users.generateAuthenticationToken",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/authenticationToken",
                    "response": {
                        "$ref": "AuthenticationToken"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "generateToken": {
                    "description": "Generates a token (activation code) to allow this user to configure their managed account in the Android Setup Wizard. Revokes any previously generated token.\n\nThis call only works with Google managed accounts.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.users.generateToken",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/token",
                    "response": {
                        "$ref": "UserToken"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "get": {
                    "description": "Retrieves a user's details.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.users.get",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}",
                    "response": {
                        "$ref": "User"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "getAvailableProductSet": {
                    "description": "Retrieves the set of products a user is entitled to access.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.users.getAvailableProductSet",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet",
                    "response": {
                        "$ref": "ProductSet"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "insert": {
                    "description": "Creates a new EMM-managed user.\n\nThe Users resource passed in the body of the request should include an accountIdentifier and an accountType.\nIf a corresponding user already exists with the same account identifier, the user will be updated with the resource. In this case only the displayName field can be changed.",
                    "httpMethod": "POST",
                    "id": "androidenterprise.users.insert",
                    "parameterOrder": [
                        "enterpriseId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users",
                    "request": {
                        "$ref": "User"
                    },
                    "response": {
                        "$ref": "User"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "list": {
                    "description": "Looks up a user by primary email address. This is only supported for Google-managed users. Lookup of the id is not needed for EMM-managed users because the id is already returned in the result of the Users.insert call.",
                    "httpMethod": "GET",
                    "id": "androidenterprise.users.list",
                    "parameterOrder": [
                        "enterpriseId",
                        "email"
                    ],
                    "parameters": {
                        "email": {
                            "description": "The exact primary email address of the user to look up.",
                            "location": "query",
                            "required": true,
                            "type": "string"
                        },
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users",
                    "response": {
                        "$ref": "UsersListResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "patch": {
                    "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value. This method supports patch semantics.",
                    "httpMethod": "PATCH",
                    "id": "androidenterprise.users.patch",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}",
                    "request": {
                        "$ref": "User"
                    },
                    "response": {
                        "$ref": "User"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "revokeToken": {
                    "description": "Revokes a previously generated token (activation code) for the user.",
                    "httpMethod": "DELETE",
                    "id": "androidenterprise.users.revokeToken",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/token",
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "setAvailableProductSet": {
                    "description": "Modifies the set of products that a user is entitled to access (referred to as whitelisted products). Only products that are approved or products that were previously approved (products with revoked approval) can be whitelisted.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.users.setAvailableProductSet",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}/availableProductSet",
                    "request": {
                        "$ref": "ProductSet"
                    },
                    "response": {
                        "$ref": "ProductSet"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                },
                "update": {
                    "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value.",
                    "httpMethod": "PUT",
                    "id": "androidenterprise.users.update",
                    "parameterOrder": [
                        "enterpriseId",
                        "userId"
                    ],
                    "parameters": {
                        "enterpriseId": {
                            "description": "The ID of the enterprise.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        },
                        "userId": {
                            "description": "The ID of the user.",
                            "location": "path",
                            "required": true,
                            "type": "string"
                        }
                    },
                    "path": "enterprises/{enterpriseId}/users/{userId}",
                    "request": {
                        "$ref": "User"
                    },
                    "response": {
                        "$ref": "User"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/androidenterprise"
                    ]
                }
            }
        }
    },
    "revision": "20170929",
    "rootUrl": "https://www.googleapis.com/",
    "schemas": {
        "Administrator": {
            "description": "This represents an enterprise admin who can manage the enterprise in the managed Google Play store.",
            "id": "Administrator",
            "properties": {
                "email": {
                    "description": "The admin's email address.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AdministratorWebToken": {
            "description": "A token authorizing an admin to access an iframe.",
            "id": "AdministratorWebToken",
            "properties": {
                "kind": {
                    "default": "androidenterprise#administratorWebToken",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebToken\".",
                    "type": "string"
                },
                "token": {
                    "description": "An opaque token to be passed to the Play front-end to generate an iframe.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AdministratorWebTokenSpec": {
            "description": "Specification for a token used to generate iframes. The token specifies what data the admin is allowed to modify and the URI the iframe is allowed to communiate with.",
            "id": "AdministratorWebTokenSpec",
            "properties": {
                "kind": {
                    "default": "androidenterprise#administratorWebTokenSpec",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#administratorWebTokenSpec\".",
                    "type": "string"
                },
                "parent": {
                    "description": "The URI of the parent frame hosting the iframe. To prevent XSS, the iframe may not be hosted at other URIs. This URI must be https.",
                    "type": "string"
                },
                "permission": {
                    "description": "The list of permissions the admin is granted within the iframe. The admin will only be allowed to view an iframe if they have all of the permissions associated with it. The only valid value is \"approveApps\" that will allow the admin to access the iframe in \"approve\" mode.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "AndroidDevicePolicyConfig": {
            "description": "The Android Device Policy configuration of an enterprise.",
            "id": "AndroidDevicePolicyConfig",
            "properties": {
                "kind": {
                    "default": "androidenterprise#androidDevicePolicyConfig",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#androidDevicePolicyConfig\".",
                    "type": "string"
                },
                "state": {
                    "description": "The state of Android Device Policy. \"enabled\" indicates that Android Device Policy is enabled for the enterprise and the EMM is allowed to manage devices with Android Device Policy, while \"disabled\" means that it cannot.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AppRestrictionsSchema": {
            "description": "Represents the list of app restrictions available to be pre-configured for the product.",
            "id": "AppRestrictionsSchema",
            "properties": {
                "kind": {
                    "default": "androidenterprise#appRestrictionsSchema",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#appRestrictionsSchema\".",
                    "type": "string"
                },
                "restrictions": {
                    "description": "The set of restrictions that make up this schema.",
                    "items": {
                        "$ref": "AppRestrictionsSchemaRestriction"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "AppRestrictionsSchemaChangeEvent": {
            "description": "An event generated when a new app version is uploaded to Google Play and its app restrictions schema changed. To fetch the app restrictions schema for an app, use Products.getAppRestrictionsSchema on the EMM API.",
            "id": "AppRestrictionsSchemaChangeEvent",
            "properties": {
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the app restriction schema changed. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AppRestrictionsSchemaRestriction": {
            "description": "A restriction in the App Restriction Schema represents a piece of configuration that may be pre-applied.",
            "id": "AppRestrictionsSchemaRestriction",
            "properties": {
                "defaultValue": {
                    "$ref": "AppRestrictionsSchemaRestrictionRestrictionValue",
                    "description": "The default value of the restriction. bundle and bundleArray restrictions never have a default value."
                },
                "description": {
                    "description": "A longer description of the restriction, giving more detail of what it affects.",
                    "type": "string"
                },
                "entry": {
                    "description": "For choice or multiselect restrictions, the list of possible entries' human-readable names.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "entryValue": {
                    "description": "For choice or multiselect restrictions, the list of possible entries' machine-readable values. These values should be used in the configuration, either as a single string value for a choice restriction or in a stringArray for a multiselect restriction.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "key": {
                    "description": "The unique key that the product uses to identify the restriction, e.g. \"com.google.android.gm.fieldname\".",
                    "type": "string"
                },
                "nestedRestriction": {
                    "description": "For bundle or bundleArray restrictions, the list of nested restrictions. A bundle restriction is always nested within a bundleArray restriction, and a bundleArray restriction is at most two levels deep.",
                    "items": {
                        "$ref": "AppRestrictionsSchemaRestriction"
                    },
                    "type": "array"
                },
                "restrictionType": {
                    "description": "The type of the restriction.",
                    "type": "string"
                },
                "title": {
                    "description": "The name of the restriction.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AppRestrictionsSchemaRestrictionRestrictionValue": {
            "description": "A typed value for the restriction.",
            "id": "AppRestrictionsSchemaRestrictionRestrictionValue",
            "properties": {
                "type": {
                    "description": "The type of the value being provided.",
                    "type": "string"
                },
                "valueBool": {
                    "description": "The boolean value - this will only be present if type is bool.",
                    "type": "boolean"
                },
                "valueInteger": {
                    "description": "The integer value - this will only be present if type is integer.",
                    "format": "int32",
                    "type": "integer"
                },
                "valueMultiselect": {
                    "description": "The list of string values - this will only be present if type is multiselect.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "valueString": {
                    "description": "The string value - this will be present for types string, choice and hidden.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AppUpdateEvent": {
            "description": "An event generated when a new version of an app is uploaded to Google Play. Notifications are sent for new public versions only: alpha, beta, or canary versions do not generate this event. To fetch up-to-date version history for an app, use Products.Get on the EMM API.",
            "id": "AppUpdateEvent",
            "properties": {
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") that was updated. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AppVersion": {
            "description": "This represents a single version of the app.",
            "id": "AppVersion",
            "properties": {
                "track": {
                    "description": "The track that this app was published in. For example if track is \"alpha\", this is an alpha version of the app.",
                    "type": "string"
                },
                "versionCode": {
                    "description": "Unique increasing identifier for the app version.",
                    "format": "int32",
                    "type": "integer"
                },
                "versionString": {
                    "description": "The string used in the Play store by the app developer to identify the version. The string is not necessarily unique or localized (for example, the string could be \"1.4\").",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ApprovalUrlInfo": {
            "description": "Information on an approval URL.",
            "id": "ApprovalUrlInfo",
            "properties": {
                "approvalUrl": {
                    "description": "A URL that displays a product's permissions and that can also be used to approve the product with the Products.approve call.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#approvalUrlInfo",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#approvalUrlInfo\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "AuthenticationToken": {
            "description": "An AuthenticationToken is used by the EMM's device policy client on a device to provision the given EMM-managed user on that device.",
            "id": "AuthenticationToken",
            "properties": {
                "kind": {
                    "default": "androidenterprise#authenticationToken",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#authenticationToken\".",
                    "type": "string"
                },
                "token": {
                    "description": "The authentication token to be passed to the device policy client on the device where it can be used to provision the account for which this token was generated.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "Device": {
            "description": "A Devices resource represents a mobile device managed by the EMM and belonging to a specific enterprise user.\n\nThis collection cannot be modified via the API. It is automatically populated as devices are set up to be managed.",
            "id": "Device",
            "properties": {
                "androidId": {
                    "description": "The Google Play Services Android ID for the device encoded as a lowercase hex string. For example, \"123456789abcdef0\".",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#device",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#device\".",
                    "type": "string"
                },
                "managementType": {
                    "description": "Identifies the extent to which the device is controlled by a managed Google Play EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device that has the EMM's device policy controller (DPC) as the device owner. \n- \"managedProfile\", a device that has a profile managed by the DPC (DPC is profile owner) in addition to a separate, personal profile that is unavailable to the DPC. \n- \"containerApp\", no longer used (deprecated). \n- \"unmanagedProfile\", a device that has been allowed (by the domain's admin, using the Admin Console to enable the privilege) to use managed Google Play, but the profile is itself not owned by a DPC.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "DeviceState": {
            "description": "The state of a user's device, as accessed by the getState and setState methods on device resources.",
            "id": "DeviceState",
            "properties": {
                "accountState": {
                    "description": "The state of the Google account on the device. \"enabled\" indicates that the Google account on the device can be used to access Google services (including Google Play), while \"disabled\" means that it cannot. A new device is initially in the \"disabled\" state.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#deviceState",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#deviceState\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "DevicesListResponse": {
            "description": "The device resources for the user.",
            "id": "DevicesListResponse",
            "properties": {
                "device": {
                    "description": "A managed device.",
                    "items": {
                        "$ref": "Device"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#devicesListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#devicesListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "Enterprise": {
            "description": "An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: \n- For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. \n- For managed Google Play Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the managed Google Play sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details.",
            "id": "Enterprise",
            "properties": {
                "administrator": {
                    "description": "Admins of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.",
                    "items": {
                        "$ref": "Administrator"
                    },
                    "type": "array"
                },
                "id": {
                    "description": "The unique ID for the enterprise.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#enterprise",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprise\".",
                    "type": "string"
                },
                "name": {
                    "description": "The name of the enterprise, for example, \"Example, Inc\".",
                    "type": "string"
                },
                "primaryDomain": {
                    "annotations": {
                        "required": [
                            "androidenterprise.enterprises.insert"
                        ]
                    },
                    "description": "The enterprise's primary domain, such as \"example.com\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "EnterpriseAccount": {
            "description": "A service account that can be used to authenticate as the enterprise to API calls that require such authentication.",
            "id": "EnterpriseAccount",
            "properties": {
                "accountEmail": {
                    "description": "The email address of the service account.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#enterpriseAccount",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterpriseAccount\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "EnterprisesListResponse": {
            "description": "The matching enterprise resources.",
            "id": "EnterprisesListResponse",
            "properties": {
                "enterprise": {
                    "description": "An enterprise.",
                    "items": {
                        "$ref": "Enterprise"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#enterprisesListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#enterprisesListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "EnterprisesSendTestPushNotificationResponse": {
            "id": "EnterprisesSendTestPushNotificationResponse",
            "properties": {
                "messageId": {
                    "description": "The message ID of the test push notification that was sent.",
                    "type": "string"
                },
                "topicName": {
                    "description": "The name of the Cloud Pub/Sub topic to which notifications for this enterprise's enrolled account will be sent.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "Entitlement": {
            "description": "The presence of an Entitlements resource indicates that a user has the right to use a particular app. Entitlements are user specific, not device specific. This allows a user with an entitlement to an app to install the app on all their devices. It's also possible for a user to hold an entitlement to an app without installing the app on any device.\n\nThe API can be used to create an entitlement. As an option, you can also use the API to trigger the installation of an app on all a user's managed devices at the same time the entitlement is created.\n\nIf the app is free, creating the entitlement also creates a group license for that app. For paid apps, creating the entitlement consumes one license, and that license remains consumed until the entitlement is removed. If the enterprise hasn't purchased enough licenses, then no entitlement is created and the installation fails. An entitlement is also not created for an app if the app requires permissions that the enterprise hasn't accepted.\n\nIf an entitlement is deleted, the app may be uninstalled from a user's device. As a best practice, uninstall the app by calling  Installs.delete() before deleting the entitlement.\n\nEntitlements for apps that a user pays for on an unmanaged profile have \"userPurchase\" as the entitlement reason. These entitlements cannot be removed via the API.",
            "id": "Entitlement",
            "properties": {
                "kind": {
                    "default": "androidenterprise#entitlement",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlement\".",
                    "type": "string"
                },
                "productId": {
                    "description": "The ID of the product that the entitlement is for. For example, \"app:com.google.android.gm\".",
                    "type": "string"
                },
                "reason": {
                    "description": "The reason for the entitlement. For example, \"free\" for free apps. This property is temporary: it will be replaced by the acquisition kind field of group licenses.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "EntitlementsListResponse": {
            "description": "The entitlement resources for the user.",
            "id": "EntitlementsListResponse",
            "properties": {
                "entitlement": {
                    "description": "An entitlement of a user to a product (e.g. an app). For example, a free app that they have installed, or a paid app that they have been allocated a license to.",
                    "items": {
                        "$ref": "Entitlement"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#entitlementsListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#entitlementsListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "GroupLicense": {
            "description": "Group license objects allow you to keep track of licenses (called entitlements) for both free and paid apps. For a free app, a group license is created when an enterprise admin first approves the product in Google Play or when the first entitlement for the product is created for a user via the API. For a paid app, a group license object is only created when an enterprise admin purchases the product in Google Play for the first time.\n\nUse the API to query group licenses. A Grouplicenses resource includes the total number of licenses purchased (paid apps only) and the total number of licenses currently in use. Iyn other words, the total number of Entitlements that exist for the product.\n\nOnly one group license object is created per product and group license objects are never deleted. If a product is unapproved, its group license remains. This allows enterprise admins to keep track of any remaining entitlements for the product.",
            "id": "GroupLicense",
            "properties": {
                "acquisitionKind": {
                    "description": "How this group license was acquired. \"bulkPurchase\" means that this Grouplicenses resource was created because the enterprise purchased licenses for this product; otherwise, the value is \"free\" (for free products).",
                    "type": "string"
                },
                "approval": {
                    "description": "Whether the product to which this group license relates is currently approved by the enterprise. Products are approved when a group license is first created, but this approval may be revoked by an enterprise admin via Google Play. Unapproved products will not be visible to end users in collections, and new entitlements to them should not normally be created.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#groupLicense",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicense\".",
                    "type": "string"
                },
                "numProvisioned": {
                    "description": "The total number of provisioned licenses for this product. Returned by read operations, but ignored in write operations.",
                    "format": "int32",
                    "type": "integer"
                },
                "numPurchased": {
                    "description": "The number of purchased licenses (possibly in multiple purchases). If this field is omitted, then there is no limit on the number of licenses that can be provisioned (for example, if the acquisition kind is \"free\").",
                    "format": "int32",
                    "type": "integer"
                },
                "permissions": {
                    "description": "The permission approval status of the product. This field is only set if the product is approved. Possible states are: \n- \"currentApproved\", the current set of permissions is approved, but additional permissions will require the administrator to reapprove the product (If the product was approved without specifying the approved permissions setting, then this is the default behavior.), \n- \"needsReapproval\", the product has unapproved permissions. No additional product licenses can be assigned until the product is reapproved, \n- \"allCurrentAndFutureApproved\", the current permissions are approved and any future permission updates will be automatically approved without administrator review.",
                    "type": "string"
                },
                "productId": {
                    "description": "The ID of the product that the license is for. For example, \"app:com.google.android.gm\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "GroupLicenseUsersListResponse": {
            "description": "The user resources for the group license.",
            "id": "GroupLicenseUsersListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#groupLicenseUsersListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicenseUsersListResponse\".",
                    "type": "string"
                },
                "user": {
                    "description": "A user of an enterprise.",
                    "items": {
                        "$ref": "User"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "GroupLicensesListResponse": {
            "description": "The grouplicense resources for the enterprise.",
            "id": "GroupLicensesListResponse",
            "properties": {
                "groupLicense": {
                    "description": "A group license for a product approved for use in the enterprise.",
                    "items": {
                        "$ref": "GroupLicense"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#groupLicensesListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#groupLicensesListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "Install": {
            "description": "The existence of an Installs resource indicates that an app is installed on a particular device (or that an install is pending).\n\nThe API can be used to create an install resource using the update method. This triggers the actual install of the app on the device. If the user does not already have an entitlement for the app, then an attempt is made to create one. If this fails (for example, because the app is not free and there is no available license), then the creation of the install fails.\n\nThe API can also be used to update an installed app. If the update method is used on an existing install, then the app will be updated to the latest available version.\n\nNote that it is not possible to force the installation of a specific version of an app: the version code is read-only.\n\nIf a user installs an app themselves (as permitted by the enterprise), then again an install resource and possibly an entitlement resource are automatically created.\n\nThe API can also be used to delete an install resource, which triggers the removal of the app from the device. Note that deleting an install does not automatically remove the corresponding entitlement, even if there are no remaining installs. The install resource will also be deleted if the user uninstalls the app themselves.",
            "id": "Install",
            "properties": {
                "installState": {
                    "description": "Install state. The state \"installPending\" means that an install request has recently been made and download to the device is in progress. The state \"installed\" means that the app has been installed. This field is read-only.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#install",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#install\".",
                    "type": "string"
                },
                "productId": {
                    "description": "The ID of the product that the install is for. For example, \"app:com.google.android.gm\".",
                    "type": "string"
                },
                "versionCode": {
                    "description": "The version of the installed product. Guaranteed to be set only if the install state is \"installed\".",
                    "format": "int32",
                    "type": "integer"
                }
            },
            "type": "object"
        },
        "InstallFailureEvent": {
            "description": "An event generated when an app installation failed on a device",
            "id": "InstallFailureEvent",
            "properties": {
                "deviceId": {
                    "description": "The Android ID of the device. This field will always be present.",
                    "type": "string"
                },
                "failureDetails": {
                    "description": "Additional details on the failure if applicable.",
                    "type": "string"
                },
                "failureReason": {
                    "description": "The reason for the installation failure. This field will always be present.",
                    "type": "string"
                },
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the install failure event occured. This field will always be present.",
                    "type": "string"
                },
                "userId": {
                    "description": "The ID of the user. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "InstallsListResponse": {
            "description": "The install resources for the device.",
            "id": "InstallsListResponse",
            "properties": {
                "install": {
                    "description": "An installation of an app for a user on a specific device. The existence of an install implies that the user must have an entitlement to the app.",
                    "items": {
                        "$ref": "Install"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#installsListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#installsListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "LocalizedText": {
            "description": "A localized string with its locale.",
            "id": "LocalizedText",
            "properties": {
                "locale": {
                    "description": "The BCP47 tag for a locale. (e.g. \"en-US\", \"de\").",
                    "type": "string"
                },
                "text": {
                    "description": "The text localized in the associated locale.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ManagedConfiguration": {
            "description": "A managed configuration resource contains the set of managed properties that have been configured for an Android app. The app's developer would have defined configurable properties in the managed configurations schema.",
            "id": "ManagedConfiguration",
            "properties": {
                "kind": {
                    "default": "androidenterprise#managedConfiguration",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfiguration\".",
                    "type": "string"
                },
                "managedProperty": {
                    "description": "The set of managed properties for this configuration.",
                    "items": {
                        "$ref": "ManagedProperty"
                    },
                    "type": "array"
                },
                "productId": {
                    "description": "The ID of the product that the managed configuration is for, e.g. \"app:com.google.android.gm\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ManagedConfigurationsForDeviceListResponse": {
            "description": "The managed configuration resources for the device.",
            "id": "ManagedConfigurationsForDeviceListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#managedConfigurationsForDeviceListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForDeviceListResponse\".",
                    "type": "string"
                },
                "managedConfigurationForDevice": {
                    "description": "A managed configuration for an app on a specific device.",
                    "items": {
                        "$ref": "ManagedConfiguration"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "ManagedConfigurationsForUserListResponse": {
            "description": "The managed configuration resources for the user.",
            "id": "ManagedConfigurationsForUserListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#managedConfigurationsForUserListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForUserListResponse\".",
                    "type": "string"
                },
                "managedConfigurationForUser": {
                    "description": "A managed configuration for an app for a specific user.",
                    "items": {
                        "$ref": "ManagedConfiguration"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "ManagedProperty": {
            "description": "A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.",
            "id": "ManagedProperty",
            "properties": {
                "key": {
                    "description": "The unique key that identifies the property.",
                    "type": "string"
                },
                "valueBool": {
                    "description": "The boolean value - this will only be present if type of the property is bool.",
                    "type": "boolean"
                },
                "valueBundle": {
                    "$ref": "ManagedPropertyBundle",
                    "description": "The bundle of managed properties - this will only be present if type of the property is bundle."
                },
                "valueBundleArray": {
                    "description": "The list of bundles of properties - this will only be present if type of the property is bundle_array.",
                    "items": {
                        "$ref": "ManagedPropertyBundle"
                    },
                    "type": "array"
                },
                "valueInteger": {
                    "description": "The integer value - this will only be present if type of the property is integer.",
                    "format": "int32",
                    "type": "integer"
                },
                "valueString": {
                    "description": "The string value - this will only be present if type of the property is string, choice or hidden.",
                    "type": "string"
                },
                "valueStringArray": {
                    "description": "The list of string values - this will only be present if type of the property is multiselect.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "ManagedPropertyBundle": {
            "description": "A bundle of managed properties.",
            "id": "ManagedPropertyBundle",
            "properties": {
                "managedProperty": {
                    "description": "The list of managed properties.",
                    "items": {
                        "$ref": "ManagedProperty"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "NewDeviceEvent": {
            "description": "An event generated when a new device is ready to be managed.",
            "id": "NewDeviceEvent",
            "properties": {
                "deviceId": {
                    "description": "The Android ID of the device. This field will always be present.",
                    "type": "string"
                },
                "managementType": {
                    "description": "Identifies the extent to which the device is controlled by an Android EMM in various deployment configurations.\n\nPossible values include: \n- \"managedDevice\", a device where the DPC is set as device owner, \n- \"managedProfile\", a device where the DPC is set as profile owner.",
                    "type": "string"
                },
                "userId": {
                    "description": "The ID of the user. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "NewPermissionsEvent": {
            "description": "An event generated when new permissions are added to an app.",
            "id": "NewPermissionsEvent",
            "properties": {
                "approvedPermissions": {
                    "description": "The set of permissions that the enterprise admin has already approved for this application. Use Permissions.Get on the EMM API to retrieve details about these permissions.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which new permissions were added. This field will always be present.",
                    "type": "string"
                },
                "requestedPermissions": {
                    "description": "The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "Notification": {
            "description": "A notification of one event relating to an enterprise.",
            "id": "Notification",
            "properties": {
                "appRestrictionsSchemaChangeEvent": {
                    "$ref": "AppRestrictionsSchemaChangeEvent",
                    "description": "Notifications about new app restrictions schema changes."
                },
                "appUpdateEvent": {
                    "$ref": "AppUpdateEvent",
                    "description": "Notifications about app updates."
                },
                "enterpriseId": {
                    "description": "The ID of the enterprise for which the notification is sent. This will always be present.",
                    "type": "string"
                },
                "installFailureEvent": {
                    "$ref": "InstallFailureEvent",
                    "description": "Notifications about an app installation failure."
                },
                "newDeviceEvent": {
                    "$ref": "NewDeviceEvent",
                    "description": "Notifications about new devices."
                },
                "newPermissionsEvent": {
                    "$ref": "NewPermissionsEvent",
                    "description": "Notifications about new app permissions."
                },
                "notificationType": {
                    "description": "Type of the notification.",
                    "type": "string"
                },
                "productApprovalEvent": {
                    "$ref": "ProductApprovalEvent",
                    "description": "Notifications about changes to a product's approval status."
                },
                "productAvailabilityChangeEvent": {
                    "$ref": "ProductAvailabilityChangeEvent",
                    "description": "Notifications about product availability changes."
                },
                "timestampMillis": {
                    "description": "The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present.",
                    "format": "int64",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "NotificationSet": {
            "description": "A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request.",
            "id": "NotificationSet",
            "properties": {
                "kind": {
                    "default": "androidenterprise#notificationSet",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#notificationSet\".",
                    "type": "string"
                },
                "notification": {
                    "description": "The notifications received, or empty if no notifications are present.",
                    "items": {
                        "$ref": "Notification"
                    },
                    "type": "array"
                },
                "notificationSetId": {
                    "description": "The notification set ID, required to mark the notification as received with the Enterprises.AcknowledgeNotification API. This will be omitted if no notifications are present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "PageInfo": {
            "id": "PageInfo",
            "properties": {
                "resultPerPage": {
                    "format": "int32",
                    "type": "integer"
                },
                "startIndex": {
                    "format": "int32",
                    "type": "integer"
                },
                "totalResults": {
                    "format": "int32",
                    "type": "integer"
                }
            },
            "type": "object"
        },
        "Permission": {
            "description": "A Permissions resource represents some extra capability, to be granted to an Android app, which requires explicit consent. An enterprise admin must consent to these permissions on behalf of their users before an entitlement for the app can be created.\n\nThe permissions collection is read-only. The information provided for each permission (localized name and description) is intended to be used in the MDM user interface when obtaining consent from the enterprise.",
            "id": "Permission",
            "properties": {
                "description": {
                    "description": "A longer description of the Permissions resource, giving more details of what it affects.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#permission",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#permission\".",
                    "type": "string"
                },
                "name": {
                    "description": "The name of the permission.",
                    "type": "string"
                },
                "permissionId": {
                    "description": "An opaque string uniquely identifying the permission.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "Product": {
            "description": "A Products resource represents an app in the Google Play store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)\n\nThe information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.",
            "id": "Product",
            "properties": {
                "appVersion": {
                    "description": "App versions currently available for this product.",
                    "items": {
                        "$ref": "AppVersion"
                    },
                    "type": "array"
                },
                "authorName": {
                    "description": "The name of the author of the product (for example, the app developer).",
                    "type": "string"
                },
                "availableTracks": {
                    "description": "The tracks that are visible to the enterprise.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "detailsUrl": {
                    "description": "A link to the (consumer) Google Play details page for the product.",
                    "type": "string"
                },
                "distributionChannel": {
                    "description": "How and to whom the package is made available. The value publicGoogleHosted means that the package is available through the Play store and not restricted to a specific enterprise. The value privateGoogleHosted means that the package is a private app (restricted to an enterprise) but hosted by Google. The value privateSelfHosted means that the package is a private app (restricted to an enterprise) and is privately hosted.",
                    "type": "string"
                },
                "iconUrl": {
                    "description": "A link to an image that can be used as an icon for the product. This image is suitable for use at up to 512px x 512px.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#product",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#product\".",
                    "type": "string"
                },
                "productId": {
                    "description": "A string of the form app:<package name>. For example, app:com.google.android.gm represents the Gmail app.",
                    "type": "string"
                },
                "productPricing": {
                    "description": "Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it).",
                    "type": "string"
                },
                "requiresContainerApp": {
                    "description": "Deprecated.",
                    "type": "boolean"
                },
                "signingCertificate": {
                    "$ref": "ProductSigningCertificate",
                    "description": "The certificate used to sign this product."
                },
                "smallIconUrl": {
                    "description": "A link to a smaller image that can be used as an icon for the product. This image is suitable for use at up to 128px x 128px.",
                    "type": "string"
                },
                "title": {
                    "description": "The name of the product.",
                    "type": "string"
                },
                "workDetailsUrl": {
                    "description": "A link to the managed Google Play details page for the product, for use by an Enterprise admin.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductApprovalEvent": {
            "description": "An event generated when a product's approval status is changed.",
            "id": "ProductApprovalEvent",
            "properties": {
                "approved": {
                    "description": "Whether the product was approved or unapproved. This field will always be present.",
                    "type": "string"
                },
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the approval status has changed. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductAvailabilityChangeEvent": {
            "description": "An event generated whenever a product's availability changes.",
            "id": "ProductAvailabilityChangeEvent",
            "properties": {
                "availabilityStatus": {
                    "description": "The new state of the product. This field will always be present.",
                    "type": "string"
                },
                "productId": {
                    "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the product availability changed. This field will always be present.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductPermission": {
            "description": "A product permissions resource represents the set of permissions required by a specific app and whether or not they have been accepted by an enterprise admin.\n\nThe API can be used to read the set of permissions, and also to update the set to indicate that permissions have been accepted.",
            "id": "ProductPermission",
            "properties": {
                "permissionId": {
                    "description": "An opaque string uniquely identifying the permission.",
                    "type": "string"
                },
                "state": {
                    "description": "Whether the permission has been accepted or not.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductPermissions": {
            "description": "Information about the permissions required by a specific app and whether they have been accepted by the enterprise.",
            "id": "ProductPermissions",
            "properties": {
                "kind": {
                    "default": "androidenterprise#productPermissions",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productPermissions\".",
                    "type": "string"
                },
                "permission": {
                    "description": "The permissions required by the app.",
                    "items": {
                        "$ref": "ProductPermission"
                    },
                    "type": "array"
                },
                "productId": {
                    "description": "The ID of the app that the permissions relate to, e.g. \"app:com.google.android.gm\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductSet": {
            "description": "A set of products.",
            "id": "ProductSet",
            "properties": {
                "kind": {
                    "default": "androidenterprise#productSet",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productSet\".",
                    "type": "string"
                },
                "productId": {
                    "description": "The list of product IDs making up the set of products.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "productSetBehavior": {
                    "description": "The interpretation of this product set. \"unknown\" should never be sent and is ignored if received. \"whitelist\" means that the user is entitled to access the product set. \"includeAll\" means that all products are accessible, including products that are approved, products with revoked approval, and products that have never been approved. \"allApproved\" means that the user is entitled to access all products that are approved for the enterprise. If the value is \"allApproved\" or \"includeAll\", the productId field is ignored. If no value is provided, it is interpreted as \"whitelist\" for backwards compatibility. Further \"allApproved\" or \"includeAll\" does not enable automatic visibility of \"alpha\" or \"beta\" tracks for Android app. Use ProductVisibility to enable \"alpha\" or \"beta\" tracks per user.",
                    "type": "string"
                },
                "productVisibility": {
                    "description": "Other products that are part of the set, in addition to those specified in the productId array. The only difference between this field and the productId array is that it's possible to specify additional information about this product visibility, see ProductVisibility and its fields for more information. Specifying the same product ID both here and in the productId array is not allowed and it will result in an error.",
                    "items": {
                        "$ref": "ProductVisibility"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "ProductSigningCertificate": {
            "id": "ProductSigningCertificate",
            "properties": {
                "certificateHashSha1": {
                    "description": "The base64 urlsafe encoded SHA1 hash of the certificate. (This field is deprecated in favor of SHA2-256. It should not be used and may be removed at any time.)",
                    "type": "string"
                },
                "certificateHashSha256": {
                    "description": "The base64 urlsafe encoded SHA2-256 hash of the certificate.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductVisibility": {
            "description": "A product to be made visible to a user.",
            "id": "ProductVisibility",
            "properties": {
                "productId": {
                    "description": "The product ID that should be made visible to the user. This is required.",
                    "type": "string"
                },
                "tracks": {
                    "description": "This allows to only grant visibility to the specified tracks of the app. For example, if an app has a prod version, a beta version and an alpha version and the enterprise has been granted visibility to both the alpha and beta tracks, if tracks is {\"beta\", \"production\"} the user will be able to install the app and they will get the beta version of the app. If there are no app versions in the specified track or if the enterprise wasn't granted visibility for the track, adding the \"alpha\" and \"beta\" values to the list of tracks will have no effect for now; however they will take effect once both conditions are met. Note that the enterprise itself needs to be granted access to the alpha and/or beta tracks, regardless of whether individual users or admins have access to those tracks.\n\nThe allowed sets are: {} (considered equivalent to {\"production\"}) {\"production\"} {\"beta\", \"production\"} {\"alpha\", \"beta\", \"production\"} The order of elements is not relevant. Any other set of tracks will be rejected with an error.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "ProductsApproveRequest": {
            "id": "ProductsApproveRequest",
            "properties": {
                "approvalUrlInfo": {
                    "$ref": "ApprovalUrlInfo",
                    "description": "The approval URL that was shown to the user. Only the permissions shown to the user with that URL will be accepted, which may not be the product's entire set of permissions. For example, the URL may only display new permissions from an update after the product was approved, or not include new permissions if the product was updated since the URL was generated."
                },
                "approvedPermissions": {
                    "description": "Sets how new permission requests for the product are handled. \"allPermissions\" automatically approves all current and future permissions for the product. \"currentPermissionsOnly\" approves the current set of permissions for the product, but any future permissions added through updates will require manual reapproval. If not specified, only the current set of permissions will be approved.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductsGenerateApprovalUrlResponse": {
            "id": "ProductsGenerateApprovalUrlResponse",
            "properties": {
                "url": {
                    "description": "A URL that can be rendered in an iframe to display the permissions (if any) of a product. This URL can be used to approve the product only once and only within 24 hours of being generated, using the Products.approve call. If the product is currently unapproved and has no permissions, this URL will point to an empty page. If the product is currently approved, a URL will only be generated if that product has added permissions since it was last approved, and the URL will only display those new permissions that have not yet been accepted.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ProductsListResponse": {
            "description": "The matching products.",
            "id": "ProductsListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#productsListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productsListResponse\".",
                    "type": "string"
                },
                "pageInfo": {
                    "$ref": "PageInfo",
                    "description": "General pagination information."
                },
                "product": {
                    "description": "Information about a product (e.g. an app) in the Google Play store, for display to an enterprise admin.",
                    "items": {
                        "$ref": "Product"
                    },
                    "type": "array"
                },
                "tokenPagination": {
                    "$ref": "TokenPagination",
                    "description": "Pagination information for token pagination."
                }
            },
            "type": "object"
        },
        "ServiceAccount": {
            "description": "A service account identity, including the name and credentials that can be used to authenticate as the service account.",
            "id": "ServiceAccount",
            "properties": {
                "key": {
                    "$ref": "ServiceAccountKey",
                    "description": "Credentials that can be used to authenticate as this ServiceAccount."
                },
                "kind": {
                    "default": "androidenterprise#serviceAccount",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccount\".",
                    "type": "string"
                },
                "name": {
                    "description": "The account name of the service account, in the form of an email address. Assigned by the server.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ServiceAccountKey": {
            "description": "Credentials that can be used to authenticate as a service account.",
            "id": "ServiceAccountKey",
            "properties": {
                "data": {
                    "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google.",
                    "type": "string"
                },
                "id": {
                    "description": "An opaque, unique identifier for this ServiceAccountKey. Assigned by the server.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#serviceAccountKey",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccountKey\".",
                    "type": "string"
                },
                "publicData": {
                    "description": "Public key data for the credentials file. This is an X.509 cert. If you are using the googleCredentials key type, this is identical to the cert that can be retrieved by using the X.509 cert url inside of the credentials file.",
                    "type": "string"
                },
                "type": {
                    "annotations": {
                        "required": [
                            "androidenterprise.serviceaccountkeys.insert"
                        ]
                    },
                    "description": "The file format of the generated key data.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ServiceAccountKeysListResponse": {
            "id": "ServiceAccountKeysListResponse",
            "properties": {
                "serviceAccountKey": {
                    "description": "The service account credentials.",
                    "items": {
                        "$ref": "ServiceAccountKey"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "SignupInfo": {
            "description": "A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token.",
            "id": "SignupInfo",
            "properties": {
                "completionToken": {
                    "description": "An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#signupInfo",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#signupInfo\".",
                    "type": "string"
                },
                "url": {
                    "description": "A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "StoreCluster": {
            "description": "Definition of a managed Google Play store cluster, a list of products displayed as part of a store page.",
            "id": "StoreCluster",
            "properties": {
                "id": {
                    "description": "Unique ID of this cluster. Assigned by the server. Immutable once assigned.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#storeCluster",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeCluster\".",
                    "type": "string"
                },
                "name": {
                    "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.",
                    "items": {
                        "$ref": "LocalizedText"
                    },
                    "type": "array"
                },
                "orderInPage": {
                    "description": "String (US-ASCII only) used to determine order of this cluster within the parent page's elements. Page elements are sorted in lexicographic order of this field. Duplicated values are allowed, but ordering between elements with duplicate order is undefined.\n\nThe value of this field is never visible to a user, it is used solely for the purpose of defining an ordering. Maximum length is 256 characters.",
                    "type": "string"
                },
                "productId": {
                    "description": "List of products in the order they are displayed in the cluster. There should not be duplicates within a cluster.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "StoreLayout": {
            "description": "General setting for the managed Google Play store layout, currently only specifying the page to display the first time the store is opened.",
            "id": "StoreLayout",
            "properties": {
                "homepageId": {
                    "description": "The ID of the store page to be used as the homepage. The homepage is the first page shown in the managed Google Play Store.\n\nNot specifying a homepage is equivalent to setting the store layout type to \"basic\".",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#storeLayout",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayout\".",
                    "type": "string"
                },
                "storeLayoutType": {
                    "description": "The store layout type. By default, this value is set to \"basic\" if the homepageId field is not set, and to \"custom\" otherwise. If set to \"basic\", the layout will consist of all approved apps that have been whitelisted for the user.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "StoreLayoutClustersListResponse": {
            "description": "The store page resources for the enterprise.",
            "id": "StoreLayoutClustersListResponse",
            "properties": {
                "cluster": {
                    "description": "A store cluster of an enterprise.",
                    "items": {
                        "$ref": "StoreCluster"
                    },
                    "type": "array"
                },
                "kind": {
                    "default": "androidenterprise#storeLayoutClustersListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutClustersListResponse\".",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "StoreLayoutPagesListResponse": {
            "description": "The store page resources for the enterprise.",
            "id": "StoreLayoutPagesListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#storeLayoutPagesListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storeLayoutPagesListResponse\".",
                    "type": "string"
                },
                "page": {
                    "description": "A store page of an enterprise.",
                    "items": {
                        "$ref": "StorePage"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "StorePage": {
            "description": "Definition of a managed Google Play store page, made of a localized name and links to other pages. A page also contains clusters defined as a subcollection.",
            "id": "StorePage",
            "properties": {
                "id": {
                    "description": "Unique ID of this page. Assigned by the server. Immutable once assigned.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#storePage",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#storePage\".",
                    "type": "string"
                },
                "link": {
                    "description": "Ordered list of pages a user should be able to reach from this page. The pages must exist, must not be this page, and once a link is created the page linked to cannot be deleted until all links to it are removed. It is recommended that the basic pages are created first, before adding the links between pages.\n\nNo attempt is made to verify that all pages are reachable from the homepage.",
                    "items": {
                        "type": "string"
                    },
                    "type": "array"
                },
                "name": {
                    "description": "Ordered list of localized strings giving the name of this page. The text displayed is the one that best matches the user locale, or the first entry if there is no good match. There needs to be at least one entry.",
                    "items": {
                        "$ref": "LocalizedText"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "TokenPagination": {
            "id": "TokenPagination",
            "properties": {
                "nextPageToken": {
                    "type": "string"
                },
                "previousPageToken": {
                    "type": "string"
                }
            },
            "type": "object"
        },
        "User": {
            "description": "A Users resource represents an account associated with an enterprise. The account may be specific to a device or to an individual user (who can then use the account across multiple devices). The account may provide access to managed Google Play only, or to other Google services, depending on the identity model: \n- The Google managed domain identity model requires synchronization to Google account sources (via primaryEmail). \n- The managed Google Play Accounts identity model provides a dynamic means for enterprises to create user or device accounts as needed. These accounts provide access to managed Google Play.",
            "id": "User",
            "properties": {
                "accountIdentifier": {
                    "annotations": {
                        "required": [
                            "androidenterprise.users.insert"
                        ]
                    },
                    "description": "A unique identifier you create for this user, such as \"user342\" or \"asset#44418\". Do not use personally identifiable information (PII) for this property. Must always be set for EMM-managed users. Not set for Google-managed users.",
                    "type": "string"
                },
                "accountType": {
                    "annotations": {
                        "required": [
                            "androidenterprise.users.insert"
                        ]
                    },
                    "description": "The type of account that this user represents. A userAccount can be installed on multiple devices, but a deviceAccount is specific to a single device. An EMM-managed user (emmManaged) can be either type (userAccount, deviceAccount), but a Google-managed user (googleManaged) is always a userAccount.",
                    "type": "string"
                },
                "displayName": {
                    "description": "The name that will appear in user interfaces. Setting this property is optional when creating EMM-managed users. If you do set this property, use something generic about the organization (such as \"Example, Inc.\") or your name (as EMM). Not used for Google-managed user accounts.",
                    "type": "string"
                },
                "id": {
                    "description": "The unique ID for the user.",
                    "type": "string"
                },
                "kind": {
                    "default": "androidenterprise#user",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#user\".",
                    "type": "string"
                },
                "managementType": {
                    "description": "The entity that manages the user. With googleManaged users, the source of truth is Google so EMMs have to make sure a Google Account exists for the user. With emmManaged users, the EMM is in charge.",
                    "type": "string"
                },
                "primaryEmail": {
                    "description": "The user's primary email address, for example, \"jsmith@example.com\". Will always be set for Google managed users and not set for EMM managed users.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "UserToken": {
            "description": "A UserToken is used by a user when setting up a managed device or profile with their managed Google Play account on a device. When the user enters their email address and token (activation code) the appropriate EMM app can be automatically downloaded.",
            "id": "UserToken",
            "properties": {
                "kind": {
                    "default": "androidenterprise#userToken",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#userToken\".",
                    "type": "string"
                },
                "token": {
                    "description": "The token (activation code) to be entered by the user. This consists of a sequence of decimal digits. Note that the leading digit may be 0.",
                    "type": "string"
                },
                "userId": {
                    "description": "The unique ID for the user.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "UsersListResponse": {
            "description": "The matching user resources.",
            "id": "UsersListResponse",
            "properties": {
                "kind": {
                    "default": "androidenterprise#usersListResponse",
                    "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#usersListResponse\".",
                    "type": "string"
                },
                "user": {
                    "description": "A user of an enterprise.",
                    "items": {
                        "$ref": "User"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        }
    },
    "servicePath": "androidenterprise/v1/",
    "title": "Google Play EMM API",
    "version": "v1"
}