| { |
| "auth": { |
| "oauth2": { |
| "scopes": { |
| "https://www.googleapis.com/auth/cloud-platform": { |
| "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account." |
| } |
| } |
| } |
| }, |
| "basePath": "", |
| "baseUrl": "https://baremetalsolution.googleapis.com/", |
| "batchPath": "batch", |
| "description": "Provides ways to manage Bare Metal Solution hardware installed in a regional extension located near a Google Cloud data center.", |
| "discoveryVersion": "v1", |
| "documentationLink": "https://cloud.google.com/bare-metal", |
| "fullyEncodeReservedExpansion": true, |
| "icons": { |
| "x16": "http://www.google.com/images/icons/product/search-16.gif", |
| "x32": "http://www.google.com/images/icons/product/search-32.gif" |
| }, |
| "id": "baremetalsolution:v1alpha1", |
| "kind": "discovery#restDescription", |
| "mtlsRootUrl": "https://baremetalsolution.mtls.googleapis.com/", |
| "name": "baremetalsolution", |
| "ownerDomain": "google.com", |
| "ownerName": "Google", |
| "parameters": { |
| "$.xgafv": { |
| "description": "V1 error format.", |
| "enum": [ |
| "1", |
| "2" |
| ], |
| "enumDescriptions": [ |
| "v1 error format", |
| "v2 error format" |
| ], |
| "location": "query", |
| "type": "string" |
| }, |
| "access_token": { |
| "description": "OAuth access token.", |
| "location": "query", |
| "type": "string" |
| }, |
| "alt": { |
| "default": "json", |
| "description": "Data format for response.", |
| "enum": [ |
| "json", |
| "media", |
| "proto" |
| ], |
| "enumDescriptions": [ |
| "Responses with Content-Type of application/json", |
| "Media download with context-dependent Content-Type", |
| "Responses with Content-Type of application/x-protobuf" |
| ], |
| "location": "query", |
| "type": "string" |
| }, |
| "callback": { |
| "description": "JSONP", |
| "location": "query", |
| "type": "string" |
| }, |
| "fields": { |
| "description": "Selector specifying which fields to include in a partial response.", |
| "location": "query", |
| "type": "string" |
| }, |
| "key": { |
| "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", |
| "location": "query", |
| "type": "string" |
| }, |
| "oauth_token": { |
| "description": "OAuth 2.0 token for the current user.", |
| "location": "query", |
| "type": "string" |
| }, |
| "prettyPrint": { |
| "default": "true", |
| "description": "Returns response with indentations and line breaks.", |
| "location": "query", |
| "type": "boolean" |
| }, |
| "quotaUser": { |
| "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", |
| "location": "query", |
| "type": "string" |
| }, |
| "uploadType": { |
| "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", |
| "location": "query", |
| "type": "string" |
| }, |
| "upload_protocol": { |
| "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", |
| "location": "query", |
| "type": "string" |
| } |
| }, |
| "protocol": "rest", |
| "resources": { |
| "projects": { |
| "resources": { |
| "locations": { |
| "methods": { |
| "submitProvisioningConfig": { |
| "description": "Submit a provisiong configuration for a given project.", |
| "flatPath": "v1alpha1/projects/{projectsId}/locations/{locationsId}:submitProvisioningConfig", |
| "httpMethod": "POST", |
| "id": "baremetalsolution.projects.locations.submitProvisioningConfig", |
| "parameterOrder": [ |
| "project", |
| "location" |
| ], |
| "parameters": { |
| "location": { |
| "description": "Required. The target location of the provisioning request.", |
| "location": "path", |
| "pattern": "^locations/[^/]+$", |
| "required": true, |
| "type": "string" |
| }, |
| "project": { |
| "description": "Required. The target project of the provisioning request.", |
| "location": "path", |
| "pattern": "^projects/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1alpha1/{+project}/{+location}:submitProvisioningConfig", |
| "request": { |
| "$ref": "SubmitProvisioningConfigRequest" |
| }, |
| "response": { |
| "$ref": "ProvisioningConfig" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/cloud-platform" |
| ] |
| } |
| } |
| }, |
| "provisioningQuotas": { |
| "methods": { |
| "list": { |
| "description": "List the budget details to provision resources on a given project.", |
| "flatPath": "v1alpha1/projects/{projectsId}/provisioningQuotas", |
| "httpMethod": "GET", |
| "id": "baremetalsolution.projects.provisioningQuotas.list", |
| "parameterOrder": [ |
| "parent" |
| ], |
| "parameters": { |
| "pageSize": { |
| "description": "The maximum number of items to return.", |
| "format": "int32", |
| "location": "query", |
| "type": "integer" |
| }, |
| "pageToken": { |
| "description": "The next_page_token value returned from a previous List request, if any.", |
| "location": "query", |
| "type": "string" |
| }, |
| "parent": { |
| "description": "Required. The parent project containing the provisioning quotas.", |
| "location": "path", |
| "pattern": "^projects/[^/]+$", |
| "required": true, |
| "type": "string" |
| } |
| }, |
| "path": "v1alpha1/{+parent}/provisioningQuotas", |
| "response": { |
| "$ref": "ListProvisioningQuotasResponse" |
| }, |
| "scopes": [ |
| "https://www.googleapis.com/auth/cloud-platform" |
| ] |
| } |
| } |
| } |
| } |
| } |
| }, |
| "revision": "20220307", |
| "rootUrl": "https://baremetalsolution.googleapis.com/", |
| "schemas": { |
| "InstanceConfig": { |
| "description": "Configuration parameters for a new instance.", |
| "id": "InstanceConfig", |
| "properties": { |
| "clientNetwork": { |
| "$ref": "NetworkAddress", |
| "description": "Client network address." |
| }, |
| "hyperthreading": { |
| "description": "Whether the instance should be provisioned with Hyperthreading enabled.", |
| "type": "boolean" |
| }, |
| "id": { |
| "description": "A transient unique identifier to idenfity an instance within an ProvisioningConfig request.", |
| "type": "string" |
| }, |
| "instanceType": { |
| "description": "Instance type.", |
| "type": "string" |
| }, |
| "location": { |
| "description": "Location where to deploy the instance.", |
| "type": "string" |
| }, |
| "osImage": { |
| "description": "OS image to initialize the instance.", |
| "type": "string" |
| }, |
| "privateNetwork": { |
| "$ref": "NetworkAddress", |
| "description": "Private network address, if any." |
| }, |
| "userNote": { |
| "description": "User note field, it can be used by customers to add additional information for the BMS Ops team (b/194021617).", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "InstanceQuota": { |
| "description": "A resource budget.", |
| "id": "InstanceQuota", |
| "properties": { |
| "availableMachineCount": { |
| "description": "Number of machines than can be created for the given location and instance_type.", |
| "format": "int32", |
| "type": "integer" |
| }, |
| "instanceType": { |
| "description": "Instance type.", |
| "type": "string" |
| }, |
| "location": { |
| "description": "Location where the quota applies.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "ListProvisioningQuotasResponse": { |
| "description": "Response for ListProvisioningQuotas.", |
| "id": "ListProvisioningQuotasResponse", |
| "properties": { |
| "nextPageToken": { |
| "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.", |
| "type": "string" |
| }, |
| "provisioningQuotas": { |
| "description": "The provisioning quotas registered in this project.", |
| "items": { |
| "$ref": "ProvisioningQuota" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "LunRange": { |
| "description": "A LUN range.", |
| "id": "LunRange", |
| "properties": { |
| "quantity": { |
| "description": "Number of LUNs to create.", |
| "format": "int32", |
| "type": "integer" |
| }, |
| "sizeGb": { |
| "description": "The requested size of each LUN, in GB.", |
| "format": "int32", |
| "type": "integer" |
| } |
| }, |
| "type": "object" |
| }, |
| "NetworkAddress": { |
| "description": "A network.", |
| "id": "NetworkAddress", |
| "properties": { |
| "address": { |
| "description": "IP address to be assigned to the server.", |
| "type": "string" |
| }, |
| "existingNetworkId": { |
| "description": "Name of the existing network to use. Will be of the format at--vlan for pre-intake UI networks like for eg, at-123456-vlan001 or any user-defined name like for eg, my-network-name for networks provisioned using intake UI. The field is exclusively filled only in case of an already existing network. Mutually exclusive with network_id.", |
| "type": "string" |
| }, |
| "networkId": { |
| "description": "Name of the network to use, within the same ProvisioningConfig request. This represents a new network being provisioned in the same request. Can have any user-defined name like for eg, my-network-name. Mutually exclusive with existing_network_id.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "NetworkConfig": { |
| "description": "Configuration parameters for a new network.", |
| "id": "NetworkConfig", |
| "properties": { |
| "bandwidth": { |
| "description": "Interconnect bandwidth. Set only when type is CLIENT.", |
| "enum": [ |
| "BANDWIDTH_UNSPECIFIED", |
| "BW_1_GBPS", |
| "BW_2_GBPS", |
| "BW_5_GBPS", |
| "BW_10_GBPS" |
| ], |
| "enumDescriptions": [ |
| "Unspecified value.", |
| "1 Gbps.", |
| "2 Gbps.", |
| "5 Gbps.", |
| "10 Gbps." |
| ], |
| "type": "string" |
| }, |
| "cidr": { |
| "description": "CIDR range of the network.", |
| "type": "string" |
| }, |
| "id": { |
| "description": "A transient unique identifier to identify a volume within an ProvisioningConfig request.", |
| "type": "string" |
| }, |
| "location": { |
| "description": "Location where to deploy the network.", |
| "type": "string" |
| }, |
| "serviceCidr": { |
| "description": "Service CIDR, if any.", |
| "enum": [ |
| "SERVICE_CIDR_UNSPECIFIED", |
| "DISABLED", |
| "HIGH_26", |
| "HIGH_27", |
| "HIGH_28" |
| ], |
| "enumDescriptions": [ |
| "Unspecified value.", |
| "Services are disabled for the given network.", |
| "Use the highest /26 block of the network to host services.", |
| "Use the highest /27 block of the network to host services.", |
| "Use the highest /28 block of the network to host services." |
| ], |
| "type": "string" |
| }, |
| "type": { |
| "description": "The type of this network.", |
| "enum": [ |
| "TYPE_UNSPECIFIED", |
| "CLIENT", |
| "PRIVATE" |
| ], |
| "enumDescriptions": [ |
| "Unspecified value.", |
| "Client network, that is a network peered to a GCP VPC.", |
| "Private network, that is a network local to the BMS POD." |
| ], |
| "type": "string" |
| }, |
| "userNote": { |
| "description": "User note field, it can be used by customers to add additional information for the BMS Ops team (b/194021617).", |
| "type": "string" |
| }, |
| "vlanAttachments": { |
| "description": "List of VLAN attachments. As of now there are always 2 attachments, but it is going to change in the future (multi vlan).", |
| "items": { |
| "$ref": "VlanAttachment" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "NfsExport": { |
| "description": "A NFS export entry.", |
| "id": "NfsExport", |
| "properties": { |
| "allowDev": { |
| "description": "Allow dev.", |
| "type": "boolean" |
| }, |
| "allowSuid": { |
| "description": "Allow the setuid flag.", |
| "type": "boolean" |
| }, |
| "cidr": { |
| "description": "A CIDR range.", |
| "type": "string" |
| }, |
| "machineId": { |
| "description": "Either a single machine, identified by an ID, or a comma-separated list of machine IDs.", |
| "type": "string" |
| }, |
| "networkId": { |
| "description": "Network to use to publish the export.", |
| "type": "string" |
| }, |
| "noRootSquash": { |
| "description": "Disable root squashing.", |
| "type": "boolean" |
| }, |
| "permissions": { |
| "description": "Export permissions.", |
| "enum": [ |
| "PERMISSIONS_UNSPECIFIED", |
| "READ_ONLY", |
| "READ_WRITE" |
| ], |
| "enumDescriptions": [ |
| "Unspecified value.", |
| "Read-only permission.", |
| "Read-write permission." |
| ], |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "ProvisioningConfig": { |
| "description": "An provisioning configuration.", |
| "id": "ProvisioningConfig", |
| "properties": { |
| "instances": { |
| "description": "Instances to be created.", |
| "items": { |
| "$ref": "InstanceConfig" |
| }, |
| "type": "array" |
| }, |
| "networks": { |
| "description": "Networks to be created.", |
| "items": { |
| "$ref": "NetworkConfig" |
| }, |
| "type": "array" |
| }, |
| "ticketId": { |
| "description": "A reference to track the request.", |
| "type": "string" |
| }, |
| "volumes": { |
| "description": "Volumes to be created.", |
| "items": { |
| "$ref": "VolumeConfig" |
| }, |
| "type": "array" |
| } |
| }, |
| "type": "object" |
| }, |
| "ProvisioningQuota": { |
| "description": "A provisioning quota for a given project.", |
| "id": "ProvisioningQuota", |
| "properties": { |
| "instanceQuota": { |
| "$ref": "InstanceQuota", |
| "description": "Instance quota." |
| } |
| }, |
| "type": "object" |
| }, |
| "SubmitProvisioningConfigRequest": { |
| "description": "Request for SubmitProvisioningConfig.", |
| "id": "SubmitProvisioningConfigRequest", |
| "properties": { |
| "email": { |
| "description": "Optional. Email provided to send a confirmation with provisioning config to.", |
| "type": "string" |
| }, |
| "provisioningConfig": { |
| "$ref": "ProvisioningConfig", |
| "description": "Required. The ProvisioningConfig to submit." |
| } |
| }, |
| "type": "object" |
| }, |
| "VlanAttachment": { |
| "description": "A GCP vlan attachment.", |
| "id": "VlanAttachment", |
| "properties": { |
| "id": { |
| "description": "Identifier of the VLAN attachment.", |
| "type": "string" |
| }, |
| "pairingKey": { |
| "description": "Attachment pairing key.", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| }, |
| "VolumeConfig": { |
| "description": "Configuration parameters for a new volume.", |
| "id": "VolumeConfig", |
| "properties": { |
| "id": { |
| "description": "A transient unique identifier to identify a volume within an ProvisioningConfig request.", |
| "type": "string" |
| }, |
| "location": { |
| "description": "Location where to deploy the volume.", |
| "type": "string" |
| }, |
| "lunRanges": { |
| "description": "LUN ranges to be configured. Set only when protocol is PROTOCOL_FC.", |
| "items": { |
| "$ref": "LunRange" |
| }, |
| "type": "array" |
| }, |
| "machineIds": { |
| "description": "Machine ids connected to this volume. Set only when protocol is PROTOCOL_FC.", |
| "items": { |
| "type": "string" |
| }, |
| "type": "array" |
| }, |
| "nfsExports": { |
| "description": "NFS exports. Set only when protocol is PROTOCOL_NFS.", |
| "items": { |
| "$ref": "NfsExport" |
| }, |
| "type": "array" |
| }, |
| "protocol": { |
| "description": "Volume protocol.", |
| "enum": [ |
| "PROTOCOL_UNSPECIFIED", |
| "PROTOCOL_FC", |
| "PROTOCOL_NFS" |
| ], |
| "enumDescriptions": [ |
| "Unspecified value.", |
| "Fibre channel.", |
| "Network file system." |
| ], |
| "type": "string" |
| }, |
| "sizeGb": { |
| "description": "The requested size of this volume, in GB. This will be updated in a later iteration with a generic size field.", |
| "format": "int32", |
| "type": "integer" |
| }, |
| "snapshotsEnabled": { |
| "description": "Whether snapshots should be enabled.", |
| "type": "boolean" |
| }, |
| "type": { |
| "description": "The type of this Volume.", |
| "enum": [ |
| "TYPE_UNSPECIFIED", |
| "FLASH", |
| "DISK" |
| ], |
| "enumDescriptions": [ |
| "The unspecified type.", |
| "This Volume is on flash.", |
| "This Volume is on disk." |
| ], |
| "type": "string" |
| }, |
| "userNote": { |
| "description": "User note field, it can be used by customers to add additional information for the BMS Ops team (b/194021617).", |
| "type": "string" |
| } |
| }, |
| "type": "object" |
| } |
| }, |
| "servicePath": "", |
| "title": "Bare Metal Solution API", |
| "version": "v1alpha1", |
| "version_module": true |
| } |