REST Resource: reservations

Resource: Reservation

Represents a reservation resource. A reservation ensures that capacity is held in a specific zone even if the reserved VMs are not running. For more information, read Reserving zonal resources.

JSON representation
{
  "kind": string,
  "id": string,
  "creationTimestamp": string,
  "selfLink": string,
  "zone": string,
  "description": string,
  "name": string,
  "commitment": string,
  "linkedCommitments": [
    string
  ],
  "specificReservationRequired": boolean,
  "status": enum (Status),
  "shareSettings": {
    object (ShareSettings)
  },
  "satisfiesPzs": boolean,
  "resourcePolicies": {
    string: string,
    ...
  },
  "resourceStatus": {
    object (ResourceStatus)
  },
  "reservationSharingPolicy": {
    object (ReservationSharingPolicy)
  },
  "deploymentType": enum (DeploymentType),
  "advancedDeploymentControl": {
    object (AdvancedDeploymentControl)
  },
  "enableEmergentMaintenance": boolean,
  "protectionTier": enum (ProtectionTier),
  "schedulingType": enum (SchedulingType),
  "params": {
    object (ReservationParams)
  },
  "earlyAccessMaintenance": enum (EarlyAccessMaintenance),

  // Union field type can be only one of the following:
  "specificReservation": {
    object (SpecificSKUReservation)
  },
  "aggregateReservation": {
    object (AggregateReservation)
  }
  // End of list of possible types for union field type.

  // Union field auto_delete_time can be only one of the following:
  "deleteAtTime": string,
  "deleteAfterDuration": {
    object (Duration)
  }
  // End of list of possible types for union field auto_delete_time.
}
Fields
kind

string

Output only. Output only. Type of the resource. Always

compute#reservations

for reservations.

id

string (uint64 format)

Output only. Output only. The unique identifier for the resource. This identifier is defined by the server.

creationTimestamp

string

Output only. Output only. Creation timestamp in RFC3339 text format.

zone

string

Zone in which the reservation resides. A zone must be provided if the reservation is created within a commitment.

description

string

An optional description of this resource. Provide this property when you create the resource.

name

string

The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.

commitment

string

Output only. Output only. Full or partial URL to a parent commitment. This field displays for reservations that are tied to a commitment.

linkedCommitments[]

string

Output only. Output only. Full or partial URL to parent commitments. This field displays for reservations that are tied to multiple commitments.

specificReservationRequired

boolean

Indicates whether the reservation can be consumed by VMs with affinity for "any" reservation. If the field is set, then only VMs that target the reservation by name can consume from this reservation.

status

enum (Status)

Output only. Output only. The status of the reservation.

  • CREATING

    : Reservation resources are being allocated.

  • READY

    : Reservation resources have been allocated, and the reservation is ready for use.

  • DELETING

    : Reservation deletion is in progress.

  • UPDATING

    : Reservation update is in progress.

shareSettings

object (ShareSettings)

Specify share-settings to create a shared reservation. This property is optional. For more information about the syntax and options for this field and its subfields, see the guide for creating a shared reservation.

Available from 2026-03-01..

satisfiesPzs

boolean

Output only. Output only. Reserved for future use.

Available from 2026-03-01..

resourcePolicies

map (key: string, value: string)

Resource policies to be added to this reservation. The key is defined by user, and the value is resource policy url. This is to define placement policy with reservation.

Available from 2026-03-01..

resourceStatus

object (ResourceStatus)

Output only. Output only. Status information for Reservation resource.

Available from 2026-03-01..

reservationSharingPolicy

object (ReservationSharingPolicy)

Specify the reservation sharing policy. If unspecified, the reservation will not be shared with Cloud de Confiance managed services.

Available from 2026-03-01..

deploymentType

enum (DeploymentType)

Specifies the deployment strategy for this reservation.

advancedDeploymentControl

object (AdvancedDeploymentControl)

Advanced control for cluster management, applicable only to DENSE deployment type reservations.

enableEmergentMaintenance

boolean

Indicates whether Compute Engine allows unplanned maintenance for your VMs; for example, to fix hardware errors.

