REST Resource: projects.locations.hardware

Resource: Hardware

An instance of hardware installed at a site.

JSON representation
{
  "name": string,
  "displayName": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "order": string,
  "hardwareGroup": string,
  "site": string,
  "state": enum (State),
  "ciqUri": string,
  "config": {
    object (HardwareConfig)
  },
  "estimatedInstallationDate": {
    object (Date)
  },
  "physicalInfo": {
    object (HardwarePhysicalInfo)
  },
  "installationInfo": {
    object (HardwareInstallationInfo)
  },
  "zone": string,
  "requestedInstallationDate": {
    object (Date)
  },
  "actualInstallationDate": {
    object (Date)
  },
  "machineInfos": [
    {
      object (MachineInfo)
    }
  ],
  "estimatedDeliveryDate": {
    object (Date)
  },
  "aiCapable": boolean,
  "subscriptionConfigs": [
    {
      object (SubscriptionConfig)
    }
  ],
  "operations": [
    {
      object (ResourceOperation)
    }
  ]
}
Fields
name

string

Identifier. Name of this hardware. Format: projects/{project}/locations/{location}/hardware/{hardware}

displayName

string

Optional. Display name for this hardware.

createTime

string (Timestamp format)

Output only. Time when this hardware was created.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Output only. Time when this hardware was last updated.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Optional. Labels associated with this hardware as key value pairs. For more information about labels, see Create and manage labels.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

order

string

Required. Name of the order that this hardware belongs to. Format: projects/{project}/locations/{location}/orders/{order}

hardwareGroup

string

Output only. Name for the hardware group that this hardware belongs to. Format: projects/{project}/locations/{location}/orders/{order}/hardwareGroups/{hardwareGroup}

site

string

Required. Name for the site that this hardware belongs to. Format: projects/{project}/locations/{location}/sites/{site}

state

enum (State)

Output only. Current state for this hardware.

ciqUri

string

Output only. Link to the Customer Intake Questionnaire (CIQ) sheet for this Hardware.

config

object (HardwareConfig)

Required. Configuration for this hardware.

estimatedInstallationDate

object (Date)

Output only. Estimated installation date for this hardware.

physicalInfo

object (HardwarePhysicalInfo)

Optional. Physical properties of this hardware.

installationInfo

object (HardwareInstallationInfo)

Optional. Information for installation of this hardware.

zone

string

Required. Name for the zone that this hardware belongs to. Format: projects/{project}/locations/{location}/zones/{zone}

requestedInstallationDate
(deprecated)

object (Date)

Optional. Deprecated: The requested installation date has been moved to the Order resource. Use customerRequestedInstallationDate on the Order resource instead.

actualInstallationDate

object (Date)

Output only. Actual installation date for this hardware. Filled in by Google.

machineInfos[]

object (MachineInfo)

Optional. Per machine asset information needed for turnup.

estimatedDeliveryDate

object (Date)

Output only. The estimated delivery date of the hardware.

aiCapable

boolean

Output only. Indicates whether this hardware is for Gemini on GDC Software.

subscriptionConfigs[]

object (SubscriptionConfig)

Output only. Subscription configurations for this hardware.

operations[]

object (ResourceOperation)

Output only. List of all operations performed on the hardware.

State

Valid states for hardware.

Enums
STATE_UNSPECIFIED State of the Hardware is unspecified.
ADDITIONAL_INFO_NEEDED More information is required from the customer to make progress.
BUILDING Google has initiated building hardware for this Hardware.
SHIPPING The hardware has been built and is being shipped.
INSTALLING The hardware is being installed.
INSTALLED The hardware has been installed.
FAILED An error occurred and customer intervention is required.
INFO_COMPLETE Hardware has all required information.
READY_FOR_PROVISIONING Hardware is ready for provisioning.
PROVISIONING_STARTED Hardware has started provisioning.
PROVISIONING_FAILED Hardware provisioning has failed.

