- HTTP request
- Path parameters
- Request body
- Response body
- Authorization scopes
- IAM Permissions
- Try it!
Retrieves information about the specified future reservation.
HTTP request
GET https://compute.googleapis.com/compute/beta/projects/{project}/zones/{zone}/futureReservations/{futureReservation}
The URL uses gRPC Transcoding syntax.
Path parameters
Parameters | |
---|---|
project
|
Project ID for this request. |
zone
|
Name of the zone for this request. Name should conform to RFC1035. |
futureReservation
|
Name of the future reservation to retrieve. Name should conform to RFC1035. |
Request body
The request body must be empty.
Response body
If successful, the response body contains data with the following structure:
JSON representation |
---|
{ "kind" : string , "id" : string , "creationTimestamp" : string , "selfLink" : string , "selfLinkWithId" : string , "zone" : string , "description" : string , "name" : string , "timeWindow" : { "endTime" : string , "duration" : { "seconds" : string , "nanos" : integer } , "startTime" : string } , "shareSettings" : { "shareType" : enum , "projects" : [ string ] , "projectMap" : { string : { "projectId" : string } , ... } } , "namePrefix" : string , "status" : { "procurementStatus" : enum , "lockTime" : string , "autoCreatedReservations" : [ string ] , "fulfilledCount" : string , "specificSkuProperties" : { "sourceInstanceTemplateId" : string } , "amendmentStatus" : enum , "lastKnownGoodState" : { "futureReservationSpecs" : { "specificSkuProperties" : { "instanceProperties" : { "machineType" : string , "guestAccelerators" : [ { "acceleratorType" : string , "acceleratorCount" : integer } ] , "minCpuPlatform" : string , "localSsds" : [ { "diskSizeGb" : string , "interface" : enum } ] , "maintenanceFreezeDurationHours" : integer , "locationHint" : string , "maintenanceInterval" : enum } , "totalCount" : string , "sourceInstanceTemplate" : string } , "timeWindow" : { "startTime" : string , // Union field |
kind
string
[Output Only] Type of the resource. Always compute#futureReservation
for future reservations.
id
string ( uint64
format)
[Output Only] A unique identifier for this future reservation. The server defines this identifier.
selfLink
string
[Output Only] Server-defined fully-qualified URL for this resource.
selfLinkWithId
string
[Output Only] Server-defined URL for this resource with the resource id.
zone
string
[Output Only] URL of the Zone where this future reservation resides.
description
string
An optional description of this resource. Provide this property when you create the future reservation.
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.
timeWindow
object
Time window for this Future Reservation.
timeWindow.endTime
string
timeWindow.duration
object
timeWindow.duration.seconds
string ( int64
format)
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
timeWindow.duration.nanos
integer
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds
field and a positive nanos
field. Must be from 0 to 999,999,999 inclusive.
timeWindow.startTime
string
Start time of the Future Reservation. The startTime is an RFC3339 string.
shareSettings.shareType
enum
Type of sharing for this shared-reservation
shareSettings.projects[]
string
A futureReservations.list of Project names to specify consumer projects for this shared-reservation. This is only valid when shareType's value is SPECIFIC_PROJECTS.
shareSettings.projectMap[]
map (key: string, value: object)
A map of project id and project config. This is only valid when shareType's value is SPECIFIC_PROJECTS.
shareSettings.projectMap[].projectId
string
The project ID, should be same as the key of this project config in the parent map.
namePrefix
string
Name prefix for the reservations to be created at the time of delivery. The name prefix must comply with RFC1035
. Maximum allowed length for name prefix is 20. Automatically created reservations name format will be
status
object
[Output only] Status of the Future Reservation
status.procurementStatus
enum
Current state of this Future Reservation
status.lockTime
string
Time when Future Reservation would become LOCKED, after which no modifications to Future Reservation will be allowed. Applicable only after the Future Reservation is in the APPROVED state. The lockTime is an RFC3339 string. The procurementStatus will transition to PROCURING state at this time.
status.autoCreatedReservations[]
string
Fully qualified urls of the automatically created reservations at startTime.
status.fulfilledCount
string ( int64
format)
This count indicates the fulfilled capacity so far. This is set during "PROVISIONING" state. This count also includes capacity delivered as part of existing matching reservations.
status.specificSkuProperties
object
status.specificSkuProperties.sourceInstanceTemplateId
string
ID of the instance template used to populate the Future Reservation properties.
status.amendmentStatus
enum
[Output Only] The current status of the requested amendment.
status.lastKnownGoodState
object
[Output Only] This field represents the future reservation before an amendment was requested. If the amendment is declined, the Future Reservation will be reverted to the last known good state. The last known good state is not set when updating a future reservation whose Procurement Status is DRAFTING.
status.lastKnownGoodState.futureReservationSpecs
object
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties
object
[Output Only] The previous instance related properties of the Future Reservation.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties
object
Properties of the SKU instances being reserved.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.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.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.guestAccelerators[]
object
Specifies accelerator type and count.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.guestAccelerators[].acceleratorType
string
Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100
If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine
for a full list of accelerator types.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.guestAccelerators[].acceleratorCount
integer
The number of the guest accelerator cards exposed to this instance.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.minCpuPlatform
string
Minimum cpu platform the reservation.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.localSsds[]
object
Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.localSsds[].diskSizeGb
string ( int64
format)
Specifies the size of the disk in base-2 GB.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.localSsds[].interface
enum
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
.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.maintenanceFreezeDurationHours
integer
Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.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.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.instanceProperties.maintenanceInterval
enum
Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC
.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.totalCount
string ( int64
format)
Total number of instances for which capacity assurance is requested at a future time period.
status.lastKnownGoodState.futureReservationSpecs.specificSkuProperties.sourceInstanceTemplate
string
The instance template that will be used to populate the ReservedInstanceProperties of the future reservation
status.lastKnownGoodState.futureReservationSpecs.timeWindow
object
[Output Only] The previous time window of the Future Reservation.
status.lastKnownGoodState.futureReservationSpecs.timeWindow.endTime
string
status.lastKnownGoodState.futureReservationSpecs.timeWindow.duration
object
status.lastKnownGoodState.futureReservationSpecs.timeWindow.duration.seconds
string ( int64
format)
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
status.lastKnownGoodState.futureReservationSpecs.timeWindow.duration.nanos
integer
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds
field and a positive nanos
field. Must be from 0 to 999,999,999 inclusive.
status.lastKnownGoodState.futureReservationSpecs.timeWindow.startTime
string
Start time of the Future Reservation. The startTime is an RFC3339 string.
status.lastKnownGoodState.futureReservationSpecs.shareSettings
object
[Output Only] The previous share settings of the Future Reservation.
status.lastKnownGoodState.futureReservationSpecs.shareSettings.shareType
enum
Type of sharing for this shared-reservation
status.lastKnownGoodState.futureReservationSpecs.shareSettings.projects[]
string
A futureReservations.list of Project names to specify consumer projects for this shared-reservation. This is only valid when shareType's value is SPECIFIC_PROJECTS.
status.lastKnownGoodState.futureReservationSpecs.shareSettings.projectMap[]
map (key: string, value: object)
A map of project id and project config. This is only valid when shareType's value is SPECIFIC_PROJECTS.
status.lastKnownGoodState.futureReservationSpecs.shareSettings.projectMap[].projectId
string
The project ID, should be same as the key of this project config in the parent map.
status.lastKnownGoodState.procurementStatus
enum
[Output Only] The status of the last known good state for the Future Reservation.
status.lastKnownGoodState.namePrefix
string
[Output Only] The name prefix of the Future Reservation before an amendment was requested.
status.lastKnownGoodState.description
string
[Output Only] The description of the FutureReservation before an amendment was requested.
status.lastKnownGoodState.lockTime
string
[Output Only] The lock time of the FutureReservation before an amendment was requested.
status.lastKnownGoodState.existingMatchingUsageInfo
object
[Output Only] Represents the matching usage for the future reservation before an amendment was requested.
status.lastKnownGoodState.existingMatchingUsageInfo.count
string ( int64
format)
Count to represent min(FR totalCount, matching_reserved_capacity+matching_unreserved_instances)
status.lastKnownGoodState.existingMatchingUsageInfo.timestamp
string
Timestamp when the matching usage was calculated
status.existingMatchingUsageInfo
object
[Output Only] Represents the existing matching usage for the future reservation.
status.existingMatchingUsageInfo.count
string ( int64
format)
Count to represent min(FR totalCount, matching_reserved_capacity+matching_unreserved_instances)
status.existingMatchingUsageInfo.timestamp
string
Timestamp when the matching usage was calculated
planningStatus
enum
Planning state before being submitted for evaluation
autoDeleteAutoCreatedReservations
boolean
Setting for enabling or disabling automatic deletion for auto-created reservation. If set to true, auto-created reservations will be deleted at Future Reservation's end time (default) or at user's defined timestamp if any of the [autoCreatedReservationsDeleteTime, autoCreatedReservationsDuration] values is specified. For keeping auto-created reservation indefinitely, this value should be set to false.
specificReservationRequired
boolean
Indicates whether the auto-created 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 the delivered reservation.
reservationName
string
Name of reservations where the capacity is provisioned at the time of delivery of future reservations. If the reservation with the given name does not exist already, it is created automatically at the time of Approval with INACTIVE state till specified start-time. Either provide the reservationName or a namePrefix.
deploymentType
enum
Type of the deployment requested as part of future reservation.
commitmentInfo
object
If not present, then FR will not deliver a new commitment or update an existing commitment.
commitmentInfo.commitmentPlan
enum
Indicates if a Commitment needs to be created as part of FR delivery. If this field is not present, then no commitment needs to be created.
commitmentInfo.commitmentName
string
name of the commitment where capacity is being delivered to.
commitmentInfo.previousCommitmentTerms
enum
Only applicable if FR is delivering to the same reservation. If set, all parent commitments will be extended to match the end date of the plan for this commitment.
schedulingType
enum
Maintenance information for this reservation
reservationMode
enum
The reservation mode which determines reservation-termination behavior and expected pricing.
enableEmergentMaintenance
boolean
Indicates if this group of VMs have emergent maintenance enabled.
Union field type
.
type
can be only one of the following:
specificSkuProperties
object
Future Reservation configuration to indicate instance properties and total count.
specificSkuProperties.instanceProperties
object
Properties of the SKU instances being reserved.
specificSkuProperties.instanceProperties.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.
specificSkuProperties.instanceProperties.guestAccelerators[]
object
Specifies accelerator type and count.
specificSkuProperties.instanceProperties.guestAccelerators[].acceleratorType
string
Full or partial URL of the accelerator type resource to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100
If you are creating an instance template, specify only the accelerator name. See GPUs on Compute Engine
for a full list of accelerator types.
specificSkuProperties.instanceProperties.guestAccelerators[].acceleratorCount
integer
The number of the guest accelerator cards exposed to this instance.
specificSkuProperties.instanceProperties.minCpuPlatform
string
Minimum cpu platform the reservation.
specificSkuProperties.instanceProperties.localSsds[]
object
Specifies amount of local ssd to reserve with each instance. The type of disk is local-ssd.
specificSkuProperties.instanceProperties.localSsds[].diskSizeGb
string ( int64
format)
Specifies the size of the disk in base-2 GB.
specificSkuProperties.instanceProperties.localSsds[].interface
enum
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
.
specificSkuProperties.instanceProperties.maintenanceFreezeDurationHours
integer
Specifies the number of hours after reservation creation where instances using the reservation won't be scheduled for maintenance.
specificSkuProperties.instanceProperties.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.
specificSkuProperties.instanceProperties.maintenanceInterval
enum
Specifies the frequency of planned maintenance events. The accepted values are: PERIODIC
.
specificSkuProperties.totalCount
string ( int64
format)
Total number of instances for which capacity assurance is requested at a future time period.
specificSkuProperties.sourceInstanceTemplate
string
The instance template that will be used to populate the ReservedInstanceProperties of the future reservation
aggregateReservation
object
Aggregate reservation details for the future reservation.
aggregateReservation.vmFamily
enum
The VM family that all instances scheduled against this reservation must belong to.
aggregateReservation.reservedResources[]
object
futureReservations.list of reserved resources (CPUs, memory, accelerators).
aggregateReservation.reservedResources[].accelerator
object
Properties of accelerator resources in this reservation.
aggregateReservation.reservedResources[].accelerator.acceleratorCount
integer
Number of accelerators of specified type.
aggregateReservation.reservedResources[].accelerator.acceleratorType
string
Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
aggregateReservation.inUseResources[]
object
[Output only] futureReservations.list of resources currently in use.
aggregateReservation.inUseResources[].accelerator
object
Properties of accelerator resources in this reservation.
aggregateReservation.inUseResources[].accelerator.acceleratorCount
integer
Number of accelerators of specified type.
aggregateReservation.inUseResources[].accelerator.acceleratorType
string
Full or partial URL to accelerator type. e.g. "projects/{PROJECT}/zones/{ZONE}/acceleratorTypes/ct4l"
aggregateReservation.workloadType
enum
The workload type of the instances that will target this reservation.
Union field auto_delete_auto_created_reservations_time
.
auto_delete_auto_created_reservations_time
can be only one of the following:
autoCreatedReservationsDeleteTime
string
Future timestamp when the FR auto-created reservations will be deleted by Compute Engine. Format of this field must be a valid href="https://www.ietf.org/rfc/rfc3339.txt">RFC3339 value.
autoCreatedReservationsDuration
object
Specifies the duration of auto-created reservations. It represents relative time to future reservation startTime when auto-created reservations will be automatically deleted by Compute Engine. Duration time unit is represented as a count of seconds and fractions of seconds at nanosecond resolution.
autoCreatedReservationsDuration.seconds
string ( int64
format)
Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive. Note: these bounds are computed from: 60 sec/min * 60 min/hr * 24 hr/day * 365.25 days/year * 10000 years
autoCreatedReservationsDuration.nanos
integer
Span of time that's a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds
field and a positive nanos
field. Must be from 0 to 999,999,999 inclusive.
Authorization scopes
Requires one of the following OAuth scopes:
-
https://www.googleapis.com/auth/compute.readonly
-
https://www.googleapis.com/auth/compute
-
https://www.googleapis.com/auth/cloud-platform
For more information, see the Authentication Overview .
IAM Permissions
In addition to any permissions specified on the fields above, authorization requires one or more of the following IAM permissions:
-
compute.futureReservations.get
To find predefined roles that contain those permissions, see Compute Engine IAM Roles .