# Cloud Identity API . devices

## Instance Methods

Returns the deviceUsers Resource.

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. This operation is possible when the device is in a "pending wipe" state. The device enters the "pending wipe" state when a wipe device command is issued, but has not yet been sent to the device. The cancel wipe will fail if the wipe command has already been issued to the device.

Close httplib2 connections.

Creates a device. Only company-owned device may be created.

Deletes the specified device.

Retrieves the specified device.

Lists/Searches devices.

Retrieves the next page of results.

Wipes all data on the specified device.

### Method Details

`cancelWipe(name, body=None, x__xgafv=None)`

    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. This operation is possible when the device is in a "pending wipe" state. The device enters the "pending wipe" state when a wipe device command is issued, but has not yet been sent to the device. The cancel wipe will fail if the wipe command has already been issued to the device.

    Args:
      name: string, 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. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for cancelling an unfinished device wipe.
        "customer": "A String", # 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.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "error": { # 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). # The error result of the operation in case of failure or cancellation.
          "message": "A String", # 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.
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
        },
        "name": "A String", # 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}`.
        "metadata": { # 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.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # 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.
        "response": { # 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`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }

`close()`

    Close httplib2 connections.

`create(body=None, customer=None, x__xgafv=None)`

    Creates a device. Only company-owned device may be created.

    Args:
      body: object, The request body.
        The object takes the form of:

    { #  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.
      "meid": "A String", # Output only. MEID number of device if CDMA device; empty otherwise.
      "osVersion": "A String", # Output only. OS version of the device. Example: Android 8.1.0.
      "networkOperator": "A String", # Output only. Mobile or network operator of device, if available.
      "bootloaderVersion": "A String", # Output only. Device bootloader version. Example: 0.6.7.
      "otherAccounts": [ # 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".
        "A String",
      ],
      "encryptionState": "A String", # Output only. Device encryption state.
      "enabledDeveloperOptions": True or False, # Output only. Whether developer options is enabled on device.
      "buildNumber": "A String", # Output only. Build number of the device.
      "model": "A String", # Output only. Model name of device. Example: Pixel 3.
      "kernelVersion": "A String", # Output only. Kernel version of the device.
      "createTime": "A String", # Output only. When the Company-Owned device was imported. This field is empty for BYOD devices.
      "releaseVersion": "A String", # Output only. OS release version. Example: 6.0.
      "serialNumber": "A String", # Serial Number of device. Example: HT82V1A01076.
      "brand": "A String", # Output only. Device brand. Example: Samsung.
      "enabledUsbDebugging": True or False, # Output only. Whether USB debugging is enabled on device.
      "compromisedState": "A String", # Output only. Represents whether the Device is compromised.
      "name": "A String", # 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.
      "ownerType": "A String", # Output only. Whether the device is owned by the company or an individual
      "manufacturer": "A String", # Output only. Device manufacturer. Example: Motorola.
      "lastSyncTime": "A String", # Most recent time when device synced with this service.
      "wifiMacAddresses": [ # WiFi MAC addresses of device.
        "A String",
      ],
      "imei": "A String", # Output only. IMEI number of device if GSM device; empty otherwise.
      "managementState": "A String", # Output only. Management state of the device
      "securityPatchTime": "A String", # Output only. OS security patch update time on device.
      "deviceType": "A String", # Output only. Type of device.
      "assetTag": "A String", # Asset tag of the device.
      "basebandVersion": "A String", # Output only. Baseband version of the device.
      "androidSpecificAttributes": { # Resource representing the Android specific attributes of a Device. # Output only. Attributes specific to Android devices.
        "supportsWorkProfile": True or False, # 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.
        "enabledUnknownSources": True or False, # Whether applications from unknown sources can be installed on device.
        "ownerProfileAccount": True or False, # 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.
        "ownershipPrivilege": "A String", # Ownership privileges on device.
      },
    }

      customer: string, 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "error": { # 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). # The error result of the operation in case of failure or cancellation.
          "message": "A String", # 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.
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
        },
        "name": "A String", # 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}`.
        "metadata": { # 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.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # 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.
        "response": { # 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`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }

`delete(name, customer=None, x__xgafv=None)`

    Deletes the specified device.

    Args:
      name: string, 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. (required)
      customer: string, 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "error": { # 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). # The error result of the operation in case of failure or cancellation.
          "message": "A String", # 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.
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
        },
        "name": "A String", # 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}`.
        "metadata": { # 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.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # 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.
        "response": { # 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`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }

`get(name, customer=None, x__xgafv=None)`

    Retrieves the specified device.

    Args:
      name: string, Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Device in the format: `devices/{device_id}`, where device_id is the unique ID assigned to the Device. (required)
      customer: string, Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the Customer in the format: `customers/{customer_id}`, where customer_id is the customer to whom the device belongs. 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { #  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.
        "meid": "A String", # Output only. MEID number of device if CDMA device; empty otherwise.
        "osVersion": "A String", # Output only. OS version of the device. Example: Android 8.1.0.
        "networkOperator": "A String", # Output only. Mobile or network operator of device, if available.
        "bootloaderVersion": "A String", # Output only. Device bootloader version. Example: 0.6.7.
        "otherAccounts": [ # 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".
          "A String",
        ],
        "encryptionState": "A String", # Output only. Device encryption state.
        "enabledDeveloperOptions": True or False, # Output only. Whether developer options is enabled on device.
        "buildNumber": "A String", # Output only. Build number of the device.
        "model": "A String", # Output only. Model name of device. Example: Pixel 3.
        "kernelVersion": "A String", # Output only. Kernel version of the device.
        "createTime": "A String", # Output only. When the Company-Owned device was imported. This field is empty for BYOD devices.
        "releaseVersion": "A String", # Output only. OS release version. Example: 6.0.
        "serialNumber": "A String", # Serial Number of device. Example: HT82V1A01076.
        "brand": "A String", # Output only. Device brand. Example: Samsung.
        "enabledUsbDebugging": True or False, # Output only. Whether USB debugging is enabled on device.
        "compromisedState": "A String", # Output only. Represents whether the Device is compromised.
        "name": "A String", # 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.
        "ownerType": "A String", # Output only. Whether the device is owned by the company or an individual
        "manufacturer": "A String", # Output only. Device manufacturer. Example: Motorola.
        "lastSyncTime": "A String", # Most recent time when device synced with this service.
        "wifiMacAddresses": [ # WiFi MAC addresses of device.
          "A String",
        ],
        "imei": "A String", # Output only. IMEI number of device if GSM device; empty otherwise.
        "managementState": "A String", # Output only. Management state of the device
        "securityPatchTime": "A String", # Output only. OS security patch update time on device.
        "deviceType": "A String", # Output only. Type of device.
        "assetTag": "A String", # Asset tag of the device.
        "basebandVersion": "A String", # Output only. Baseband version of the device.
        "androidSpecificAttributes": { # Resource representing the Android specific attributes of a Device. # Output only. Attributes specific to Android devices.
          "supportsWorkProfile": True or False, # 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.
          "enabledUnknownSources": True or False, # Whether applications from unknown sources can be installed on device.
          "ownerProfileAccount": True or False, # 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.
          "ownershipPrivilege": "A String", # Ownership privileges on device.
        },
      }

`list(pageSize=None, pageToken=None, orderBy=None, filter=None, customer=None, view=None, x__xgafv=None)`

    Lists/Searches devices.

    Args:
      pageSize: integer, 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.
      pageToken: string, 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.
      orderBy: string, 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 at the end to specify results to be sorted in descending order. Default order is ascending.
      filter: string, Optional. Additional restrictions when fetching list of devices. [Help Center article link](https://support.google.com/a/answer/7549103)
      customer: string, Required. [Resource name](https://cloud.google.com/apis/design/resource_names) of the customer in the format: `customers/{customer_id}`, where customer_id is the customer to whom the device belongs. 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.
      view: string, Optional. The view to use for the List request.
        Allowed values
          VIEW_UNSPECIFIED - Default value. The value is unused.
          COMPANY_INVENTORY - 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 includes devices that may be unaassigned or assigned to users.
          USER_ASSIGNED_DEVICES - 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message that is returned from the ListDevices method.
        "devices": [ # Devices meeting the list restrictions.
          { #  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.
            "meid": "A String", # Output only. MEID number of device if CDMA device; empty otherwise.
            "osVersion": "A String", # Output only. OS version of the device. Example: Android 8.1.0.
            "networkOperator": "A String", # Output only. Mobile or network operator of device, if available.
            "bootloaderVersion": "A String", # Output only. Device bootloader version. Example: 0.6.7.
            "otherAccounts": [ # 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".
              "A String",
            ],
            "encryptionState": "A String", # Output only. Device encryption state.
            "enabledDeveloperOptions": True or False, # Output only. Whether developer options is enabled on device.
            "buildNumber": "A String", # Output only. Build number of the device.
            "model": "A String", # Output only. Model name of device. Example: Pixel 3.
            "kernelVersion": "A String", # Output only. Kernel version of the device.
            "createTime": "A String", # Output only. When the Company-Owned device was imported. This field is empty for BYOD devices.
            "releaseVersion": "A String", # Output only. OS release version. Example: 6.0.
            "serialNumber": "A String", # Serial Number of device. Example: HT82V1A01076.
            "brand": "A String", # Output only. Device brand. Example: Samsung.
            "enabledUsbDebugging": True or False, # Output only. Whether USB debugging is enabled on device.
            "compromisedState": "A String", # Output only. Represents whether the Device is compromised.
            "name": "A String", # 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.
            "ownerType": "A String", # Output only. Whether the device is owned by the company or an individual
            "manufacturer": "A String", # Output only. Device manufacturer. Example: Motorola.
            "lastSyncTime": "A String", # Most recent time when device synced with this service.
            "wifiMacAddresses": [ # WiFi MAC addresses of device.
              "A String",
            ],
            "imei": "A String", # Output only. IMEI number of device if GSM device; empty otherwise.
            "managementState": "A String", # Output only. Management state of the device
            "securityPatchTime": "A String", # Output only. OS security patch update time on device.
            "deviceType": "A String", # Output only. Type of device.
            "assetTag": "A String", # Asset tag of the device.
            "basebandVersion": "A String", # Output only. Baseband version of the device.
            "androidSpecificAttributes": { # Resource representing the Android specific attributes of a Device. # Output only. Attributes specific to Android devices.
              "supportsWorkProfile": True or False, # 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.
              "enabledUnknownSources": True or False, # Whether applications from unknown sources can be installed on device.
              "ownerProfileAccount": True or False, # 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.
              "ownershipPrivilege": "A String", # Ownership privileges on device.
            },
          },
        ],
        "nextPageToken": "A String", # Token to retrieve the next page of results. Empty if there are no more results.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`wipe(name, body=None, x__xgafv=None)`

    Wipes all data on the specified device.

    Args:
      name: string, 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. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for wiping all data on the device.
        "customer": "A String", # 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.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
        "error": { # 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). # The error result of the operation in case of failure or cancellation.
          "message": "A String", # 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.
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
          "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
        },
        "name": "A String", # 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}`.
        "metadata": { # 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.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
        "done": True or False, # 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.
        "response": { # 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`.
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      }