protectionTier

enum (ProtectionTier)

Protection tier for the workload which specifies the workload expectations in the event of infrastructure failures at data center (e.g. power and/or cooling failures).

schedulingType

enum (SchedulingType)

The type of maintenance for the reservation.

params

object (ReservationParams)

Input only. Additional params passed with the request, but not persisted as part of resource payload.

earlyAccessMaintenance

enum (EarlyAccessMaintenance)

Indicates the early access maintenance for the reservation. If this field is absent or set to NO_EARLY_ACCESS, the reservation is not enrolled in early access maintenance and the standard notice applies.

Union field type.

type can be only one of the following:

specificReservation

object (SpecificSKUReservation)

Reservation for instances with specific machine shapes.

aggregateReservation

object (AggregateReservation)

Reservation for aggregated resources, providing shape flexibility.

Available from 2026-03-01..

Union field auto_delete_time.

auto_delete_time can be only one of the following:

deleteAtTime

string

Absolute time in future when the reservation will be auto-deleted by Compute Engine. Timestamp is represented in RFC3339 text format.

deleteAfterDuration

object (Duration)

Duration time relative to reservation creation when Compute Engine will automatically delete this resource.

SpecificSKUReservation

This reservation type allows to pre allocate specific instance configuration.

JSON representation
{
  "instanceProperties": {
    object (ReservedInstanceProperties)
  },
  "count": string,
  "inUseCount": string,
  "assuredCount": string,
  "sourceInstanceTemplate": string
}
Fields
instanceProperties

object (ReservedInstanceProperties)

The instance properties for the reservation.

count

string (int64 format)

Specifies the number of resources that are allocated.

inUseCount

string (int64 format)

Output only. Output only. Indicates how many instances are in use.

assuredCount

string (int64 format)

Output only. Output only. Indicates how many instances are actually usable currently.

sourceInstanceTemplate

string

Specifies the instance template to create the reservation. If you use this field, you must exclude the

instanceProperties

field.

This field is optional, and it can be a full or partial URL. For example, the following are all valid URLs to an instance template:

Available from 2026-03-01..

ReservedInstanceProperties

Properties of the SKU instances being reserved. Next ID: 10

JSON representation
{
  "machineType": string,
  "guestAccelerators": [
    {
      object (AcceleratorConfig)
    }
  ],
  "minCpuPlatform": string,
  "localSsds": [
    {
      object (ReservedDisk)
    }
  ],
  "locationHint": string
}
Fields
machineType

string

Specifies type of machine (name only) which has fixed number of vCPUs and fixed amount of memory. This also includes specifying custom machine type following custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.

guestAccelerators[]

object (AcceleratorConfig)

Specifies accelerator type and count.

minCpuPlatform

string

Minimum cpu platform the reservation.

localSsds[]

object (ReservedDisk)

Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.

locationHint

string

An opaque location hint used to place the allocation close to other resources. This field is for use by internal tools that use the public API.

Available from 2026-03-01..

ReservedDisk

JSON representation
{
  "diskSizeGb": string,
  "interface": enum (DiskInterface)
}
Fields
diskSizeGb

string (int64 format)

Specifies the size of the disk in base-2 GB.

interface

enum (DiskInterface)

Specifies the disk interface to use for attaching this disk, which is either

SCSI

or

NVME

. The default is

SCSI

. For performance characteristics of SCSI over NVMe, see Local SSD performance.

DiskInterface

Enums
SCSI
NVME

AggregateReservation

This reservation type is specified by total resource amounts (e.g. total count of CPUs) and can account for multiple instance SKUs. In other words, one can create instances of varying shapes against this reservation.

JSON representation
{
  "vmFamily": enum (VMFamily),
  "reservedResources": [
    {
      object (ReservedResourceInfo)
    }
  ],
  "inUseResources": [
    {
      object (ReservedResourceInfo)
    }
  ],
  "workloadType": enum (WorkloadType)
}
Fields
vmFamily

enum (VMFamily)

The VM family that all instances scheduled against this reservation must belong to.

