swagger: '2.0' info: version: 2020-08-01-preview title: Microsoft Azure AccessControlClient AccessConnector VirtualMachineInstances API schemes: - https tags: - name: VirtualMachineInstances paths: /{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default: put: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesCreateorupdate description: The operation to create or update a virtual machine instance. Please note some properties can be set only during virtual machine instance creation. summary: Microsoft Azure Implements Virtual Machine Put Method x-ms-examples: CreateVirtualMachine: $ref: ./examples/CreateVirtualMachineInstance.json consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' - in: body name: body description: Request payload. schema: $ref: '#/definitions/VirtualMachineInstance' responses: '200': description: Arm resource update successful. schema: $ref: '#/definitions/VirtualMachineInstance' '201': description: Created schema: $ref: '#/definitions/VirtualMachineInstance' default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: azure-async-operation get: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesGet summary: Microsoft Azure Gets A Virtual Machine description: Retrieves information about a virtual machine instance. x-ms-examples: GetVirtualMachine: $ref: ./examples/GetVirtualMachineInstance.json produces: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' responses: '200': description: Success schema: $ref: '#/definitions/VirtualMachineInstance' default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse patch: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesUpdate summary: Microsoft Azure Updates A Virtual Machine description: The operation to update a virtual machine instance. x-ms-examples: UpdateVirtualMachine: $ref: ./examples/UpdateVirtualMachineInstance.json consumes: - application/json produces: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' - in: body name: body description: Resource properties to update. schema: $ref: '#/definitions/VirtualMachineInstanceUpdate' responses: '200': description: Arm resource update successful. schema: $ref: '#/definitions/VirtualMachineInstance' '202': description: Accepted headers: Location: type: string default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: azure-async-operation delete: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesDelete summary: Microsoft Azure Deletes An Virtual Machine description: The operation to delete a virtual machine instance. x-ms-examples: DeleteVirtualMachine: $ref: ./examples/DeleteVirtualMachineInstance.json produces: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' - in: query name: deleteFromHost description: Whether to delete the VM from the vCenter. required: false type: boolean - in: query name: force description: Whether force delete was specified. required: false type: boolean responses: '202': description: Accepted headers: Location: type: string '204': description: No Content default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: azure-async-operation /{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances: get: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesList summary: Microsoft Azure Implements List Virtual Machine Instances description: Lists all of the virtual machine instances within the specified parent resource. x-ms-examples: GetVirtualMachine: $ref: ./examples/ListVirtualMachineInstances.json produces: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' responses: '200': description: Success schema: $ref: '#/definitions/VirtualMachineInstancesList' default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-pageable: nextLinkName: nextLink /{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/stop: post: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesStop description: The operation to power off (stop) a virtual machine instance. summary: Microsoft Azure Implements The Operation To Stop A Virtual Machine x-ms-examples: StopVirtualMachine: $ref: ./examples/StopVirtualMachineInstance.json consumes: - application/json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' - in: body name: body description: Virtualmachine stop action payload. schema: $ref: '#/definitions/StopVirtualMachineOptions' responses: '202': description: Accepted headers: Location: type: string default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: location /{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/start: post: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesStart description: The operation to start a virtual machine instance. summary: Microsoft Azure Implements The Operation To Start A Virtual Machine x-ms-examples: StartVirtualMachine: $ref: ./examples/StartVirtualMachineInstance.json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' responses: '202': description: Accepted headers: Location: type: string default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: location /{resourceUri}/providers/Microsoft.ConnectedVMwarevSphere/virtualMachineInstances/default/restart: post: tags: - VirtualMachineInstances operationId: microsoftAzureVirtualmachineinstancesRestart description: The operation to restart a virtual machine instance. summary: Microsoft Azure Implements The Operation To Restart A Virtual Machine x-ms-examples: RestartVirtualMachine: $ref: ./examples/RestartVirtualMachineInstance.json parameters: - $ref: '#/parameters/resourceUriParameter' - $ref: '#/parameters/api-version' responses: '202': description: Accepted headers: Location: type: string default: description: Error response describing why the operation failed. schema: $ref: ../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse x-ms-long-running-operation: true x-ms-long-running-operation-options: final-state-via: location definitions: SCSIControllerType: description: Defines the different types of SCSI controllers. enum: - lsilogic - buslogic - pvscsi - lsilogicsas type: string x-ms-enum: modelAsString: true name: SCSIControllerType VirtualMachineInstanceProperties: description: Describes the properties of a Virtual Machine Instance. type: object properties: placementProfile: description: Placement properties. $ref: '#/definitions/PlacementProfile' osProfile: description: OS properties. $ref: '#/definitions/OsProfileForVMInstance' hardwareProfile: description: Hardware properties. $ref: '#/definitions/HardwareProfile' networkProfile: description: Network properties. $ref: '#/definitions/NetworkProfile' storageProfile: description: Storage properties. $ref: '#/definitions/StorageProfile' securityProfile: $ref: '#/definitions/SecurityProfile' description: Gets the security profile. infrastructureProfile: $ref: '#/definitions/InfrastructureProfile' description: Gets the infrastructure profile. powerState: description: Gets the power state of the virtual machine. type: string readOnly: true statuses: description: The resource status information. readOnly: true type: array items: $ref: '#/definitions/ResourceStatus' x-ms-identifiers: - type provisioningState: $ref: '#/definitions/ResourceProvisioningState' description: Gets the provisioning state. readOnly: true resourceUid: description: Gets or sets a unique identifier for the vm resource. type: string readOnly: true UefiSettings: type: object properties: secureBootEnabled: type: boolean description: Specifies whether secure boot should be enabled on the virtual machine. description: Specifies the security settings like secure boot used while creating the virtual machine. NetworkProfile: description: Specifies the network interfaces of the virtual machine. type: object properties: networkInterfaces: description: Gets or sets the list of network interfaces associated with the virtual machine. type: array items: $ref: '#/definitions/NetworkInterface' InfrastructureProfile: type: object properties: templateId: description: Gets or sets the ARM Id of the template resource to deploy the virtual machine. type: string vCenterId: description: Gets or sets the ARM Id of the vCenter resource in which this resource pool resides. type: string moRefId: description: Gets or sets the vCenter MoRef (Managed Object Reference) ID for the virtual machine. type: string readOnly: true inventoryItemId: description: Gets or sets the inventory Item ID for the virtual machine. type: string moName: description: Gets or sets the vCenter Managed Object name for the virtual machine. type: string readOnly: true folderPath: description: Gets or sets the folder path of the vm. type: string readOnly: true instanceUuid: description: Gets or sets the instance uuid of the vm. type: string readOnly: true smbiosUuid: type: string description: Gets or sets the SMBIOS UUID of the vm. firmwareType: description: Firmware type $ref: '#/definitions/FirmwareType' customResourceName: description: Gets the name of the corresponding resource in Kubernetes. type: string readOnly: true description: Specifies the vCenter infrastructure specific settings for the virtual machine. OsType: description: Defines the different types of VM guest operating systems. enum: - Windows - Linux - Other type: string x-ms-enum: modelAsString: true name: OsType ExtendedLocation: type: object description: The extended location. properties: type: type: string description: The extended location type. name: type: string description: The extended location name. PlacementProfile: description: Specifies the compute and storage placement settings for the virtual machine. type: object properties: resourcePoolId: type: string description: Gets or sets the ARM Id of the resourcePool resource on which this virtual machine will deploy. clusterId: type: string description: Gets or sets the ARM Id of the cluster resource on which this virtual machine will deploy. hostId: type: string description: Gets or sets the ARM Id of the host resource on which this virtual machine will deploy. datastoreId: type: string description: Gets or sets the ARM Id of the datastore resource on which the data for the virtual machine will be kept. ResourceProvisioningState: type: string description: The current deployment state of resource. enum: - Succeeded - Failed - Canceled - Provisioning - Updating - Deleting - Accepted - Created x-ms-enum: name: ProvisioningState modelAsString: true StorageProfileUpdate: description: Specifies the storage settings for the virtual machine disks. type: object properties: disks: description: Gets or sets the list of virtual disks associated with the virtual machine. type: array items: $ref: '#/definitions/VirtualDiskUpdate' NetworkInterface: description: Network Interface model type: object properties: name: description: Gets or sets the name of the network interface. type: string label: description: Gets or sets the label of the virtual network in vCenter that the nic is connected to. type: string readOnly: true ipAddresses: description: Gets or sets the nic ip addresses. type: array items: type: string readOnly: true macAddress: description: Gets or sets the NIC MAC address. type: string readOnly: true networkId: description: Gets or sets the ARM Id of the network resource to connect the virtual machine. type: string nicType: description: NIC type $ref: '#/definitions/NICType' powerOnBoot: description: Gets or sets the power on boot. $ref: '#/definitions/PowerOnBootOption' networkMoRefId: description: "Gets or sets the vCenter MoRef (Managed Object Reference) ID of the virtual network\r\nthat the nic is connected to." type: string readOnly: true networkMoName: description: Gets or sets the name of the virtual network in vCenter that the nic is connected to. type: string readOnly: true deviceKey: format: int32 description: Gets or sets the device key value. type: integer ipSettings: description: Gets or sets the ipsettings. $ref: '#/definitions/NicIPSettings' OsProfileForVMInstance: description: Specifies the operating system settings for the virtual machine. type: object properties: computerName: description: Gets or sets computer name. type: string adminUsername: description: Gets or sets administrator username. type: string adminPassword: description: Sets administrator password. type: string x-ms-mutability: - create - update x-ms-secret: true guestId: description: Gets or sets the guestId. type: string osType: description: Gets or sets the type of the os. $ref: '#/definitions/OsType' osSku: description: Gets or sets os sku. type: string readOnly: true toolsRunningStatus: description: Gets or sets the current running status of VMware Tools running in the guest operating system. type: string readOnly: true toolsVersionStatus: description: Gets or sets the current version status of VMware Tools installed in the guest operating system. type: string readOnly: true toolsVersion: description: Gets or sets the current version of VMware Tools. type: string readOnly: true StorageProfile: description: Specifies the storage settings for the virtual machine disks. type: object properties: disks: description: Gets or sets the list of virtual disks associated with the virtual machine. type: array items: $ref: '#/definitions/VirtualDisk' scsiControllers: description: Gets or sets the list of virtual SCSI controllers associated with the virtual machine. type: array items: $ref: '#/definitions/VirtualSCSIController' readOnly: true ResourceStatus: description: The resource status information. type: object properties: type: description: The type of the condition. type: string readOnly: true status: description: Status of the condition. type: string readOnly: true reason: description: The reason for the condition's status. type: string readOnly: true message: description: A human readable message indicating details about the status. type: string readOnly: true severity: description: Severity with which to treat failures of this type of condition. type: string readOnly: true lastUpdatedAt: description: The last update time for this condition. type: string format: date-time readOnly: true PowerOnBootOption: description: Defines the options for power on boot. enum: - enabled - disabled type: string x-ms-enum: modelAsString: true name: PowerOnBootOption VirtualDisk: description: Virtual disk model type: object properties: name: description: Gets or sets the name of the virtual disk. type: string label: description: Gets or sets the label of the virtual disk in vCenter. type: string readOnly: true diskObjectId: description: Gets or sets the disk object id. type: string readOnly: true diskSizeGB: format: int32 description: Gets or sets the disk total size. type: integer deviceKey: format: int32 description: Gets or sets the device key value. type: integer diskMode: description: Gets or sets the disk mode. $ref: '#/definitions/DiskMode' controllerKey: description: Gets or sets the controller id. format: int32 type: integer unitNumber: description: Gets or sets the unit number of the disk on the controller. format: int32 type: integer deviceName: description: Gets or sets the device name. type: string diskType: description: Gets or sets the disk backing type. $ref: '#/definitions/DiskType' VirtualMachineInstance: description: Define the virtualMachineInstance. required: - properties type: object x-ms-azure-resource: true allOf: - $ref: ../../../../../common-types/resource-management/v5/types.json#/definitions/ProxyResource description: The resource model definition for an Azure Resource Manager proxy resource. It will have everything other than location and tags. properties: properties: x-ms-client-flatten: true description: Resource properties. $ref: '#/definitions/VirtualMachineInstanceProperties' extendedLocation: $ref: '#/definitions/ExtendedLocation' description: Gets or sets the extended location. VirtualMachineInstanceUpdateProperties: description: Describes the properties of a Virtual Machine. type: object properties: hardwareProfile: $ref: '#/definitions/HardwareProfile' storageProfile: $ref: '#/definitions/StorageProfileUpdate' networkProfile: $ref: '#/definitions/NetworkProfileUpdate' VirtualSCSIController: description: This data object type contains the properties of a SCSI controller device attached to a virtual machine that is reported by the controller. type: object properties: type: description: Gets or sets the controller type. $ref: '#/definitions/SCSIControllerType' controllerKey: format: int32 description: Gets or sets the key of the controller. type: integer busNumber: format: int32 description: Gets or sets the bus number of the controller. type: integer scsiCtlrUnitNumber: format: int32 description: Gets or sets the SCSI controller unit number. type: integer sharing: description: Gets or sets the sharing mode. $ref: '#/definitions/VirtualSCSISharing' DiskMode: description: Defines the different types of disk modes. enum: - persistent - independent_persistent - independent_nonpersistent type: string x-ms-enum: modelAsString: true name: DiskMode NicIPAddressSettings: description: IP address information for a virtual network adapter reported by the fabric. type: object properties: allocationMethod: description: Gets the ip address allocation method. type: string readOnly: true ipAddress: description: Gets the ip address for the nic. type: string readOnly: true subnetMask: description: Gets the mask. type: string readOnly: true HardwareProfile: description: Specifies the hardware settings for the virtual machine. type: object properties: memorySizeMB: format: int32 description: Gets or sets memory size in MBs for the vm. type: integer numCPUs: format: int32 description: Gets or sets the number of vCPUs for the vm. type: integer numCoresPerSocket: format: int32 description: Gets or sets the number of cores per socket for the vm. Defaults to 1 if unspecified. type: integer cpuHotAddEnabled: description: Gets or sets a value indicating whether virtual processors can be added while this virtual machine is running. type: boolean readOnly: true cpuHotRemoveEnabled: description: Gets or sets a value indicating whether virtual processors can be removed while this virtual machine is running. type: boolean readOnly: true memoryHotAddEnabled: description: Gets or sets a value indicating whether memory can be added while this virtual machine is running. type: boolean readOnly: true StopVirtualMachineOptions: description: Defines the stop action properties. type: object properties: skipShutdown: description: Gets or sets a value indicating whether to request non-graceful VM shutdown. True value for this flag indicates non-graceful shutdown whereas false indicates otherwise. Defaults to false. type: boolean default: false VirtualMachineInstancesList: description: List of VirtualMachineInstances. type: object properties: nextLink: description: Url to follow for getting next page of VirtualMachines. type: string value: description: Array of VirtualMachines type: array items: $ref: '#/definitions/VirtualMachineInstance' required: - value DiskType: description: Defines the different types of disks. enum: - flat - pmem - rawphysical - rawvirtual - sparse - sesparse - unknown type: string x-ms-enum: modelAsString: true name: DiskType NICType: description: NIC type type: string enum: - vmxnet3 - vmxnet2 - vmxnet - e1000 - e1000e - pcnet32 x-ms-enum: modelAsString: true name: NICType VirtualMachineInstanceUpdate: description: Defines the virtualMachineInstanceUpdate. type: object properties: properties: x-ms-client-flatten: true description: Resource properties. $ref: '#/definitions/VirtualMachineInstanceUpdateProperties' FirmwareType: description: Firmware type type: string enum: - bios - efi x-ms-enum: modelAsString: true name: FirmwareType NicIPSettings: description: Defines the network interface ip settings. type: object properties: allocationMethod: description: Gets or sets the nic allocation method. $ref: '#/definitions/IPAddressAllocationMethod' dnsServers: description: Gets or sets the dns servers. type: array items: type: string gateway: description: Gets or sets the gateway. type: array items: type: string ipAddress: description: Gets or sets the ip address for the nic. type: string subnetMask: description: Gets or sets the mask. type: string primaryWinsServer: description: Gets or sets the primary server. type: string readOnly: true secondaryWinsServer: description: Gets or sets the secondary server. type: string readOnly: true ipAddressInfo: description: Gets or sets the IP address information being reported for this NIC. This contains the same IPv4 information above plus IPV6 information. type: array items: $ref: '#/definitions/NicIPAddressSettings' readOnly: true VirtualDiskUpdate: description: Defines the virtual disk update. type: object properties: name: description: Gets or sets the name of the virtual disk. type: string diskSizeGB: format: int32 description: Gets or sets the disk total size. type: integer deviceKey: format: int32 description: Gets or sets the device key value. type: integer diskMode: description: Gets or sets the disk mode. $ref: '#/definitions/DiskMode' controllerKey: description: Gets or sets the controller id. format: int32 type: integer unitNumber: description: Gets or sets the unit number of the disk on the controller. format: int32 type: integer deviceName: description: Gets or sets the device name. type: string diskType: description: Gets or sets the disk backing type. $ref: '#/definitions/DiskType' VirtualSCSISharing: description: Defines the sharing mode for sharing the SCSI bus. enum: - noSharing - physicalSharing - virtualSharing type: string x-ms-enum: modelAsString: true name: VirtualSCSISharing SecurityProfile: type: object properties: uefiSettings: $ref: '#/definitions/UefiSettings' description: Specifies the security settings like secure boot used while creating the virtual machine. description: Specifies the Security profile settings for the virtual machine. NetworkInterfaceUpdate: description: Defines the network interface update. type: object properties: name: description: Gets or sets the name of the network interface. type: string networkId: description: Gets or sets the ARM Id of the network resource to connect the virtual machine. type: string nicType: description: NIC type $ref: '#/definitions/NICType' powerOnBoot: description: Gets or sets the power on boot. $ref: '#/definitions/PowerOnBootOption' deviceKey: format: int32 description: Gets or sets the device key value. type: integer IPAddressAllocationMethod: description: IP address allocation method. enum: - unset - dynamic - static - linklayer - random - other type: string x-ms-enum: modelAsString: true name: IPAddressAllocationMethod NetworkProfileUpdate: description: Specifies the network interfaces of the virtual machine. type: object properties: networkInterfaces: description: Gets or sets the list of network interfaces associated with the virtual machine. type: array items: $ref: '#/definitions/NetworkInterfaceUpdate' parameters: api-version: in: query name: api-version description: Client Api Version. required: true type: string resourceUriParameter: in: path name: resourceUri description: The fully qualified Azure Resource manager identifier of the Hybrid Compute machine resource to be extended. required: true type: string x-ms-skip-url-encoding: true x-ms-parameter-location: method x-ms-parameterized-host: hostTemplate: '{endpoint}' useSchemePrefix: false parameters: - $ref: '#/parameters/Endpoint'