{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-identity.devices.lookup": {
          "description": "See your device details"
        },
        "https://www.googleapis.com/auth/cloud-identity.groups": {
          "description": "See, change, create, and delete any of the Cloud Identity Groups that you can access, including the members of each group"
        },
        "https://www.googleapis.com/auth/cloud-identity.groups.readonly": {
          "description": "See any Cloud Identity Groups that you can access, including group members and their emails"
        },
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://cloudidentity.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Identity",
  "description": "API for provisioning and managing identity resources.",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/identity/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "cloudidentity:v1beta1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://cloudidentity.mtls.googleapis.com/",
  "name": "cloudidentity",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "devices": {
      "methods": {
        "cancelWipe": {
          "description": "Cancels an unfinished device wipe. This operation can be used to cancel device wipe in the gap between the wipe operation returning success and the device being wiped.",
          "flatPath": "v1beta1/devices/{devicesId}:cancelWipe",
          "httpMethod": "POST",
          "id": "cloudidentity.devices.cancelWipe",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
              "location": "path",
              "pattern": "^devices/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}:cancelWipe",
          "request": {
            "$ref": "CancelWipeDeviceRequest"
          },
          "response": {
            "$ref": "Operation"
          }
        },
        "create": {
          "description": "Creates a device. Only company-owned device may be created.",
          "flatPath": "v1beta1/devices",
          "httpMethod": "POST",
          "id": "cloudidentity.devices.create",
          "parameterOrder": [],
          "parameters": {},
          "path": "v1beta1/devices",
          "request": {
            "$ref": "CreateDeviceRequest"
          },
          "response": {
            "$ref": "Operation"
          }
        },
        "delete": {
          "description": "Deletes the specified device.",
          "flatPath": "v1beta1/devices/{devicesId}",
          "httpMethod": "DELETE",
          "id": "cloudidentity.devices.delete",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "customer": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
              "location": "query",
              "type": "string"
            },
            "name": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device.",
              "location": "path",
              "pattern": "^devices/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}",
          "response": {
            "$ref": "Operation"
          }
        },
        "get": {
          "description": "Retrieves the specified device.",
          "flatPath": "v1beta1/devices/{devicesId}",
          "httpMethod": "GET",
          "id": "cloudidentity.devices.get",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "customer": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Customer in format: `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
              "location": "query",
              "type": "string"
            },
            "name": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device.",
              "location": "path",
              "pattern": "^devices/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}",
          "response": {
            "$ref": "Device"
          }
        },
        "list": {
          "description": "Lists/Searches devices.",
          "flatPath": "v1beta1/devices",
          "httpMethod": "GET",
          "id": "cloudidentity.devices.list",
          "parameterOrder": [],
          "parameters": {
            "customer": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer.",
              "location": "query",
              "type": "string"
            },
            "filter": {
              "description": "Optional. Additional restrictions when fetching list of devices. [HC article link](https://support.google.com/a/answer/7549103)",
              "location": "query",
              "type": "string"
            },
            "orderBy": {
              "description": "Optional. Order specification for devices in the response. Only one of the following field names may be used to specify the order: `create_time`, `last_sync_time`, `model`, `os_version`, `device_type` and `serial_number`. `desc` may be specified optionally to specify results to be sorted in descending order. Default order is ascending.",
              "location": "query",
              "type": "string"
            },
            "pageSize": {
              "description": "Optional. The maximum number of Devices to return. If unspecified, at most 20 Devices will be returned. The maximum value is 100; values above 100 will be coerced to 100.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "Optional. A page token, received from a previous `ListDevices` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListDevices` must match the call that provided the page token.",
              "location": "query",
              "type": "string"
            },
            "view": {
              "description": "Optional. The view to use for the List request.",
              "enum": [
                "VIEW_UNSPECIFIED",
                "COMPANY_INVENTORY",
                "USER_ASSIGNED_DEVICES"
              ],
              "enumDescriptions": [
                "Default value. The value is unused.",
                "This view contains all devices imported by the company admin. Each device in the response contains all information specified by the company admin when importing the device (i.e. asset tags).",
                "This view contains all devices with at least one user registered on the device. Each device in the response contains all device information, except for asset tags."
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/devices",
          "response": {
            "$ref": "ListDevicesResponse"
          }
        },
        "wipe": {
          "description": "Wipes all data on the specified device.",
          "flatPath": "v1beta1/devices/{devicesId}:wipe",
          "httpMethod": "POST",
          "id": "cloudidentity.devices.wipe",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
              "location": "path",
              "pattern": "^devices/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}:wipe",
          "request": {
            "$ref": "WipeDeviceRequest"
          },
          "response": {
            "$ref": "Operation"
          }
        }
      },
      "resources": {
        "deviceUsers": {
          "methods": {
            "approve": {
              "description": "Approves device to access user data.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}:approve",
              "httpMethod": "POST",
              "id": "cloudidentity.devices.deviceUsers.approve",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}:approve",
              "request": {
                "$ref": "ApproveDeviceUserRequest"
              },
              "response": {
                "$ref": "Operation"
              }
            },
            "block": {
              "description": "Blocks device from accessing user data",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}:block",
              "httpMethod": "POST",
              "id": "cloudidentity.devices.deviceUsers.block",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}:block",
              "request": {
                "$ref": "BlockDeviceUserRequest"
              },
              "response": {
                "$ref": "Operation"
              }
            },
            "cancelWipe": {
              "description": "Cancels an unfinished user account wipe. This operation can be used to cancel device wipe in the gap between the wipe operation returning success and the device being wiped.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}:cancelWipe",
              "httpMethod": "POST",
              "id": "cloudidentity.devices.deviceUsers.cancelWipe",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}:cancelWipe",
              "request": {
                "$ref": "CancelWipeDeviceUserRequest"
              },
              "response": {
                "$ref": "Operation"
              }
            },
            "delete": {
              "description": "Deletes the specified DeviceUser. This also revokes the user's access to device data.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}",
              "httpMethod": "DELETE",
              "id": "cloudidentity.devices.deviceUsers.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "customer": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
                  "location": "query",
                  "type": "string"
                },
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "Operation"
              }
            },
            "get": {
              "description": "Retrieves the specified DeviceUser",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}",
              "httpMethod": "GET",
              "id": "cloudidentity.devices.deviceUsers.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "customer": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
                  "location": "query",
                  "type": "string"
                },
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "DeviceUser"
              }
            },
            "list": {
              "description": "Lists/Searches DeviceUsers.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers",
              "httpMethod": "GET",
              "id": "cloudidentity.devices.deviceUsers.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "customer": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
                  "location": "query",
                  "type": "string"
                },
                "filter": {
                  "description": "Optional. Additional restrictions when fetching list of devices. [HC article](https://support.google.com/a/answer/7549103)",
                  "location": "query",
                  "type": "string"
                },
                "orderBy": {
                  "description": "Optional. Order specification for devices in the response.",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "Optional. The maximum number of DeviceUsers to return. If unspecified, at most 5 DeviceUsers will be returned. The maximum value is 20; values above 20 will be coerced to 20.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional. A page token, received from a previous `ListDeviceUsers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBooks` must match the call that provided the page token.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. To list all DeviceUsers, set this to \"devices/-\". To list all DeviceUsers owned by a device, set this to the resource name of the device. Format: devices/{device}",
                  "location": "path",
                  "pattern": "^devices/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/deviceUsers",
              "response": {
                "$ref": "ListDeviceUsersResponse"
              }
            },
            "lookup": {
              "description": "Looks up resource names of the DeviceUsers associated with the caller's credentials, as well as the properties provided in the request. This method must be called with end-user credentials with the scope: https://www.googleapis.com/auth/cloud-identity.devices.lookup If multiple properties are provided, only DeviceUsers having all of these properties are considered as matches - i.e. the query behaves like an AND. Different platforms require different amounts of information from the caller to ensure that the DeviceUser is uniquely identified. - iOS: No properties need to be passed, the caller's credentials are sufficient to identify the corresponding DeviceUser. - Android: Specifying the 'android_id' field is required. - Desktop: Specifying the 'raw_resource_id' field is required.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers:lookup",
              "httpMethod": "GET",
              "id": "cloudidentity.devices.deviceUsers.lookup",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "androidId": {
                  "description": "Android Id returned by [Settings.Secure#ANDROID_ID](https://developer.android.com/reference/android/provider/Settings.Secure.html#ANDROID_ID).",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "The maximum number of DeviceUsers to return. If unspecified, at most 20 DeviceUsers will be returned. The maximum value is 20; values above 20 will be coerced to 20.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "A page token, received from a previous `LookupDeviceUsers` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `LookupDeviceUsers` must match the call that provided the page token.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Must be set to \"devices/-/deviceUsers\" to search across all DeviceUser belonging to the user.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers$",
                  "required": true,
                  "type": "string"
                },
                "rawResourceId": {
                  "description": "Raw Resource Id used by Google Endpoint Verification. If the user is enrolled into Google Endpoint Verification, this id will be saved as the 'device_resource_id' field in the following platform dependent files. Mac: ~/.secureConnect/context_aware_config.json Windows: C:\\Users\\%USERPROFILE%\\.secureConnect\\context_aware_config.json Linux: ~/.secureConnect/context_aware_config.json",
                  "location": "query",
                  "type": "string"
                },
                "userId": {
                  "description": "The user whose DeviceUser's resource name will be fetched. Must be set to 'me' to fetch the DeviceUser's resource name for the calling user.",
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}:lookup",
              "response": {
                "$ref": "LookupSelfDeviceUsersResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.devices.lookup"
              ]
            },
            "wipe": {
              "description": "Wipes the user's account on a device.",
              "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}:wipe",
              "httpMethod": "POST",
              "id": "cloudidentity.devices.deviceUsers.wipe",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}/deviceUsers/{device_user_id}`, where device_id is the unique ID assigned to the Device, and device_user_id is the unique ID assigned to the User.",
                  "location": "path",
                  "pattern": "^devices/[^/]+/deviceUsers/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}:wipe",
              "request": {
                "$ref": "WipeDeviceUserRequest"
              },
              "response": {
                "$ref": "Operation"
              }
            }
          },
          "resources": {
            "clientStates": {
              "methods": {
                "get": {
                  "description": "Gets the client state for the device user",
                  "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}/clientStates/{clientStatesId}",
                  "httpMethod": "GET",
                  "id": "cloudidentity.devices.deviceUsers.clientStates.get",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "customer": {
                      "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device_id}/deviceUsers/{device_user_id}/clientStates/{partner_id}`, where device_id is the unique ID assigned to the Device, device_user_id is the unique ID assigned to the User and partner_id identifies the partner storing the data.",
                      "location": "path",
                      "pattern": "^devices/[^/]+/deviceUsers/[^/]+/clientStates/[^/]+$",
                      "required": true,
                      "type": "string"
                    }
                  },
                  "path": "v1beta1/{+name}",
                  "response": {
                    "$ref": "ClientState"
                  }
                },
                "patch": {
                  "description": "Updates the client state for the device user",
                  "flatPath": "v1beta1/devices/{devicesId}/deviceUsers/{deviceUsersId}/clientStates/{clientStatesId}",
                  "httpMethod": "PATCH",
                  "id": "cloudidentity.devices.deviceUsers.clientStates.patch",
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "customer": {
                      "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
                      "location": "query",
                      "type": "string"
                    },
                    "name": {
                      "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner_id}`, where partner_id corresponds to the partner storing the data.",
                      "location": "path",
                      "pattern": "^devices/[^/]+/deviceUsers/[^/]+/clientStates/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "updateMask": {
                      "description": "Optional. Comma-separated list of fully qualified names of fields to be updated. If not specified, all updatable fields in ClientState are updated.",
                      "format": "google-fieldmask",
                      "location": "query",
                      "type": "string"
                    }
                  },
                  "path": "v1beta1/{+name}",
                  "request": {
                    "$ref": "ClientState"
                  },
                  "response": {
                    "$ref": "Operation"
                  }
                }
              }
            }
          }
        }
      }
    },
    "groups": {
      "methods": {
        "create": {
          "description": "Creates a `Group`.",
          "flatPath": "v1beta1/groups",
          "httpMethod": "POST",
          "id": "cloudidentity.groups.create",
          "parameterOrder": [],
          "parameters": {
            "initialGroupConfig": {
              "description": "Required. The initial configuration option for the `Group`.",
              "enum": [
                "INITIAL_GROUP_CONFIG_UNSPECIFIED",
                "WITH_INITIAL_OWNER",
                "EMPTY"
              ],
              "enumDescriptions": [
                "Default. Should not be used.",
                "The end user making the request will be added as the initial owner of the `Group`.",
                "An empty group is created without any initial owners. This can only be used by admins of the domain."
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/groups",
          "request": {
            "$ref": "Group"
          },
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "delete": {
          "description": "Deletes a `Group`.",
          "flatPath": "v1beta1/groups/{groupsId}",
          "httpMethod": "DELETE",
          "id": "cloudidentity.groups.delete",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group` to retrieve. Must be of the form `groups/{group_id}`.",
              "location": "path",
              "pattern": "^groups/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}",
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "get": {
          "description": "Retrieves a `Group`.",
          "flatPath": "v1beta1/groups/{groupsId}",
          "httpMethod": "GET",
          "id": "cloudidentity.groups.get",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group` to retrieve. Must be of the form `groups/{group_id}`.",
              "location": "path",
              "pattern": "^groups/[^/]+$",
              "required": true,
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}",
          "response": {
            "$ref": "Group"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "list": {
          "description": "Lists the `Group`s under a customer or namespace.",
          "flatPath": "v1beta1/groups",
          "httpMethod": "GET",
          "id": "cloudidentity.groups.list",
          "parameterOrder": [],
          "parameters": {
            "pageSize": {
              "description": "The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `View.BASIC` and to 50 for `View.FULL`. Must not be greater than 1000 for `View.BASIC` or 500 for `View.FULL`.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "The `next_page_token` value returned from a previous list request, if any.",
              "location": "query",
              "type": "string"
            },
            "parent": {
              "description": "Required. The parent resource under which to list all `Group`s. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.",
              "location": "query",
              "type": "string"
            },
            "view": {
              "description": "The level of detail to be returned. If unspecified, defaults to `View.BASIC`.",
              "enum": [
                "VIEW_UNSPECIFIED",
                "BASIC",
                "FULL"
              ],
              "enumDescriptions": [
                "Default. Should not be used.",
                "Only basic resource information is returned.",
                "All resource information is returned."
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/groups",
          "response": {
            "$ref": "ListGroupsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "lookup": {
          "description": "Looks up the [resource name](https://cloud.google.com/apis/design/resource_names) of a `Group` by its `EntityKey`.",
          "flatPath": "v1beta1/groups:lookup",
          "httpMethod": "GET",
          "id": "cloudidentity.groups.lookup",
          "parameterOrder": [],
          "parameters": {
            "groupKey.id": {
              "description": "The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source's requirements. Must be unique within a `namespace`.",
              "location": "query",
              "type": "string"
            },
            "groupKey.namespace": {
              "description": "The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/groups:lookup",
          "response": {
            "$ref": "LookupGroupNameResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "patch": {
          "description": "Updates a `Group`.",
          "flatPath": "v1beta1/groups/{groupsId}",
          "httpMethod": "PATCH",
          "id": "cloudidentity.groups.patch",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "name": {
              "description": "Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.",
              "location": "path",
              "pattern": "^groups/[^/]+$",
              "required": true,
              "type": "string"
            },
            "updateMask": {
              "description": "Required. The fully-qualified names of fields to update. May only contain the following fields: `display_name`, `description`.",
              "format": "google-fieldmask",
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/{+name}",
          "request": {
            "$ref": "Group"
          },
          "response": {
            "$ref": "Operation"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        },
        "search": {
          "description": "Searches for `Group`s matching a specified query.",
          "flatPath": "v1beta1/groups:search",
          "httpMethod": "GET",
          "id": "cloudidentity.groups.search",
          "parameterOrder": [],
          "parameters": {
            "pageSize": {
              "description": "The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and to 50 for `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "pageToken": {
              "description": "The `next_page_token` value returned from a previous search request, if any.",
              "location": "query",
              "type": "string"
            },
            "query": {
              "description": "Required. The search query. Must be specified in [Common Expression Language](https://opensource.google/projects/cel). May only contain equality operators on the parent and inclusion operators on labels (e.g., `parent == 'customers/{customer_id}' \u0026\u0026 'cloudidentity.googleapis.com/groups.discussion_forum' in labels`).",
              "location": "query",
              "type": "string"
            },
            "view": {
              "description": "The level of detail to be returned. If unspecified, defaults to `View.BASIC`.",
              "enum": [
                "BASIC",
                "FULL"
              ],
              "enumDescriptions": [
                "Default. Only basic resource information is returned.",
                "All resource information is returned."
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v1beta1/groups:search",
          "response": {
            "$ref": "SearchGroupsResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-identity.groups",
            "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
            "https://www.googleapis.com/auth/cloud-platform"
          ]
        }
      },
      "resources": {
        "memberships": {
          "methods": {
            "create": {
              "description": "Creates a `Membership`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships",
              "httpMethod": "POST",
              "id": "cloudidentity.groups.memberships.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The parent `Group` resource under which to create the `Membership`. Must be of the form `groups/{group_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/memberships",
              "request": {
                "$ref": "Membership"
              },
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "delete": {
              "description": "Deletes a `Membership`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships/{membershipsId}",
              "httpMethod": "DELETE",
              "id": "cloudidentity.groups.memberships.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` to delete. Must be of the form `groups/{group_id}/memberships/{membership_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+/memberships/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "get": {
              "description": "Retrieves a `Membership`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships/{membershipsId}",
              "httpMethod": "GET",
              "id": "cloudidentity.groups.memberships.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` to retrieve. Must be of the form `groups/{group_id}/memberships/{membership_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+/memberships/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}",
              "response": {
                "$ref": "Membership"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "list": {
              "description": "Lists the `Membership`s within a `Group`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships",
              "httpMethod": "GET",
              "id": "cloudidentity.groups.memberships.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "The maximum number of results to return. Note that the number of results returned may be less than this value even if there are more available results. To fetch all results, clients must continue calling this method repeatedly until the response no longer contains a `next_page_token`. If unspecified, defaults to 200 for `GroupView.BASIC` and to 50 for `GroupView.FULL`. Must not be greater than 1000 for `GroupView.BASIC` or 500 for `GroupView.FULL`.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "The `next_page_token` value returned from a previous search request, if any.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The parent `Group` resource under which to lookup the `Membership` name. Must be of the form `groups/{group_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "view": {
                  "description": "The level of detail to be returned. If unspecified, defaults to `MembershipView.BASIC`.",
                  "enum": [
                    "BASIC",
                    "FULL"
                  ],
                  "enumDescriptions": [
                    "Default. Only basic resource information is returned.",
                    "All resource information is returned."
                  ],
                  "location": "query",
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/memberships",
              "response": {
                "$ref": "ListMembershipsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "lookup": {
              "description": "Looks up the [resource name](https://cloud.google.com/apis/design/resource_names) of a `Membership` by its `EntityKey`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships:lookup",
              "httpMethod": "GET",
              "id": "cloudidentity.groups.memberships.lookup",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "memberKey.id": {
                  "description": "The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source's requirements. Must be unique within a `namespace`.",
                  "location": "query",
                  "type": "string"
                },
                "memberKey.namespace": {
                  "description": "The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The parent `Group` resource under which to lookup the `Membership` name. Must be of the form `groups/{group_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+parent}/memberships:lookup",
              "response": {
                "$ref": "LookupMembershipNameResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-identity.groups.readonly",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            },
            "modifyMembershipRoles": {
              "description": "Modifies the `MembershipRole`s of a `Membership`.",
              "flatPath": "v1beta1/groups/{groupsId}/memberships/{membershipsId}:modifyMembershipRoles",
              "httpMethod": "POST",
              "id": "cloudidentity.groups.memberships.modifyMembershipRoles",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership` whose roles are to be modified. Must be of the form `groups/{group_id}/memberships/{membership_id}`.",
                  "location": "path",
                  "pattern": "^groups/[^/]+/memberships/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v1beta1/{+name}:modifyMembershipRoles",
              "request": {
                "$ref": "ModifyMembershipRolesRequest"
              },
              "response": {
                "$ref": "ModifyMembershipRolesResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-identity.groups",
                "https://www.googleapis.com/auth/cloud-platform"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20200829",
  "rootUrl": "https://cloudidentity.googleapis.com/",
  "schemas": {
    "AndroidAttributes": {
      "description": "Resource representing the Android specific attributes of a Device.",
      "id": "AndroidAttributes",
      "properties": {
        "enabledUnknownSources": {
          "description": "Whether applications from unknown sources can be installed on device.",
          "type": "boolean"
        },
        "ownerProfileAccount": {
          "description": "Whether this account is on an owner/primary profile. For phones, only true for owner profiles. Android 4+ devices can have secondary or restricted user profiles.",
          "type": "boolean"
        },
        "ownershipPrivilege": {
          "description": "Ownership privileges on device.",
          "enum": [
            "OWNERSHIP_PRIVILEGE_UNSPECIFIED",
            "DEVICE_ADMINISTRATOR",
            "PROFILE_OWNER",
            "DEVICE_OWNER"
          ],
          "enumDescriptions": [
            "Ownership privilege is not set.",
            "Active device administrator privileges on the device.",
            "Profile Owner privileges. The account is in a managed corporate profile.",
            "Device Owner privileges on the device."
          ],
          "type": "string"
        },
        "supportsWorkProfile": {
          "description": "Whether device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the \"Enforce Work Profile\" policy.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "ApproveDeviceUserRequest": {
      "description": "Request message for approving the device to access user data.",
      "id": "ApproveDeviceUserRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ApproveDeviceUserResponse": {
      "description": "Response message for approving the device to access user data.",
      "id": "ApproveDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "BlockDeviceUserRequest": {
      "description": "Request message for blocking account on device.",
      "id": "BlockDeviceUserRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "BlockDeviceUserResponse": {
      "description": "Response message for blocking the device from accessing user data.",
      "id": "BlockDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "CancelWipeDeviceRequest": {
      "description": "Request message for cancelling an unfinished device wipe.",
      "id": "CancelWipeDeviceRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CancelWipeDeviceResponse": {
      "description": "Response message for cancelling an unfinished device wipe.",
      "id": "CancelWipeDeviceResponse",
      "properties": {
        "device": {
          "$ref": "Device",
          "description": "Resultant Device object for the action. Note that asset tags will not be returned in the device object."
        }
      },
      "type": "object"
    },
    "CancelWipeDeviceUserRequest": {
      "description": "Request message for cancelling an unfinished user account wipe.",
      "id": "CancelWipeDeviceUserRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CancelWipeDeviceUserResponse": {
      "description": "Response message for cancelling an unfinished user account wipe.",
      "id": "CancelWipeDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "ClientState": {
      "description": "Represents the state associated with an API client calling the Devices API. Resource representing ClientState and supports updates from API users",
      "id": "ClientState",
      "properties": {
        "assetTags": {
          "description": "The caller can specify asset tags for this resource",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "complianceState": {
          "description": "The compliance state of the resource as specified by the API client.",
          "enum": [
            "COMPLIANCE_STATE_UNSPECIFIED",
            "COMPLIANT",
            "NON_COMPLIANT"
          ],
          "enumDescriptions": [
            "The compliance state of the resource is unknown or unspecified.",
            "Device is compliant with third party policies",
            "Device is not compliant with third party policies"
          ],
          "type": "string"
        },
        "createTime": {
          "description": "Output only. The time the client state data was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "customId": {
          "description": "This field may be used to store a unique identifier for the API resource within which these CustomAttributes are a field.",
          "type": "string"
        },
        "etag": {
          "description": "The token that needs to be passed back for concurrency control in updates. Token needs to be passed back in UpdateRequest",
          "type": "string"
        },
        "healthScore": {
          "description": "The Health score of the resource",
          "enum": [
            "HEALTH_SCORE_UNSPECIFIED",
            "VERY_POOR",
            "POOR",
            "NEUTRAL",
            "GOOD",
            "VERY_GOOD"
          ],
          "enumDescriptions": [
            "Default value",
            "The object is in very poor health as defined by the caller.",
            "The object is in poor health as defined by the caller.",
            "The object health is neither good nor poor, as defined by the caller.",
            "The object is in good health as defined by the caller.",
            "The object is in very good health as defined by the caller."
          ],
          "type": "string"
        },
        "keyValuePairs": {
          "additionalProperties": {
            "$ref": "CustomAttributeValue"
          },
          "description": "The map of key-value attributes stored by callers specific to a device. The total serialized length of this map may not exceed 10KB. No limit is placed on the number of attributes in a map.",
          "type": "object"
        },
        "lastUpdateTime": {
          "description": "Output only. The time the client state data was last updated.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "managed": {
          "description": "The management state of the resource as specified by the API client.",
          "enum": [
            "MANAGED_STATE_UNSPECIFIED",
            "MANAGED",
            "UNMANAGED"
          ],
          "enumDescriptions": [
            "The management state of the resource is unknown or unspecified.",
            "The resource is managed.",
            "The resource is not managed."
          ],
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner_id}`, where partner_id corresponds to the partner storing the data.",
          "readOnly": true,
          "type": "string"
        },
        "ownerType": {
          "description": "Output only. The owner of the ClientState",
          "enum": [
            "OWNER_TYPE_UNSPECIFIED",
            "OWNER_TYPE_CUSTOMER",
            "OWNER_TYPE_PARTNER"
          ],
          "enumDescriptions": [
            "Unknown owner type",
            "Customer is the owner",
            "Partner is the owner"
          ],
          "readOnly": true,
          "type": "string"
        },
        "scoreReason": {
          "description": "A descriptive cause of the health score.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CreateDeviceRequest": {
      "description": "Request message for creating a Company Owned device.",
      "id": "CreateDeviceRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        },
        "device": {
          "$ref": "Device",
          "description": "Required. The device to be created. The name field within this device is ignored in the create method. A new name is created by the method, and returned within the response. Only the fields `device_type`, `serial_number` and `asset_tag` (if present) are used to create the device.`device_type` and `serial_number` are required."
        }
      },
      "type": "object"
    },
    "CustomAttributeValue": {
      "description": "Additional custom attribute values may be one of these types",
      "id": "CustomAttributeValue",
      "properties": {
        "boolValue": {
          "description": "Represents a boolean value.",
          "type": "boolean"
        },
        "numberValue": {
          "description": "Represents a double value.",
          "format": "double",
          "type": "number"
        },
        "stringValue": {
          "description": "Represents a string value.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Device": {
      "description": "A Device within the Cloud Identity Devices API. Represents a Device known to Google Cloud, independent of the device ownership, type, and whether it is assigned or in use by a user.",
      "id": "Device",
      "properties": {
        "androidSpecificAttributes": {
          "$ref": "AndroidAttributes",
          "description": "Output only. Attributes specific to Android devices.",
          "readOnly": true
        },
        "assetTag": {
          "description": "Asset tag of the device.",
          "type": "string"
        },
        "basebandVersion": {
          "description": "Output only. Baseband version of the device.",
          "readOnly": true,
          "type": "string"
        },
        "bootloaderVersion": {
          "description": "Output only. Device bootloader version. Example: 0.6.7.",
          "readOnly": true,
          "type": "string"
        },
        "brand": {
          "description": "Output only. Device brand. Example: Samsung.",
          "readOnly": true,
          "type": "string"
        },
        "buildNumber": {
          "description": "Output only. Build number of the device.",
          "readOnly": true,
          "type": "string"
        },
        "compromisedState": {
          "description": "Output only. Represents whether the Device is compromised.",
          "enum": [
            "COMPROMISED_STATE_UNSPECIFIED",
            "COMPROMISED",
            "UNCOMPROMISED"
          ],
          "enumDescriptions": [
            "Default value.",
            "The device is compromised (currently, this means Android device is rooted).",
            "The device is safe (currently, this means Android device is unrooted)."
          ],
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "description": "Output only. When the Company-Owned device was imported. This field is empty for BYOD devices.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "deviceType": {
          "description": "Output only. Type of device.",
          "enum": [
            "DEVICE_TYPE_UNSPECIFIED",
            "ANDROID",
            "IOS",
            "GOOGLE_SYNC",
            "WINDOWS",
            "MAC_OS",
            "LINUX",
            "CHROME_OS"
          ],
          "enumDescriptions": [
            "Unknown device type",
            "Device is an Android device",
            "Device is an iOS device",
            "Device is a Google Sync device.",
            "Device is a Windows device.",
            "Device is a MacOS device.",
            "Device is a Linux device.",
            "Device is a ChromeOS device."
          ],
          "readOnly": true,
          "type": "string"
        },
        "enabledDeveloperOptions": {
          "description": "Output only. Whether developer options is enabled on device.",
          "readOnly": true,
          "type": "boolean"
        },
        "enabledUsbDebugging": {
          "description": "Output only. Whether USB debugging is enabled on device.",
          "readOnly": true,
          "type": "boolean"
        },
        "encryptionState": {
          "description": "Output only. Device encryption state.",
          "enum": [
            "ENCRYPTION_STATE_UNSPECIFIED",
            "UNSUPPORTED_BY_DEVICE",
            "ENCRYPTED",
            "NOT_ENCRYPTED"
          ],
          "enumDescriptions": [
            "Encryption Status is not set.",
            "Device doesn't support encryption.",
            "Device is encrypted.",
            "Device is not encrypted."
          ],
          "readOnly": true,
          "type": "string"
        },
        "imei": {
          "description": "Output only. IMEI number of device if GSM device; empty otherwise.",
          "readOnly": true,
          "type": "string"
        },
        "kernelVersion": {
          "description": "Output only. Kernel version of the device.",
          "readOnly": true,
          "type": "string"
        },
        "lastSyncTime": {
          "description": "Most recent time when device synced with this service.",
          "format": "google-datetime",
          "type": "string"
        },
        "managementState": {
          "description": "Output only. Management state of the device",
          "enum": [
            "MANAGEMENT_STATE_UNSPECIFIED",
            "APPROVED",
            "BLOCKED",
            "PENDING",
            "UNPROVISIONED",
            "WIPING",
            "WIPED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Device is approved.",
            "Device is blocked.",
            "Device is pending approval.",
            "The device is not provisioned. Device will start from this state until some action is taken (i.e. a user starts using the device).",
            "Data and settings on the device are being removed.",
            "All data and settings on the device are removed."
          ],
          "readOnly": true,
          "type": "string"
        },
        "manufacturer": {
          "description": "Output only. Device manufacturer. Example: Motorola.",
          "readOnly": true,
          "type": "string"
        },
        "meid": {
          "description": "Output only. MEID number of device if CDMA device; empty otherwise.",
          "readOnly": true,
          "type": "string"
        },
        "model": {
          "description": "Output only. Model name of device. Example: Pixel 3.",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique id assigned to the Device.",
          "readOnly": true,
          "type": "string"
        },
        "networkOperator": {
          "description": "Output only. Mobile or network operator of device, if available.",
          "readOnly": true,
          "type": "string"
        },
        "osVersion": {
          "description": "Output only. OS version of the device. Example: Android 8.1.0.",
          "readOnly": true,
          "type": "string"
        },
        "otherAccounts": {
          "description": "Output only. Domain name for Google accounts on device. Type for other accounts on device. On Android, will only be populated if |ownership_privilege| is |PROFILE_OWNER| or |DEVICE_OWNER|. Does not include the account signed in to the device policy app if that account's domain has only one account. Examples: \"com.example\", \"xyz.com\".",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "ownerType": {
          "description": "Output only. Whether the device is owned by the company or an individual",
          "enum": [
            "DEVICE_OWNERSHIP_UNSPECIFIED",
            "COMPANY",
            "BYOD"
          ],
          "enumDescriptions": [
            "Default value. The value is unused.",
            "Company owns the device.",
            "Bring Your Own Device (i.e. individual owns the device)"
          ],
          "readOnly": true,
          "type": "string"
        },
        "releaseVersion": {
          "description": "Output only. OS release version. Example: 6.0.",
          "readOnly": true,
          "type": "string"
        },
        "securityPatchTime": {
          "description": "Output only. OS security patch update time on device.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "serialNumber": {
          "description": "Serial Number of device. Example: HT82V1A01076.",
          "type": "string"
        },
        "wifiMacAddresses": {
          "description": "WiFi MAC addresses of device.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "DeviceUser": {
      "description": "Represents a user's use of a Device in the Cloud Identity Devices API. A DeviceUser is a resource representing a user's use of a Device",
      "id": "DeviceUser",
      "properties": {
        "compromisedState": {
          "description": "Compromised State of the DeviceUser object",
          "enum": [
            "COMPROMISED_STATE_UNSPECIFIED",
            "COMPROMISED",
            "NOT_COMPROMISED"
          ],
          "enumDescriptions": [
            "Compromised state of Device User account is unknown or unspecified.",
            "Device User Account is compromised.",
            "Device User Account is not compromised."
          ],
          "type": "string"
        },
        "createTime": {
          "description": "When the user first signed in to the device",
          "format": "google-datetime",
          "type": "string"
        },
        "firstSyncTime": {
          "description": "Output only. Most recent time when user registered with this service.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "languageCode": {
          "description": "Output only. Default locale used on device, in IETF BCP-47 format.",
          "readOnly": true,
          "type": "string"
        },
        "lastSyncTime": {
          "description": "Output only. Last time when user synced with policies.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "managementState": {
          "description": "Output only. Management state of the user on the device.",
          "enum": [
            "MANAGEMENT_STATE_UNSPECIFIED",
            "WIPING",
            "WIPED",
            "APPROVED",
            "BLOCKED",
            "PENDING_APPROVAL",
            "UNENROLLED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "This user's data and profile is being removed from the device.",
            "This user's data and profile is removed from the device.",
            "User is approved to access data on the device.",
            "User is blocked from accessing data on the device.",
            "User is awaiting approval.",
            "User is unenrolled from Advanced Windows Management, but the Windows account is still intact."
          ],
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.",
          "readOnly": true,
          "type": "string"
        },
        "passwordState": {
          "description": "Password state of the DeviceUser object",
          "enum": [
            "PASSWORD_STATE_UNSPECIFIED",
            "PASSWORD_SET",
            "PASSWORD_NOT_SET"
          ],
          "enumDescriptions": [
            "Password state not set.",
            "Password set in object.",
            "Password not set in object."
          ],
          "type": "string"
        },
        "userAgent": {
          "description": "Output only. User agent on the device for this specific user",
          "readOnly": true,
          "type": "string"
        },
        "userEmail": {
          "description": "Email address of the user registered on the device.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "DynamicGroupMetadata": {
      "description": "Dynamic group metadata like queries and status.",
      "id": "DynamicGroupMetadata",
      "properties": {
        "queries": {
          "description": "Memberships will be the union of all queries. Only one entry with USER resource is currently supported.",
          "items": {
            "$ref": "DynamicGroupQuery"
          },
          "type": "array"
        },
        "status": {
          "$ref": "DynamicGroupStatus",
          "description": "Output only. Status of the dynamic group.",
          "readOnly": true
        }
      },
      "type": "object"
    },
    "DynamicGroupQuery": {
      "description": "Defines a query on a resource.",
      "id": "DynamicGroupQuery",
      "properties": {
        "query": {
          "description": "Query that determines the memberships of the dynamic group. Examples: All users with at least one `organizations.department` of engineering. `user.organizations.exists(org, org.department=='engineering')` All users with at least one location that has `area` of `foo` and `building_id` of `bar`. `user.locations.exists(loc, loc.area=='foo' \u0026\u0026 loc.building_id=='bar')`",
          "type": "string"
        },
        "resourceType": {
          "enum": [
            "RESOURCE_TYPE_UNSPECIFIED",
            "USER"
          ],
          "enumDescriptions": [
            "Default value (not valid)",
            "For queries on User"
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "DynamicGroupStatus": {
      "description": "The current status of a dynamic group along with timestamp.",
      "id": "DynamicGroupStatus",
      "properties": {
        "status": {
          "description": "Status of the dynamic group.",
          "enum": [
            "STATUS_UNSPECIFIED",
            "UP_TO_DATE",
            "UPDATING_MEMBERSHIPS"
          ],
          "enumDescriptions": [
            "Default.",
            "The dynamic group is up-to-date.",
            "The dynamic group has just been created and memberships are being updated."
          ],
          "type": "string"
        },
        "statusTime": {
          "description": "The latest time at which the dynamic group is guaranteed to be in the given status. If status is `UP_TO_DATE`, the latest time at which the dynamic group was confirmed to be up-to-date. If status is `UPDATING_MEMBERSHIPS`, the time at which dynamic group was created.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "EntityKey": {
      "description": "A unique identifier for an entity in the Cloud Identity Groups API. An entity can represent either a group with an optional `namespace` or a user without a `namespace`. The combination of `id` and `namespace` must be unique; however, the same `id` can be used with different `namespace`s.",
      "id": "EntityKey",
      "properties": {
        "id": {
          "description": "The ID of the entity. For Google-managed entities, the `id` must be the email address of an existing group or user. For external-identity-mapped entities, the `id` must be a string conforming to the Identity Source's requirements. Must be unique within a `namespace`.",
          "type": "string"
        },
        "namespace": {
          "description": "The namespace in which the entity exists. If not specified, the `EntityKey` represents a Google-managed entity such as a Google user or a Google Group. If specified, the `EntityKey` represents an external-identity-mapped group. The namespace must correspond to an identity source created in Admin Console and must be in the form of `identitysources/{identity_source_id}.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ExpiryDetail": {
      "description": "The `MembershipRole` expiry details.",
      "id": "ExpiryDetail",
      "properties": {
        "expireTime": {
          "description": "The time at which the `MembershipRole` will expire.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GetMembershipGraphResponse": {
      "description": "The response message for MembershipsService.GetMembershipGraph.",
      "id": "GetMembershipGraphResponse",
      "properties": {
        "adjacencyList": {
          "description": "The membership graph's path information represented as an adjacency list.",
          "items": {
            "$ref": "MembershipAdjacencyList"
          },
          "type": "array"
        },
        "groups": {
          "description": "The resources representing each group in the adjacency list. Each group in this list can be correlated to a 'group' of the MembershipAdjacencyList using the 'name' of the Group resource.",
          "items": {
            "$ref": "Group"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1AndroidAttributes": {
      "description": "Resource representing the Android specific attributes of a Device.",
      "id": "GoogleAppsCloudidentityDevicesV1AndroidAttributes",
      "properties": {
        "enabledUnknownSources": {
          "description": "Whether applications from unknown sources can be installed on device.",
          "type": "boolean"
        },
        "ownerProfileAccount": {
          "description": "Whether this account is on an owner/primary profile. For phones, only true for owner profiles. Android 4+ devices can have secondary or restricted user profiles.",
          "type": "boolean"
        },
        "ownershipPrivilege": {
          "description": "Ownership privileges on device.",
          "enum": [
            "OWNERSHIP_PRIVILEGE_UNSPECIFIED",
            "DEVICE_ADMINISTRATOR",
            "PROFILE_OWNER",
            "DEVICE_OWNER"
          ],
          "enumDescriptions": [
            "Ownership privilege is not set.",
            "Active device administrator privileges on the device.",
            "Profile Owner privileges. The account is in a managed corporate profile.",
            "Device Owner privileges on the device."
          ],
          "type": "string"
        },
        "supportsWorkProfile": {
          "description": "Whether device supports Android work profiles. If false, this service will not block access to corp data even if an administrator turns on the \"Enforce Work Profile\" policy.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse": {
      "description": "Response message for approving the device to access user data.",
      "id": "GoogleAppsCloudidentityDevicesV1ApproveDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "GoogleAppsCloudidentityDevicesV1DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse": {
      "description": "Response message for blocking the device from accessing user data.",
      "id": "GoogleAppsCloudidentityDevicesV1BlockDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "GoogleAppsCloudidentityDevicesV1DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse": {
      "description": "Response message for cancelling an unfinished device wipe.",
      "id": "GoogleAppsCloudidentityDevicesV1CancelWipeDeviceResponse",
      "properties": {
        "device": {
          "$ref": "GoogleAppsCloudidentityDevicesV1Device",
          "description": "Resultant Device object for the action. Note that asset tags will not be returned in the device object."
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse": {
      "description": "Response message for cancelling an unfinished user account wipe.",
      "id": "GoogleAppsCloudidentityDevicesV1CancelWipeDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "GoogleAppsCloudidentityDevicesV1DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1ClientState": {
      "description": "Represents the state associated with an API client calling the Devices API. Resource representing ClientState and supports updates from API users",
      "id": "GoogleAppsCloudidentityDevicesV1ClientState",
      "properties": {
        "assetTags": {
          "description": "The caller can specify asset tags for this resource",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "complianceState": {
          "description": "The compliance state of the resource as specified by the API client.",
          "enum": [
            "COMPLIANCE_STATE_UNSPECIFIED",
            "COMPLIANT",
            "NON_COMPLIANT"
          ],
          "enumDescriptions": [
            "The compliance state of the resource is unknown or unspecified.",
            "Device is compliant with third party policies",
            "Device is not compliant with third party policies"
          ],
          "type": "string"
        },
        "createTime": {
          "description": "Output only. The time the client state data was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "customId": {
          "description": "This field may be used to store a unique identifier for the API resource within which these CustomAttributes are a field.",
          "type": "string"
        },
        "etag": {
          "description": "The token that needs to be passed back for concurrency control in updates. Token needs to be passed back in UpdateRequest",
          "type": "string"
        },
        "healthScore": {
          "description": "The Health score of the resource",
          "enum": [
            "HEALTH_SCORE_UNSPECIFIED",
            "VERY_POOR",
            "POOR",
            "NEUTRAL",
            "GOOD",
            "VERY_GOOD"
          ],
          "enumDescriptions": [
            "Default value",
            "The object is in very poor health as defined by the caller.",
            "The object is in poor health as defined by the caller.",
            "The object health is neither good nor poor, as defined by the caller.",
            "The object is in good health as defined by the caller.",
            "The object is in very good health as defined by the caller."
          ],
          "type": "string"
        },
        "keyValuePairs": {
          "additionalProperties": {
            "$ref": "GoogleAppsCloudidentityDevicesV1CustomAttributeValue"
          },
          "description": "The map of key-value attributes stored by callers specific to a device. The total serialized length of this map may not exceed 10KB. No limit is placed on the number of attributes in a map.",
          "type": "object"
        },
        "lastUpdateTime": {
          "description": "Output only. The time the client state data was last updated.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "managed": {
          "description": "The management state of the resource as specified by the API client.",
          "enum": [
            "MANAGED_STATE_UNSPECIFIED",
            "MANAGED",
            "UNMANAGED"
          ],
          "enumDescriptions": [
            "The management state of the resource is unknown or unspecified.",
            "The resource is managed.",
            "The resource is not managed."
          ],
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the ClientState in format: `devices/{device_id}/deviceUsers/{device_user_id}/clientState/{partner_id}`, where partner_id corresponds to the partner storing the data.",
          "readOnly": true,
          "type": "string"
        },
        "ownerType": {
          "description": "Output only. The owner of the ClientState",
          "enum": [
            "OWNER_TYPE_UNSPECIFIED",
            "OWNER_TYPE_CUSTOMER",
            "OWNER_TYPE_PARTNER"
          ],
          "enumDescriptions": [
            "Unknown owner type",
            "Customer is the owner",
            "Partner is the owner"
          ],
          "readOnly": true,
          "type": "string"
        },
        "scoreReason": {
          "description": "A descriptive cause of the health score.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1CustomAttributeValue": {
      "description": "Additional custom attribute values may be one of these types",
      "id": "GoogleAppsCloudidentityDevicesV1CustomAttributeValue",
      "properties": {
        "boolValue": {
          "description": "Represents a boolean value.",
          "type": "boolean"
        },
        "numberValue": {
          "description": "Represents a double value.",
          "format": "double",
          "type": "number"
        },
        "stringValue": {
          "description": "Represents a string value.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1Device": {
      "description": "A Device within the Cloud Identity Devices API. Represents a Device known to Google Cloud, independent of the device ownership, type, and whether it is assigned or in use by a user.",
      "id": "GoogleAppsCloudidentityDevicesV1Device",
      "properties": {
        "androidSpecificAttributes": {
          "$ref": "GoogleAppsCloudidentityDevicesV1AndroidAttributes",
          "description": "Output only. Attributes specific to Android devices.",
          "readOnly": true
        },
        "assetTag": {
          "description": "Asset tag of the device.",
          "type": "string"
        },
        "basebandVersion": {
          "description": "Output only. Baseband version of the device.",
          "readOnly": true,
          "type": "string"
        },
        "bootloaderVersion": {
          "description": "Output only. Device bootloader version. Example: 0.6.7.",
          "readOnly": true,
          "type": "string"
        },
        "brand": {
          "description": "Output only. Device brand. Example: Samsung.",
          "readOnly": true,
          "type": "string"
        },
        "buildNumber": {
          "description": "Output only. Build number of the device.",
          "readOnly": true,
          "type": "string"
        },
        "compromisedState": {
          "description": "Output only. Represents whether the Device is compromised.",
          "enum": [
            "COMPROMISED_STATE_UNSPECIFIED",
            "COMPROMISED",
            "UNCOMPROMISED"
          ],
          "enumDescriptions": [
            "Default value.",
            "The device is compromised (currently, this means Android device is rooted).",
            "The device is safe (currently, this means Android device is unrooted)."
          ],
          "readOnly": true,
          "type": "string"
        },
        "createTime": {
          "description": "Output only. When the Company-Owned device was imported. This field is empty for BYOD devices.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "deviceType": {
          "description": "Output only. Type of device.",
          "enum": [
            "DEVICE_TYPE_UNSPECIFIED",
            "ANDROID",
            "IOS",
            "GOOGLE_SYNC",
            "WINDOWS",
            "MAC_OS",
            "LINUX",
            "CHROME_OS"
          ],
          "enumDescriptions": [
            "Unknown device type",
            "Device is an Android device",
            "Device is an iOS device",
            "Device is a Google Sync device.",
            "Device is a Windows device.",
            "Device is a MacOS device.",
            "Device is a Linux device.",
            "Device is a ChromeOS device."
          ],
          "readOnly": true,
          "type": "string"
        },
        "enabledDeveloperOptions": {
          "description": "Output only. Whether developer options is enabled on device.",
          "readOnly": true,
          "type": "boolean"
        },
        "enabledUsbDebugging": {
          "description": "Output only. Whether USB debugging is enabled on device.",
          "readOnly": true,
          "type": "boolean"
        },
        "encryptionState": {
          "description": "Output only. Device encryption state.",
          "enum": [
            "ENCRYPTION_STATE_UNSPECIFIED",
            "UNSUPPORTED_BY_DEVICE",
            "ENCRYPTED",
            "NOT_ENCRYPTED"
          ],
          "enumDescriptions": [
            "Encryption Status is not set.",
            "Device doesn't support encryption.",
            "Device is encrypted.",
            "Device is not encrypted."
          ],
          "readOnly": true,
          "type": "string"
        },
        "imei": {
          "description": "Output only. IMEI number of device if GSM device; empty otherwise.",
          "readOnly": true,
          "type": "string"
        },
        "kernelVersion": {
          "description": "Output only. Kernel version of the device.",
          "readOnly": true,
          "type": "string"
        },
        "lastSyncTime": {
          "description": "Most recent time when device synced with this service.",
          "format": "google-datetime",
          "type": "string"
        },
        "managementState": {
          "description": "Output only. Management state of the device",
          "enum": [
            "MANAGEMENT_STATE_UNSPECIFIED",
            "APPROVED",
            "BLOCKED",
            "PENDING",
            "UNPROVISIONED",
            "WIPING",
            "WIPED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "Device is approved.",
            "Device is blocked.",
            "Device is pending approval.",
            "The device is not provisioned. Device will start from this state until some action is taken (i.e. a user starts using the device).",
            "Data and settings on the device are being removed.",
            "All data and settings on the device are removed."
          ],
          "readOnly": true,
          "type": "string"
        },
        "manufacturer": {
          "description": "Output only. Device manufacturer. Example: Motorola.",
          "readOnly": true,
          "type": "string"
        },
        "meid": {
          "description": "Output only. MEID number of device if CDMA device; empty otherwise.",
          "readOnly": true,
          "type": "string"
        },
        "model": {
          "description": "Output only. Model name of device. Example: Pixel 3.",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in format: `devices/{device_id}`, where device_id is the unique id assigned to the Device.",
          "readOnly": true,
          "type": "string"
        },
        "networkOperator": {
          "description": "Output only. Mobile or network operator of device, if available.",
          "readOnly": true,
          "type": "string"
        },
        "osVersion": {
          "description": "Output only. OS version of the device. Example: Android 8.1.0.",
          "readOnly": true,
          "type": "string"
        },
        "otherAccounts": {
          "description": "Output only. Domain name for Google accounts on device. Type for other accounts on device. On Android, will only be populated if |ownership_privilege| is |PROFILE_OWNER| or |DEVICE_OWNER|. Does not include the account signed in to the device policy app if that account's domain has only one account. Examples: \"com.example\", \"xyz.com\".",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "ownerType": {
          "description": "Output only. Whether the device is owned by the company or an individual",
          "enum": [
            "DEVICE_OWNERSHIP_UNSPECIFIED",
            "COMPANY",
            "BYOD"
          ],
          "enumDescriptions": [
            "Default value. The value is unused.",
            "Company owns the device.",
            "Bring Your Own Device (i.e. individual owns the device)"
          ],
          "readOnly": true,
          "type": "string"
        },
        "releaseVersion": {
          "description": "Output only. OS release version. Example: 6.0.",
          "readOnly": true,
          "type": "string"
        },
        "securityPatchTime": {
          "description": "Output only. OS security patch update time on device.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "serialNumber": {
          "description": "Serial Number of device. Example: HT82V1A01076.",
          "type": "string"
        },
        "wifiMacAddresses": {
          "description": "WiFi MAC addresses of device.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1DeviceUser": {
      "description": "Represents a user's use of a Device in the Cloud Identity Devices API. A DeviceUser is a resource representing a user's use of a Device",
      "id": "GoogleAppsCloudidentityDevicesV1DeviceUser",
      "properties": {
        "compromisedState": {
          "description": "Compromised State of the DeviceUser object",
          "enum": [
            "COMPROMISED_STATE_UNSPECIFIED",
            "COMPROMISED",
            "NOT_COMPROMISED"
          ],
          "enumDescriptions": [
            "Compromised state of Device User account is unknown or unspecified.",
            "Device User Account is compromised.",
            "Device User Account is not compromised."
          ],
          "type": "string"
        },
        "createTime": {
          "description": "When the user first signed in to the device",
          "format": "google-datetime",
          "type": "string"
        },
        "firstSyncTime": {
          "description": "Output only. Most recent time when user registered with this service.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "languageCode": {
          "description": "Output only. Default locale used on device, in IETF BCP-47 format.",
          "readOnly": true,
          "type": "string"
        },
        "lastSyncTime": {
          "description": "Output only. Last time when user synced with policies.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "managementState": {
          "description": "Output only. Management state of the user on the device.",
          "enum": [
            "MANAGEMENT_STATE_UNSPECIFIED",
            "WIPING",
            "WIPED",
            "APPROVED",
            "BLOCKED",
            "PENDING_APPROVAL",
            "UNENROLLED"
          ],
          "enumDescriptions": [
            "Default value. This value is unused.",
            "This user's data and profile is being removed from the device.",
            "This user's data and profile is removed from the device.",
            "User is approved to access data on the device.",
            "User is blocked from accessing data on the device.",
            "User is awaiting approval.",
            "User is unenrolled from Advanced Windows Management, but the Windows account is still intact."
          ],
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Output only. [Resource name](https://cloud.google.com/apis/design/resource_names) of the DeviceUser in format: `devices/{device_id}/deviceUsers/{user_id}`, where user_id is the ID of the user associated with the user session.",
          "readOnly": true,
          "type": "string"
        },
        "passwordState": {
          "description": "Password state of the DeviceUser object",
          "enum": [
            "PASSWORD_STATE_UNSPECIFIED",
            "PASSWORD_SET",
            "PASSWORD_NOT_SET"
          ],
          "enumDescriptions": [
            "Password state not set.",
            "Password set in object.",
            "Password not set in object."
          ],
          "type": "string"
        },
        "userAgent": {
          "description": "Output only. User agent on the device for this specific user",
          "readOnly": true,
          "type": "string"
        },
        "userEmail": {
          "description": "Email address of the user registered on the device.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1WipeDeviceResponse": {
      "description": "Response message for wiping all data on the device.",
      "id": "GoogleAppsCloudidentityDevicesV1WipeDeviceResponse",
      "properties": {
        "device": {
          "$ref": "GoogleAppsCloudidentityDevicesV1Device",
          "description": "Resultant Device object for the action. Note that asset tags will not be returned in the device object."
        }
      },
      "type": "object"
    },
    "GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse": {
      "description": "Response message for wiping the user's account from the device.",
      "id": "GoogleAppsCloudidentityDevicesV1WipeDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "GoogleAppsCloudidentityDevicesV1DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    },
    "Group": {
      "description": "A group within the Cloud Identity Groups API. A `Group` is a collection of entities, where each entity is either a user, another group, or a service account.",
      "id": "Group",
      "properties": {
        "additionalGroupKeys": {
          "description": "Additional entity key aliases for a Group.",
          "items": {
            "$ref": "EntityKey"
          },
          "type": "array"
        },
        "createTime": {
          "description": "Output only. The time when the `Group` was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "description": {
          "description": "An extended description to help users determine the purpose of a `Group`. Must not be longer than 4,096 characters.",
          "type": "string"
        },
        "displayName": {
          "description": "The display name of the `Group`.",
          "type": "string"
        },
        "dynamicGroupMetadata": {
          "$ref": "DynamicGroupMetadata",
          "description": "Optional. Dynamic group metadata like queries and status."
        },
        "groupKey": {
          "$ref": "EntityKey",
          "description": "Required. Immutable. The `EntityKey` of the `Group`."
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Required. One or more label entries that apply to the Group. Currently supported labels contain a key with an empty value. Google Groups are the default type of group and have a label with a key of `cloudidentity.googleapis.com/groups.discussion_forum` and an empty value. Existing Google Groups can have an additional label with a key of `cloudidentity.googleapis.com/groups.security` and an empty value added to them. **This is an immutable change and the security label cannot be removed once added.** Dynamic groups have a label with a key of `cloudidentity.googleapis.com/groups.dynamic`. Identity-mapped groups for Cloud Search have a label with a key of `system/groups/external` and an empty value. Examples: {\"cloudidentity.googleapis.com/groups.discussion_forum\": \"\"} or {\"system/groups/external\": \"\"}.",
          "type": "object"
        },
        "name": {
          "description": "Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Group`. Shall be of the form `groups/{group_id}`.",
          "readOnly": true,
          "type": "string"
        },
        "parent": {
          "description": "Required. Immutable. The resource name of the entity under which this `Group` resides in the Cloud Identity resource hierarchy. Must be of the form `identitysources/{identity_source_id}` for external- identity-mapped groups or `customers/{customer_id}` for Google Groups.",
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. The time when the `Group` was last updated.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListClientStatesResponse": {
      "description": "Response message that is returned in LRO result of ListClientStates Operation.",
      "id": "ListClientStatesResponse",
      "properties": {
        "clientStates": {
          "description": "Client states meeting the list restrictions.",
          "items": {
            "$ref": "ClientState"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token to retrieve the next page of results. Empty if there are no more results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListDeviceUsersResponse": {
      "description": "Response message that is returned from the ListDeviceUsers method.",
      "id": "ListDeviceUsersResponse",
      "properties": {
        "deviceUsers": {
          "description": "Devices meeting the list restrictions.",
          "items": {
            "$ref": "DeviceUser"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token to retrieve the next page of results. Empty if there are no more results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListDevicesResponse": {
      "description": "Response message that is returned from the ListDevices method.",
      "id": "ListDevicesResponse",
      "properties": {
        "devices": {
          "description": "Devices meeting the list restrictions.",
          "items": {
            "$ref": "Device"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token to retrieve the next page of results. Empty if there are no more results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListGroupsResponse": {
      "description": "The response message for GroupsService.ListGroups.",
      "id": "ListGroupsResponse",
      "properties": {
        "groups": {
          "description": "The `Group`s under the specified `parent`.",
          "items": {
            "$ref": "Group"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A continuation token to retrieve the next page of results, or empty if there are no more results available.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListMembershipsResponse": {
      "description": "The response message for MembershipsService.ListMemberships.",
      "id": "ListMembershipsResponse",
      "properties": {
        "memberships": {
          "description": "The `Membership`s under the specified `parent`.",
          "items": {
            "$ref": "Membership"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A continuation token to retrieve the next page of results, or empty if there are no more results available.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LookupGroupNameResponse": {
      "description": "The response message for GroupsService.LookupGroupName.",
      "id": "LookupGroupNameResponse",
      "properties": {
        "name": {
          "description": "Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the looked-up `Group`.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "LookupMembershipNameResponse": {
      "description": "The response message for MembershipsService.LookupMembershipName.",
      "id": "LookupMembershipNameResponse",
      "properties": {
        "name": {
          "description": "The [resource name](https://cloud.google.com/apis/design/resource_names) of the looked-up `Membership`. Must be of the form `groups/{group_id}/memberships/{membership_id}`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LookupSelfDeviceUsersResponse": {
      "description": "Response containing resource names of the DeviceUsers associated with the caller's credentials.",
      "id": "LookupSelfDeviceUsersResponse",
      "properties": {
        "customer": {
          "description": "The obfuscated customer Id that may be passed back to other Devices API methods such as List, Get, etc.",
          "type": "string"
        },
        "names": {
          "description": "[Resource names](https://cloud.google.com/apis/design/resource_names) of the DeviceUsers in the format: `devices/{device_id}/deviceUsers/{user_resource_id}`, where device_id is the unique ID assigned to a Device and user_resource_id is the unique user ID",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token to retrieve the next page of results. Empty if there are no more results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Membership": {
      "description": "A membership within the Cloud Identity Groups API. A `Membership` defines a relationship between a `Group` and an entity belonging to that `Group`, referred to as a \"member\".",
      "id": "Membership",
      "properties": {
        "createTime": {
          "description": "Output only. The time when the `Membership` was created.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        },
        "memberKey": {
          "$ref": "EntityKey",
          "description": "Immutable. The `EntityKey` of the member. Either `member_key` or `preferred_member_key` must be set when calling MembershipsService.CreateMembership but not both; both shall be set when returned."
        },
        "name": {
          "description": "Output only. The [resource name](https://cloud.google.com/apis/design/resource_names) of the `Membership`. Shall be of the form `groups/{group_id}/memberships/{membership_id}`.",
          "readOnly": true,
          "type": "string"
        },
        "preferredMemberKey": {
          "$ref": "EntityKey",
          "description": "Required. Immutable. The `EntityKey` of the member. Either `member_key` or `preferred_member_key` must be set when calling MembershipsService.CreateMembership but not both; both shall be set when returned."
        },
        "roles": {
          "description": "The `MembershipRole`s that apply to the `Membership`. If unspecified, defaults to a single `MembershipRole` with `name` `MEMBER`. Must not contain duplicate `MembershipRole`s with the same `name`.",
          "items": {
            "$ref": "MembershipRole"
          },
          "type": "array"
        },
        "type": {
          "description": "Output only. The type of the membership.",
          "enum": [
            "TYPE_UNSPECIFIED",
            "USER",
            "SERVICE_ACCOUNT",
            "GROUP",
            "OTHER"
          ],
          "enumDescriptions": [
            "Default. Should not be used.",
            "Represents user type.",
            "Represents service account type.",
            "Represents group type.",
            "Represents other type."
          ],
          "readOnly": true,
          "type": "string"
        },
        "updateTime": {
          "description": "Output only. The time when the `Membership` was last updated.",
          "format": "google-datetime",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "MembershipAdjacencyList": {
      "description": "Membership graph's path information as an adjacency list.",
      "id": "MembershipAdjacencyList",
      "properties": {
        "edges": {
          "description": "Each edge contains information about the member that belongs to this group.",
          "items": {
            "$ref": "Membership"
          },
          "type": "array"
        },
        "group": {
          "description": "Resource name of the group that the members belong to.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "MembershipRole": {
      "description": "A membership role within the Cloud Identity Groups API. A `MembershipRole` defines the privileges granted to a `Membership`.",
      "id": "MembershipRole",
      "properties": {
        "expiryDetail": {
          "$ref": "ExpiryDetail",
          "description": "The expiry details of the `MembershipRole`. Expiry details are only supported for `MEMBER` `MembershipRoles`. May be set if `name` is `MEMBER`. Must not be set if `name` is any other value."
        },
        "name": {
          "description": "The name of the `MembershipRole`. Must be one of `OWNER`, `MANAGER`, `MEMBER`.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ModifyMembershipRolesRequest": {
      "description": "The request message for MembershipsService.ModifyMembershipRoles.",
      "id": "ModifyMembershipRolesRequest",
      "properties": {
        "addRoles": {
          "description": "The `MembershipRole`s to be added. Adding or removing roles in the same request as updating roles is not supported. Must not be set if `update_roles_params` is set.",
          "items": {
            "$ref": "MembershipRole"
          },
          "type": "array"
        },
        "removeRoles": {
          "description": "The `name`s of the `MembershipRole`s to be removed. Adding or removing roles in the same request as updating roles is not supported. It is not possible to remove the `MEMBER` `MembershipRole`. If you wish to delete a `Membership`, call MembershipsService.DeleteMembership instead. Must not contain `MEMBER`. Must not be set if `update_roles_params` is set.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "updateRolesParams": {
          "description": "The `MembershipRole`s to be updated. Updating roles in the same request as adding or removing roles is not supported. Must not be set if either `add_roles` or `remove_roles` is set.",
          "items": {
            "$ref": "UpdateMembershipRolesParams"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ModifyMembershipRolesResponse": {
      "description": "The response message for MembershipsService.ModifyMembershipRoles.",
      "id": "ModifyMembershipRolesResponse",
      "properties": {
        "membership": {
          "$ref": "Membership",
          "description": "The `Membership` resource after modifying its `MembershipRole`s."
        }
      },
      "type": "object"
    },
    "Operation": {
      "description": "This resource represents a long-running operation that is the result of a network API call.",
      "id": "Operation",
      "properties": {
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
          "type": "boolean"
        },
        "error": {
          "$ref": "Status",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "SearchGroupsResponse": {
      "description": "The response message for GroupsService.SearchGroups.",
      "id": "SearchGroupsResponse",
      "properties": {
        "groups": {
          "description": "The `Group`s that match the search query.",
          "items": {
            "$ref": "Group"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "A continuation token to retrieve the next page of results, or empty if there are no more results available.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Status": {
      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "UpdateMembershipRolesParams": {
      "description": "The details of an update to a `MembershipRole`.",
      "id": "UpdateMembershipRolesParams",
      "properties": {
        "fieldMask": {
          "description": "The fully-qualified names of fields to update. May only contain the field `expiry_detail`.",
          "format": "google-fieldmask",
          "type": "string"
        },
        "membershipRole": {
          "$ref": "MembershipRole",
          "description": "The `MembershipRole`s to be updated. Only `MEMBER` `MembershipRoles` can currently be updated. May only contain a `MembershipRole` with `name` `MEMBER`."
        }
      },
      "type": "object"
    },
    "WipeDeviceRequest": {
      "description": "Request message for wiping all data on the device.",
      "id": "WipeDeviceRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "WipeDeviceResponse": {
      "description": "Response message for wiping all data on the device.",
      "id": "WipeDeviceResponse",
      "properties": {
        "device": {
          "$ref": "Device",
          "description": "Resultant Device object for the action. Note that asset tags will not be returned in the device object."
        }
      },
      "type": "object"
    },
    "WipeDeviceUserRequest": {
      "description": "Request message for starting an account wipe on device.",
      "id": "WipeDeviceUserRequest",
      "properties": {
        "customer": {
          "description": "Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer. If you're using this API for your own organization, use `customers/my_customer` If you're using this API to manage another organization, use `customers/{customer_id}`, where customer_id is the customer to whom the device belongs.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "WipeDeviceUserResponse": {
      "description": "Response message for wiping the user's account from the device.",
      "id": "WipeDeviceUserResponse",
      "properties": {
        "deviceUser": {
          "$ref": "DeviceUser",
          "description": "Resultant DeviceUser object for the action."
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Identity API",
  "version": "v1beta1",
  "version_module": true
}