Available from 2026-03-01..

reservedResources[]

object (ReservedResourceInfo)

reservations.list of reserved resources (CPUs, memory, accelerators).

Available from 2026-03-01..

inUseResources[]

object (ReservedResourceInfo)

Output only. Output only. reservations.list of resources currently in use.

Available from 2026-03-01..

workloadType

enum (WorkloadType)

The workload type of the instances that will target this reservation.

Available from 2026-03-01..

VMFamily

reservations.list of compute machine families and series for use with aggregate reservations. LINT.IfChange

Enums
VM_FAMILY_CLOUD_TPU_POD_SLICE_CT4P Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_LITE_DEVICE_CT5L Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT5LP Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_POD_SLICE_CT5P Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_LITE_POD_SLICE_CT6E Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_DEVICE_CT3 Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_POD_SLICE_CT3P Available from 2026-03-01..
VM_FAMILY_CLOUD_TPU_POD_SLICE_TPU7X Available from 2026-03-01..

ReservedResourceInfo

JSON representation
{

  // Union field reserved_resource can be only one of the following:
  "accelerator": {
    object (Accelerator)
  }
  // End of list of possible types for union field reserved_resource.
}
Fields

Union field reserved_resource.

reserved_resource can be only one of the following:

accelerator

object (Accelerator)

Properties of accelerator resources in this reservation.

Available from 2026-03-01..

Accelerator

JSON representation
{
  "acceleratorCount": integer,
  "acceleratorType": string
}
Fields
acceleratorCount

integer

Number of accelerators of specified type.

Available from 2026-03-01..

acceleratorType

string

Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"

Available from 2026-03-01..

WorkloadType

Enums
UNSPECIFIED
SERVING Reserved resources will be optimized for SERVING workloads, such as ML inference.
BATCH Reserved resources will be optimized for BATCH workloads, such as ML training.

Status

Enums
INVALID
CREATING Reservation resources are being allocated.
READY Reservation resources have been allocated, and the reservation is ready for use.
DELETING Reservation deletion is in progress.
UPDATING Reservation update is in progress.

ResourceStatus

Output only. Contains output only fields.

JSON representation
{
  "specificSkuAllocation": {
    object (SpecificSKUAllocation)
  },
  "reservationMaintenance": {
    object (GroupMaintenanceInfo)
  },
  "reservationBlockCount": integer,
  "healthInfo": {
    object (HealthInfo)
  }
}
Fields
specificSkuAllocation

object (SpecificSKUAllocation)

Allocation Properties of this reservation.

Available from 2026-03-01..

reservationMaintenance

object (GroupMaintenanceInfo)

Maintenance information for this reservation

reservationBlockCount

integer

The number of reservation blocks associated with this reservation.

healthInfo

object (HealthInfo)

Output only. Health information for the reservation.

SpecificSKUAllocation

Contains Properties set for the reservation.

JSON representation
{
  "sourceInstanceTemplateId": string,
  "utilizations": {
    string: string,
    ...
  }
}
Fields
sourceInstanceTemplateId

string

ID of the instance template used to populate reservation properties.

Available from 2026-03-01..

utilizations

map (key: string, value: string (int64 format))

Per service utilization breakdown. The Key is the Cloud de Confiance managed service name.

Available from 2026-03-01..

HealthInfo

Health information for the reservation.

JSON representation
{
  "healthStatus": enum (HealthStatus),
  "healthyBlockCount": integer,
  "degradedBlockCount": integer
}
Fields
healthStatus

enum (HealthStatus)

The health status of the reservation.

healthyBlockCount

integer

The number of reservation blocks that are healthy.

degradedBlockCount

integer

The number of reservation blocks that are degraded.

HealthStatus

Enums
HEALTH_STATUS_UNSPECIFIED The health status of the reservation is unspecified.
HEALTHY The reservation is healthy.
DEGRADED The reservation is degraded.

ReservationSharingPolicy

JSON representation
{
  "serviceShareType": enum (ServiceShareType)
}
Fields
serviceShareType

enum (ServiceShareType)

