| { | |
| "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": "20220829", | |
| "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 | |
| } |