Device Run API . projects . locations . devices

Instance Methods

close()

Close httplib2 connections.

get(name, x__xgafv=None)

Returns information about a specific device.

list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)

Lists all devices.

list_next(previous_request, previous_response)

Retrieves the next page of results.

Method Details

close()
Close httplib2 connections.
get(name, x__xgafv=None)
Returns information about a specific device.

Args:
  name: string, Required. The name of the device. Format: `projects/{project}/locations/global/devices/{device}`. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A single routable device configuration in the catalog.
  "accessDeniedReasons": [ # Output only. Reasons for access denial. This model is accessible/usable if this list is empty, otherwise the model is viewable only.
    "A String",
  ],
  "androidDetails": { # Android-specific device attributes. # Output only. Contains Android-specific attributes (set when platform == ANDROID).
    "buildType": "A String", # Output only. Mirrors the AOSP `ro.build.type` property, e.g. "user", "userdebug", "eng". Empty if unknown.
    "supportedAbis": [ # Output only. Lists ABIs supported by the device (android.os.Build.SUPPORTED_ABIS), most preferred first, e.g. "arm64-v8a".
      "A String",
    ],
  },
  "availability": { # Fleet availability for a device configuration. # Output only. Reports the current fleet availability for this device configuration.
    "available": "A String", # Output only. Specifies the current availability bucket (idle, immediately allocatable devices) for this device configuration. This is a best-effort snapshot, refreshed periodically. It fluctuates depending on traffic as other requests allocate devices.
    "capacity": "A String", # Output only. Specifies the current capacity bucket for this device configuration. Represents the total number of online devices (idle or in use).
  },
  "displayName": "A String", # Output only. Provides a human-readable display name, e.g. "Pixel 5".
  "formFactor": "A String", # Output only. Specifies the form factor of the device.
  "hardwareType": "A String", # Output only. Indicates whether the device is physical or virtual.
  "iosDetails": { # iOS-specific device attributes. Reserved for future iOS-only fields. # Output only. Contains iOS-specific attributes (set when platform == IOS).
  },
  "labInfo": { # The lab hosting a device. # Output only. The lab hosting this device.
    "displayName": "A String", # Output only. Display name of the lab where the device is hosted. If empty, the device is hosted in a Google owned lab.
    "regionCode": "A String", # Output only. The Unicode country/region code (CLDR) of the lab where the device is hosted, e.g. "US" for United States, "KR" for South Korea. Empty when the hosting region is not published.
  },
  "labels": { # Output only. Additional information. Informational only. May change over the lifecycle of a device.
    "a_key": "A String",
  },
  "lifecycle": { # Catalog resource lifecycle: maturity state plus key lifecycle dates. # Output only. The device lifecycle (maturity stage and removal date).
    "removalDate": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Output only. Specifies the date the resource is scheduled to be removed from the catalog. Only set when `state == DEPRECATED`.
      "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
      "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
      "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
    },
    "state": "A String", # Output only. Specifies the current maturity state of the resource.
  },
  "manufacturer": "A String", # Output only. Specifies the hardware manufacturer of the device.
  "modelCode": "A String", # Output only. Provides a human-readable model identifier for this device, independent of OS version. May be empty. Platform-dependent: * Android physical: hardware codename (android.os.Build.DEVICE), e.g. "shiba". * Android virtual: AVD model identifier, e.g. "MediumPhone.arm". * iOS: model identifier, e.g. "iphone14pro".
  "name": "A String", # Identifier. Identifies the device resource. Format: `projects/{project}/locations/{location}/devices/{device}`. The {device} segment is an opaque, stable string. Clients must not parse it to derive or assume device-specific details.
  "osVersion": "A String", # Output only. Specifies the OS version, e.g. "30" (Android API level) or "17.4" (iOS).
  "platform": "A String", # Output only. Specifies the platform of the device.
  "primaryScreen": { # Screen measurements of a device. # Output only. Measurements of the primary device screen. Informational only. Unset for devices without a screen (e.g. some wearables).
    "densityDpi": 42, # Output only. Pixel density in dots per inch (dpi).
    "heightPx": 42, # Output only. Height in pixels.
    "widthPx": 42, # Output only. Width in pixels.
  },
  "supportedProducts": [ # Output only. Products/Services supported by this device.
    { # Declares that a device supports a given Device Cloud product, with optional per-product metadata. Discriminated by which product-specific message is set; adding a new product = new oneof arm + new per-product message.
      "automation": { # Per-product metadata for the Automation (DeviceRun) product. # Output only. Represents Automation, which is DeviceRun-backed automated test execution.
      },
      "deviceStreaming": { # Per-product metadata for the DeviceStreaming product. # Output only. Represents DeviceStreaming, which is interactive remote device streaming.
        "minimumAndroidStudioVersion": "A String", # Output only. Specifies the minimum Android Studio version that supports this device. Optional; only set when the device is known to work only at or above a certain Android Studio version. Expected format "major.minor.micro.patch", e.g. "5921.22.2211.8881706".
      },
    },
  ],
}
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Lists all devices.