Sharing config for all Cloud de Confiance services.

Available from 2026-03-01..

ServiceShareType

Enums
SERVICE_SHARE_TYPE_UNSPECIFIED
ALLOW_ALL Allow all Cloud de Confiance managed services to share reservations.
DISALLOW_ALL [Default] Disallow sharing with all Cloud de Confiance services.

DeploymentType

Indicates if the reservation allocation strategy is static or dynamic. Inherited from the future reservation which delivered this reservation.

Enums
DEPLOYMENT_TYPE_UNSPECIFIED
DENSE The reserved capacity is made up of densely deployed reservation blocks.

AdvancedDeploymentControl

Advance control for cluster management, applicable only to DENSE deployment type reservations.

JSON representation
{
  "reservationOperationalMode": enum (ReservationOperationalMode)
}
Fields
reservationOperationalMode

enum (ReservationOperationalMode)

Indicates chosen reservation operational mode for the reservation.

ReservationOperationalMode

Defines the reservation operational mode for the reservation. This determines how Cloud de Confiance manages the failure of machines and provides capacity.

Enums
RESERVATION_OPERATIONAL_MODE_UNSPECIFIED
HIGHLY_AVAILABLE_CAPACITY Cloud de Confiance manages the failure of machines to provide high availability.
ALL_CAPACITY Cloud de Confiance does not manage the failure of machines, but provides additional capacity, which is not guaranteed to be available.

ProtectionTier

Protection tier for the workload. LINT.IfChange

Enums
PROTECTION_TIER_UNSPECIFIED Unspecified protection tier.
STANDARD STANDARD protection for workload that should be protected by redundancies (e.g. power, cooling) at the data center level. In the event of infrastructure failures at data center (e.g. power and/or cooling failures), this workload is expected to continue as normal using the redundancies.
CAPACITY_OPTIMIZED CAPACITY_OPTIMIZED capacity leverages redundancies (e.g. power, cooling) at the data center during normal operating conditions. In the event of infrastructure failures at data center (e.g. power and/or cooling failures), this workload may be disrupted. As a consequence, it has a weaker availability SLO than STANDARD.

ReservationParams

Additional reservation params.

JSON representation
{
  "resourceManagerTags": {
    string: string,
    ...
  }
}
Fields
resourceManagerTags

map (key: string, value: string)

Input only. Resource manager tags to be bound to the reservation. Tag keys and values have the same definition as resource manager tags. Keys and values can be either in numeric format, such as tagKeys/{tag_key_id} and tagValues/{tag_value_id} or in namespaced format such as {org_id|projectId}/{tag_key_short_name} and {tag_value_short_name}.

EarlyAccessMaintenance

Enum to represent the early access maintenance

Enums
NO_EARLY_ACCESS No early access.
WAVE1 Wave 1: Fastest notification period
WAVE2 Wave 2: Medium notification period

Methods

aggregatedList

The method compute.v1.AllocationsService.AggregatedList is not available in Cloud de Confiance by S3NS.

delete

The method compute.v1.AllocationsService.Delete is not available in Cloud de Confiance by S3NS.

get

The method compute.v1.AllocationsService.Get is not available in Cloud de Confiance by S3NS.

getIamPolicy

The method compute.v1.AllocationsService.GetPolicy is not available in Cloud de Confiance by S3NS.

insert

The method compute.v1.AllocationsService.Insert is not available in Cloud de Confiance by S3NS.

list

The method compute.v1.AllocationsService.List is not available in Cloud de Confiance by S3NS.

performMaintenance

The method compute.v1.AllocationsService.PerformMaintenance is not available in Cloud de Confiance by S3NS.

resize

The method compute.v1.AllocationsService.Resize is not available in Cloud de Confiance by S3NS.

setIamPolicy

The method compute.v1.AllocationsService.SetPolicy is not available in Cloud de Confiance by S3NS.

testIamPermissions

The method compute.v1.AllocationsService.TestPermissions is not available in Cloud de Confiance by S3NS.

update

The method compute.v1.AllocationsService.Update is not available in Cloud de Confiance by S3NS.