HardwarePhysicalInfo

Physical properties of a hardware.

JSON representation
{
  "powerReceptacle": enum (PowerReceptacleType),
  "networkUplink": enum (NetworkUplinkType),
  "voltage": enum (Voltage),
  "amperes": enum (Amperes)
}
Fields
powerReceptacle

enum (PowerReceptacleType)

Required. The power receptacle type.

voltage

enum (Voltage)

Required. Voltage of the power supply.

amperes

enum (Amperes)

Required. Amperes of the power supply.

PowerReceptacleType

Valid power receptacle types.

Enums
POWER_RECEPTACLE_TYPE_UNSPECIFIED Facility plug type is unspecified.
NEMA_5_15 NEMA 5-15.
C_13 C13.
STANDARD_EU

Deprecated: Please use TYPE_G_BS1363, CEE_7_3, CEE_7_5 or TYPE_F instead.

TYPE_G_BS1363 Type G / BS1363.
CEE_7_3 C 7/3.
CEE_7_5 C 7/5.
TYPE_F Type F.

NetworkUplinkType

Valid network uplink types.

Enums
RJ_45 RJ-45.

Voltage

Valid voltage values.

Enums
VOLTAGE_UNSPECIFIED Voltage is unspecified.
VOLTAGE_110 120V.
VOLTAGE_220 220V.

Amperes

Valid amperes values.

Enums
AMPERES_UNSPECIFIED Amperes is unspecified.
AMPERES_15 15A.

HardwareInstallationInfo

Information for installation of a Hardware.

JSON representation
{
  "rackLocation": string,
  "powerDistanceMeters": integer,
  "switchDistanceMeters": integer,
  "rackUnitDimensions": {
    object (Dimensions)
  },
  "rackSpace": {
    object (RackSpace)
  },
  "rackType": enum (RackType)
}
Fields
rackLocation

string

Optional. Location of the rack in the site e.g. Floor 2, Room 201, Row 7, Rack 3.

powerDistanceMeters

integer

Required. Distance from the power outlet in meters.

switchDistanceMeters

integer

Required. Distance from the network switch in meters.

rackUnitDimensions

object (Dimensions)

Optional. Dimensions of the rack unit.

rackSpace

object (RackSpace)

Optional. Rack space allocated for the hardware.

rackType

enum (RackType)

Required. Type of the rack.

Dimensions

Represents the dimensions of an object.

JSON representation
{
  "widthInches": number,
  "heightInches": number,
  "depthInches": number
}
Fields
widthInches

number

Required. Width in inches.

heightInches

number

Required. Height in inches.

depthInches

number

Required. Depth in inches.

RackType

Valid rack types.

Enums
RACK_TYPE_UNSPECIFIED Rack type is unspecified.
TWO_POST Two post rack.
FOUR_POST Four post rack.

MachineInfo

Information about individual machines vendors will provide during turnup.

JSON representation
{
  "serviceTag": string,
  "macAddresses": [
    {
      object (MacAddress)
    }
  ],
  "name": string,
  "diskInfos": [
    {
      object (DiskInfo)
    }
  ],
  "machineType": enum (MachineType),
  "tpmEkCertHash": string,
  "gpuSerialNumbers": [
    string
  ],
  "cpuSerialNumbers": [
    string
  ],
  "memoryInfos": [
    {
      object (MemoryInfo)
    }
  ],
  "idracMacAddress": string,
  "nicSerialNumbers": [
    string
  ]
}
Fields
serviceTag

string

Optional. Machine service tag.

macAddresses[]

object (MacAddress)

Output only. Each associated MAC address.

name

string

Output only. Machine name.

diskInfos[]

object (DiskInfo)

Optional. Information for each disk installed.

machineType

enum (MachineType)

Optional. Machine type. Required for hardware running Gemini on GDC Software.

tpmEkCertHash

string

Optional. TPM EK Certificate Hash. Required during hardware repair.

gpuSerialNumbers[]