Args:
  parent: string, Required. The parent of the collection of devices. Format: `projects/{project}/locations/global`. (required)
  filter: string, Optional. An AIP-160 (https://google.aip.dev/160) filter expression restricting which devices are returned. An empty filter returns all devices. Filtering is supported over the `Device` fields, including nested fields via dot-path. Enum and string values must be double-quoted. Examples: * `platform = "ANDROID"` * `platform = "ANDROID" AND os_version = "34"` * `hardware_type = "PHYSICAL" AND form_factor = "PHONE"` * `android_details.build_type = "userdebug"` * `availability.capacity = "HIGH"`
  pageSize: integer, Optional. The maximum number of devices to return. The server may return fewer items than this value.
  pageToken: string, Optional. A page token, received from a previous `ListDevices` call. Provide this to receive the subsequent page. When paginating, all other parameters provided to `ListDevices` must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response including listed devices.
  "devices": [ # The list of devices.
    { # A single routable device configuration in the catalog.
      "accessDeniedReasons": [ # Output only. Reasons for access denial. This model is accessible/usable if this list is empty, otherwise the model is viewable only.
        "A String",
      ],
      "androidDetails": { # Android-specific device attributes. # Output only. Contains Android-specific attributes (set when platform == ANDROID).
        "buildType": "A String", # Output only. Mirrors the AOSP `ro.build.type` property, e.g. "user", "userdebug", "eng". Empty if unknown.
        "supportedAbis": [ # Output only. Lists ABIs supported by the device (android.os.Build.SUPPORTED_ABIS), most preferred first, e.g. "arm64-v8a".
          "A String",
        ],
      },
      "availability": { # Fleet availability for a device configuration. # Output only. Reports the current fleet availability for this device configuration.
        "available": "A String", # Output only. Specifies the current availability bucket (idle, immediately allocatable devices) for this device configuration. This is a best-effort snapshot, refreshed periodically. It fluctuates depending on traffic as other requests allocate devices.
        "capacity": "A String", # Output only. Specifies the current capacity bucket for this device configuration. Represents the total number of online devices (idle or in use).
      },
      "displayName": "A String", # Output only. Provides a human-readable display name, e.g. "Pixel 5".
      "formFactor": "A String", # Output only. Specifies the form factor of the device.
      "hardwareType": "A String", # Output only. Indicates whether the device is physical or virtual.
      "iosDetails": { # iOS-specific device attributes. Reserved for future iOS-only fields. # Output only. Contains iOS-specific attributes (set when platform == IOS).
      },
      "labInfo": { # The lab hosting a device. # Output only. The lab hosting this device.
        "displayName": "A String", # Output only. Display name of the lab where the device is hosted. If empty, the device is hosted in a Google owned lab.
        "regionCode": "A String", # Output only. The Unicode country/region code (CLDR) of the lab where the device is hosted, e.g. "US" for United States, "KR" for South Korea. Empty when the hosting region is not published.
      },
      "labels": { # Output only. Additional information. Informational only. May change over the lifecycle of a device.
        "a_key": "A String",
      },
      "lifecycle": { # Catalog resource lifecycle: maturity state plus key lifecycle dates. # Output only. The device lifecycle (maturity stage and removal date).
        "removalDate": { # Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp # Output only. Specifies the date the resource is scheduled to be removed from the catalog. Only set when `state == DEPRECATED`.
          "day": 42, # Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.
          "month": 42, # Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day.
          "year": 42, # Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year.
        },
        "state": "A String", # Output only. Specifies the current maturity state of the resource.
      },
      "manufacturer": "A String", # Output only. Specifies the hardware manufacturer of the device.
      "modelCode": "A String", # Output only. Provides a human-readable model identifier for this device, independent of OS version. May be empty. Platform-dependent: * Android physical: hardware codename (android.os.Build.DEVICE), e.g. "shiba". * Android virtual: AVD model identifier, e.g. "MediumPhone.arm". * iOS: model identifier, e.g. "iphone14pro".
      "name": "A String", # Identifier. Identifies the device resource. Format: `projects/{project}/locations/{location}/devices/{device}`. The {device} segment is an opaque, stable string. Clients must not parse it to derive or assume device-specific details.
      "osVersion": "A String", # Output only. Specifies the OS version, e.g. "30" (Android API level) or "17.4" (iOS).
      "platform": "A String", # Output only. Specifies the platform of the device.
      "primaryScreen": { # Screen measurements of a device. # Output only. Measurements of the primary device screen. Informational only. Unset for devices without a screen (e.g. some wearables).
        "densityDpi": 42, # Output only. Pixel density in dots per inch (dpi).
        "heightPx": 42, # Output only. Height in pixels.
        "widthPx": 42, # Output only. Width in pixels.
      },
      "supportedProducts": [ # Output only. Products/Services supported by this device.
        { # Declares that a device supports a given Device Cloud product, with optional per-product metadata. Discriminated by which product-specific message is set; adding a new product = new oneof arm + new per-product message.
          "automation": { # Per-product metadata for the Automation (DeviceRun) product. # Output only. Represents Automation, which is DeviceRun-backed automated test execution.
          },
          "deviceStreaming": { # Per-product metadata for the DeviceStreaming product. # Output only. Represents DeviceStreaming, which is interactive remote device streaming.
            "minimumAndroidStudioVersion": "A String", # Output only. Specifies the minimum Android Studio version that supports this device. Optional; only set when the device is known to work only at or above a certain Android Studio version. Expected format "major.minor.micro.patch", e.g. "5921.22.2211.8881706".
          },
        },
      ],
    },
  ],
  "nextPageToken": "A String", # Token to receive the next page of devices. This will be absent if the end of the response list has been reached.
}
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.