string

Optional. GPU serial numbers. Required during hardware repair.

cpuSerialNumbers[]

string

Optional. CPU serial numbers. Required during hardware repair.

memoryInfos[]

object (MemoryInfo)

Optional. Information for each memory installed. Required during hardware repair.

idracMacAddress

string

Optional. iDRAC MAC address. Required during hardware repair.

nicSerialNumbers[]

string

Optional. NIC serial numbers. Required during hardware repair.

MacAddress

Message to describe the MAC address of a machine.

JSON representation
{
  "address": string,
  "type": enum (AddressType),
  "ipv4Address": string
}
Fields
address

string

Output only. Address string.

type

enum (AddressType)

Output only. Address type for this MAC address.

ipv4Address

string

Output only. Static IP address (if used) that is associated with the MAC address. Only applicable for VIRTUAL MAC address type.

AddressType

Enum for the different types of MAC address.

Enums
ADDRESS_TYPE_UNSPECIFIED Unspecified address type.
NIC Address of a network interface card.
BMC Address of a baseboard management controller.
VIRTUAL Address of a virtual interface.

DiskInfo

Information about individual disks on a machine.

JSON representation
{
  "manufacturer": string,
  "slot": integer,
  "serialNumber": string,
  "psid": string,
  "partNumber": string,
  "modelNumber": string
}
Fields
manufacturer

string

Optional. Disk manufacturer.

slot

integer

Optional. Disk slot number.

serialNumber

string

Optional. Disk serial number.

psid

string

Optional. Disk PSID.

partNumber

string

Optional. Disk part number.

modelNumber

string

Optional. Disk model number.

MachineType

Enum for machine types used for Gemini on GDC Software.

Enums
MACHINE_TYPE_UNSPECIFIED Unspecified machine type.
DELL_XE9680 Dell XE9680 server.
DELL_XE9780 Dell XE9780 server.

MemoryInfo

Information about individual memories on a machine.

JSON representation
{
  "serialNumber": string,
  "sizeBytes": string,
  "partNumber": string
}
Fields
serialNumber

string

Optional. Memory serial number.

sizeBytes

string (int64 format)

Optional. Memory size.

partNumber

string

Optional. Memory part number.

ResourceOperation

Represents an ongoing operation for a resource

JSON representation
{
  "uid": string,
  "state": enum (State),
  "type": enum (Type),
  "stateHistory": [
    {
      object (StateHistoryEntry)
    }
  ],
  "requiresReTurnup": boolean
}
Fields
uid

string

Output only. Operation ID.

state

enum (State)

Output only. Operation state.

type

enum (Type)

Output only. Operation type.

stateHistory[]

object (StateHistoryEntry)

Output only. State history for the operation.

requiresReTurnup

boolean

Output only. A flag to indicate whether a re-turnup is required.

State

Enum for operation states.

Enums
STATE_UNSPECIFIED Unspecified operation state.
AWAITING_CUSTOMER_INPUT The operation is awaiting customer input.
PROGRESSING The operation is in progress.
COMPLETED The operation is complete.

Type

Enum for operation types.

Enums
TYPE_UNSPECIFIED Unspecified operation type.
REPAIR Repair operation.

StateHistoryEntry

Entry for operation state history.

JSON representation
{
  "state": enum (State),
  "updateTime": string,
  "reason": string,
  "responsibleEntity": enum (Entity)
}
Fields
state

enum (State)

Output only. Operation state.

updateTime

string (Timestamp format)

Output only. Timestamp when the operation state was updated.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

reason

string

Output only. Reason for the state change.

responsibleEntity

enum (Entity)

Output only. Entity that changed the state.

Methods

changeSubscription

Updates the subscription config for a hardware.

create

Creates new hardware in a given project and location.

delete

Deletes hardware.

get

Gets hardware details.

list

Lists hardware in a given project and location.

patch

Updates hardware parameters.

signal

Signals the state of a hardware.