Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5kZXZ0ZXN0bGFiL2xhYnMve30vdmlydHVhbG1hY2hpbmVzL3t9/2018-09-15.xml (1,830 lines of code) (raw):

<?xml version='1.0' encoding='utf-8'?> <CodeGen plane="mgmt-plane"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.devtestlab/labs/{}/virtualmachines/{}" version="2018-09-15" swagger="mgmt-plane/devtestlabs/ResourceProviders/Microsoft.DevTestLab/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRGV2VGVzdExhYi9sYWJzL3tsYWJOYW1lfS92aXJ0dWFsbWFjaGluZXMve25hbWV9/V/MjAxOC0wOS0xNQ=="/> <commandGroup name="lab vm"> <command name="show" version="2018-09-15" confirmation=""> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.devtestlab/labs/{}/virtualmachines/{}" version="2018-09-15" swagger="mgmt-plane/devtestlabs/ResourceProviders/Microsoft.DevTestLab/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRGV2VGVzdExhYi9sYWJzL3tsYWJOYW1lfS92aXJ0dWFsbWFjaGluZXMve25hbWV9/V/MjAxOC0wOS0xNQ=="/> <argGroup name=""> <arg type="string" var="$Path.labName" options="lab-name" required="True" idPart="name"> <help short="The name of the lab."/> </arg> <arg type="string" var="$Path.name" options="name" required="True" group="" idPart="child_name_1"> <help short="The name of the virtual machine."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> <arg type="string" var="$Query.expand" options="expand"> <help short="Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)'"/> </arg> </argGroup> <operation operationId="VirtualMachines_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}"> <request method="get"> <path> <param type="string" name="labName" arg="$Path.labName" required="True"/> <param type="string" name="name" arg="$Path.name" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <param type="string" name="$expand" arg="$Query.expand"/> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2018-09-15&quot;"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.DevTestLab/labs/{}/virtualmachines/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="boolean" name="allowClaim"> <default value="false"/> </prop> <prop readOnly="True" type="object" name="applicableSchedule"> <prop readOnly="True" type="string" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="labVmsShutdown" cls="Schedule_read"> <prop readOnly="True" type="ResourceId" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop readOnly="True" type="dateTime" name="createdDate"/> <prop type="object" name="dailyRecurrence" cls="DayDetails_read"> <prop type="string" name="time"/> </prop> <prop type="object" name="hourlyRecurrence" cls="HourDetails_read"> <prop type="integer32" name="minute"/> </prop> <prop type="object" name="notificationSettings" cls="NotificationSettings_read"> <prop type="string" name="emailRecipient"/> <prop type="string" name="notificationLocale"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="integer32" name="timeInMinutes"/> <prop type="string" name="webhookUrl"/> </prop> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="object" name="weeklyRecurrence" cls="WeekDetails_read"> <prop type="string" name="time"/> <prop type="array<string>" name="weekdays"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="@Schedule_read" name="labVmsStartup"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="object" name="artifactDeploymentStatus"> <prop type="integer32" name="artifactsApplied"/> <prop type="string" name="deploymentStatus"/> <prop type="integer32" name="totalArtifacts"/> </prop> <prop type="array<object>" name="artifacts"> <item type="object"> <prop type="string" name="artifactId"/> <prop type="string" name="artifactTitle"/> <prop type="string" name="deploymentStatusMessage"/> <prop type="dateTime" name="installTime"/> <prop type="array<object>" name="parameters"> <item type="object"> <prop type="string" name="name"/> <prop type="string" name="value"/> </item> </prop> <prop type="string" name="status"/> <prop type="string" name="vmExtensionStatusMessage"/> </item> </prop> <prop readOnly="True" type="string" name="computeId"/> <prop readOnly="True" type="object" name="computeVm"> <prop type="array<string>" name="dataDiskIds"> <item type="string"/> </prop> <prop type="array<object>" name="dataDisks"> <item type="object"> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskUri"/> <prop type="string" name="managedDiskId"/> <prop type="string" name="name"/> </item> </prop> <prop type="string" name="networkInterfaceId"/> <prop type="string" name="osDiskId"/> <prop type="string" name="osType"/> <prop type="array<object>" name="statuses"> <item type="object"> <prop type="string" name="code"/> <prop type="string" name="displayStatus"/> <prop type="string" name="message"/> </item> </prop> <prop type="string" name="vmSize"/> </prop> <prop readOnly="True" type="string" name="createdByUser"/> <prop readOnly="True" type="string" name="createdByUserId"/> <prop type="dateTime" name="createdDate"/> <prop type="string" name="customImageId"/> <prop type="array<object>" name="dataDiskParameters"> <item type="object"> <prop type="object" name="attachNewDataDiskOptions"> <prop type="string" name="diskName"/> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskType"> <enum> <item value="&quot;Premium&quot;"/> <item value="&quot;Standard&quot;"/> <item value="&quot;StandardSSD&quot;"/> </enum> </prop> </prop> <prop type="string" name="existingLabDiskId"/> <prop type="string" name="hostCaching"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;ReadOnly&quot;"/> <item value="&quot;ReadWrite&quot;"/> </enum> </prop> </item> </prop> <prop type="boolean" name="disallowPublicIpAddress"> <default value="false"/> </prop> <prop type="string" name="environmentId"/> <prop type="dateTime" name="expirationDate"/> <prop readOnly="True" type="string" name="fqdn"/> <prop type="object" name="galleryImageReference"> <prop type="string" name="offer"/> <prop type="string" name="osType"/> <prop type="string" name="publisher"/> <prop type="string" name="sku"/> <prop type="string" name="version"/> </prop> <prop type="boolean" name="isAuthenticationWithSshKey"/> <prop type="string" name="labSubnetName"/> <prop type="string" name="labVirtualNetworkId"/> <prop readOnly="True" type="string" name="lastKnownPowerState"/> <prop type="object" name="networkInterface"> <prop type="string" name="dnsName"/> <prop type="string" name="privateIpAddress"/> <prop type="string" name="publicIpAddress"/> <prop type="string" name="publicIpAddressId"/> <prop type="string" name="rdpAuthority"/> <prop type="object" name="sharedPublicIpAddressConfiguration"> <prop type="array<object>" name="inboundNatRules"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="transportProtocol"> <enum> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> </item> </prop> </prop> <prop type="string" name="sshAuthority"/> <prop type="string" name="subnetId"/> <prop type="string" name="virtualNetworkId"/> </prop> <prop type="string" name="notes"/> <prop readOnly="True" type="string" name="osType"/> <prop type="string" name="ownerObjectId"> <default value="&quot;dynamicValue&quot;"/> </prop> <prop type="string" name="ownerUserPrincipalName"/> <prop type="string" name="password" secret="True"/> <prop type="string" name="planId"/> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="array<object>" name="scheduleParameters"> <item type="object"> <prop readOnly="True" type="string" name="location"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@DayDetails_read" name="dailyRecurrence"/> <prop type="@HourDetails_read" name="hourlyRecurrence"/> <prop type="@NotificationSettings_read" name="notificationSettings"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop type="@WeekDetails_read" name="weeklyRecurrence"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </item> </prop> <prop type="string" name="size"/> <prop type="string" name="sshKey" secret="True"/> <prop type="string" name="storageType"> <default value="&quot;labStorageType&quot;"/> </prop> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="string" name="userName"/> <prop readOnly="True" type="string" name="virtualMachineCreationSource"> <enum> <item value="&quot;FromCustomImage&quot;"/> <item value="&quot;FromGalleryImage&quot;"/> <item value="&quot;FromSharedGalleryImage&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="delete" version="2018-09-15" confirmation="Are you sure you want to perform this operation?"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.devtestlab/labs/{}/virtualmachines/{}" version="2018-09-15" swagger="mgmt-plane/devtestlabs/ResourceProviders/Microsoft.DevTestLab/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRGV2VGVzdExhYi9sYWJzL3tsYWJOYW1lfS92aXJ0dWFsbWFjaGluZXMve25hbWV9/V/MjAxOC0wOS0xNQ=="/> <argGroup name=""> <arg type="string" var="$Path.labName" options="lab-name" required="True" idPart="name"> <help short="The name of the lab."/> </arg> <arg type="string" var="$Path.name" options="name" required="True" group="" idPart="child_name_1"> <help short="The name of the virtual machine."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <operation operationId="VirtualMachines_Delete"> <longRunning finalStateVia="azure-async-operation"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}"> <request method="delete"> <path> <param type="string" name="labName" arg="$Path.labName" required="True"/> <param type="string" name="name" arg="$Path.name" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2018-09-15&quot;"/> </const> </query> </request> <response statusCode="200"/> <response statusCode="202"/> <response statusCode="204"/> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> </command> <command name="create" version="2018-09-15"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.devtestlab/labs/{}/virtualmachines/{}" version="2018-09-15" swagger="mgmt-plane/devtestlabs/ResourceProviders/Microsoft.DevTestLab/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRGV2VGVzdExhYi9sYWJzL3tsYWJOYW1lfS92aXJ0dWFsbWFjaGluZXMve25hbWV9/V/MjAxOC0wOS0xNQ=="/> <argGroup name=""> <arg type="string" var="$Path.labName" options="lab-name" required="True" idPart="name"> <help short="The name of the lab."/> </arg> <arg type="string" var="$Path.name" options="name n" required="True" idPart="child_name_1"> <help short="The name of the virtual machine."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <argGroup name="LabVirtualMachine"> <arg type="ResourceLocation" var="$labVirtualMachine.location" options="location l" group="LabVirtualMachine"> <help short="The location of the resource."/> </arg> <arg type="object" var="$labVirtualMachine.tags" options="tags" group="LabVirtualMachine"> <help short="The tags of the resource."/> <additionalProp> <item type="string"/> </additionalProp> </arg> </argGroup> <argGroup name="Properties"> <arg type="boolean" var="$labVirtualMachine.properties.allowClaim" options="allow-claim" group="Properties"> <help short="Indicates whether another user can take ownership of the virtual machine"/> <default value="false"/> </arg> <arg type="array<object>" var="$labVirtualMachine.properties.artifacts" options="artifacts" group="Properties"> <help short="The artifacts to be installed on the virtual machine."/> <item type="object"> <arg type="string" var="$labVirtualMachine.properties.artifacts[].artifactId" options="artifact-id"> <help short="The artifact's identifier."/> </arg> <arg type="string" var="$labVirtualMachine.properties.artifacts[].artifactTitle" options="artifact-title"> <help short="The artifact's title."/> </arg> <arg type="string" var="$labVirtualMachine.properties.artifacts[].deploymentStatusMessage" options="deployment-status-message"> <help short="The status message from the deployment."/> </arg> <arg type="dateTime" var="$labVirtualMachine.properties.artifacts[].installTime" options="install-time"> <help short="The time that the artifact starts to install on the virtual machine."/> </arg> <arg type="array<object>" var="$labVirtualMachine.properties.artifacts[].parameters" options="parameters"> <help short="The parameters of the artifact."/> <item type="object"> <arg type="string" var="$labVirtualMachine.properties.artifacts[].parameters[].name" options="name"> <help short="The name of the artifact parameter."/> </arg> <arg type="string" var="$labVirtualMachine.properties.artifacts[].parameters[].value" options="value"> <help short="The value of the artifact parameter."/> </arg> </item> </arg> <arg type="string" var="$labVirtualMachine.properties.artifacts[].status" options="status"> <help short="The status of the artifact."/> </arg> <arg type="string" var="$labVirtualMachine.properties.artifacts[].vmExtensionStatusMessage" options="vm-extension-status-message"> <help short="The status message from the virtual machine extension."/> </arg> </item> </arg> <arg type="dateTime" var="$labVirtualMachine.properties.createdDate" options="created-date" group="Properties"> <help short="The creation date of the virtual machine."/> </arg> <arg type="string" var="$labVirtualMachine.properties.customImageId" options="custom-image-id" group="Properties"> <help short="The custom image identifier of the virtual machine."/> </arg> <arg type="array<object>" var="$labVirtualMachine.properties.dataDiskParameters" options="data-disk-parameters" group="Properties"> <help short="New or existing data disks to attach to the virtual machine after creation"/> <item type="object"> <arg type="object" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions" options="attach-new-data-disk-options"> <help short="Specifies options to attach a new disk to the virtual machine."/> <arg type="string" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskName" options="disk-name"> <help short="The name of the disk to be attached."/> </arg> <arg type="integer32" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskSizeGiB" options="disk-size-gi-b"> <help short="Size of the disk to be attached in Gibibytes."/> </arg> <arg type="string" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskType" options="disk-type"> <help short="The storage type for the disk (i.e. Standard, Premium)."/> <enum> <item name="Premium" value="&quot;Premium&quot;"/> <item name="Standard" value="&quot;Standard&quot;"/> <item name="StandardSSD" value="&quot;StandardSSD&quot;"/> </enum> </arg> </arg> <arg type="string" var="$labVirtualMachine.properties.dataDiskParameters[].existingLabDiskId" options="existing-lab-disk-id"> <help short="Specifies the existing lab disk id to attach to virtual machine."/> </arg> <arg type="string" var="$labVirtualMachine.properties.dataDiskParameters[].hostCaching" options="host-caching"> <help short="Caching option for a data disk (i.e. None, ReadOnly, ReadWrite)."/> <enum> <item name="None" value="&quot;None&quot;"/> <item name="ReadOnly" value="&quot;ReadOnly&quot;"/> <item name="ReadWrite" value="&quot;ReadWrite&quot;"/> </enum> </arg> </item> </arg> <arg type="boolean" var="$labVirtualMachine.properties.disallowPublicIpAddress" options="disallow-public-ip-address" group="Properties"> <help short="Indicates whether the virtual machine is to be created without a public IP address."/> <default value="false"/> </arg> <arg type="string" var="$labVirtualMachine.properties.environmentId" options="environment-id" group="Properties"> <help short="The resource ID of the environment that contains this virtual machine, if any."/> </arg> <arg type="dateTime" var="$labVirtualMachine.properties.expirationDate" options="expiration-date" group="Properties"> <help short="The expiration date for VM."/> </arg> <arg type="object" var="$labVirtualMachine.properties.galleryImageReference" options="gallery-image-reference" group="Properties"> <help short="The Microsoft Azure Marketplace image reference of the virtual machine."/> <arg type="string" var="$labVirtualMachine.properties.galleryImageReference.offer" options="offer"> <help short="The offer of the gallery image."/> </arg> <arg type="string" var="$labVirtualMachine.properties.galleryImageReference.osType" options="os-type"> <help short="The OS type of the gallery image."/> </arg> <arg type="string" var="$labVirtualMachine.properties.galleryImageReference.publisher" options="publisher"> <help short="The publisher of the gallery image."/> </arg> <arg type="string" var="$labVirtualMachine.properties.galleryImageReference.sku" options="sku"> <help short="The SKU of the gallery image."/> </arg> <arg type="string" var="$labVirtualMachine.properties.galleryImageReference.version" options="version"> <help short="The version of the gallery image."/> </arg> </arg> <arg type="boolean" var="$labVirtualMachine.properties.isAuthenticationWithSshKey" options="is-authentication-with-ssh-key" group="Properties"> <help short="Indicates whether this virtual machine uses an SSH key for authentication."/> </arg> <arg type="string" var="$labVirtualMachine.properties.labSubnetName" options="lab-subnet-name" group="Properties"> <help short="The lab subnet name of the virtual machine."/> </arg> <arg type="string" var="$labVirtualMachine.properties.labVirtualNetworkId" options="lab-virtual-network-id" group="Properties"> <help short="The lab virtual network identifier of the virtual machine."/> </arg> <arg type="object" var="$labVirtualMachine.properties.networkInterface" options="network-interface" group="Properties"> <help short="The network interface properties."/> <arg type="string" var="$labVirtualMachine.properties.networkInterface.dnsName" options="dns-name"> <help short="The DNS name."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.privateIpAddress" options="private-ip-address"> <help short="The private IP address."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.publicIpAddress" options="public-ip-address"> <help short="The public IP address."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.publicIpAddressId" options="public-ip-address-id"> <help short="The resource ID of the public IP address."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.rdpAuthority" options="rdp-authority"> <help short="The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol)."/> </arg> <arg type="object" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration" options="shared-public-ip-address-configuration"> <help short="The configuration for sharing a public IP address across multiple virtual machines."/> <arg type="array<object>" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules" options="inbound-nat-rules"> <help short="The incoming NAT rules"/> <item type="object"> <arg type="integer32" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].backendPort" options="backend-port"> <help short="The port to which the external traffic will be redirected."/> </arg> <arg type="integer32" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].frontendPort" options="frontend-port"> <help short="The external endpoint port of the inbound connection. Possible values range between 1 and 65535, inclusive. If unspecified, a value will be allocated automatically."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].transportProtocol" options="transport-protocol"> <help short="The transport protocol for the endpoint."/> <enum> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Udp" value="&quot;Udp&quot;"/> </enum> </arg> </item> </arg> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.sshAuthority" options="ssh-authority"> <help short="The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.subnetId" options="subnet-id"> <help short="The resource ID of the sub net."/> </arg> <arg type="string" var="$labVirtualMachine.properties.networkInterface.virtualNetworkId" options="virtual-network-id"> <help short="The resource ID of the virtual network."/> </arg> </arg> <arg type="string" var="$labVirtualMachine.properties.notes" options="notes" group="Properties"> <help short="The notes of the virtual machine."/> </arg> <arg type="string" var="$labVirtualMachine.properties.ownerObjectId" options="owner-object-id" group="Properties"> <help short="The object identifier of the owner of the virtual machine."/> <default value="&quot;dynamicValue&quot;"/> </arg> <arg type="string" var="$labVirtualMachine.properties.ownerUserPrincipalName" options="owner-user-principal-name" group="Properties"> <help short="The user principal name of the virtual machine owner."/> </arg> <arg type="string" var="$labVirtualMachine.properties.password" options="password" group="Properties"> <help short="The password of the virtual machine administrator."/> </arg> <arg type="string" var="$labVirtualMachine.properties.planId" options="plan-id" group="Properties"> <help short="The id of the plan associated with the virtual machine image"/> </arg> <arg type="array<object>" var="$labVirtualMachine.properties.scheduleParameters" options="schedule-parameters" group="Properties"> <help short="Virtual Machine schedules to be created"/> <item type="object"> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].name" options="name"> <help short="The name of the virtual machine or environment"/> </arg> <arg type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence" options="daily-recurrence" group="Properties"> <help short="If the schedule will occur once each day of the week, specify the daily recurrence."/> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence.time" options="time"> <help short="The time of day the schedule will occur."/> </arg> </arg> <arg type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence" options="hourly-recurrence" group="Properties"> <help short="If the schedule will occur multiple times a day, specify the hourly recurrence."/> <arg type="integer32" var="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence.minute" options="minute"> <help short="Minutes of the hour the schedule will run."/> </arg> </arg> <arg type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings" options="notification-settings" group="Properties"> <help short="Notification settings."/> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.emailRecipient" options="email-recipient"> <help short="The email recipient to send notifications to (can be a list of semi-colon separated email addresses)."/> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.notificationLocale" options="notification-locale"> <help short="The locale to use when sending a notification (fallback for unsupported languages is EN)."/> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.status" options="status"> <help short="If notifications are enabled for this schedule (i.e. Enabled, Disabled)."/> <default value="&quot;Disabled&quot;"/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg type="integer32" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.timeInMinutes" options="time-in-minutes"> <help short="Time in minutes before event at which notification will be sent."/> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.webhookUrl" options="webhook-url"> <help short="The webhook URL to which the notification will be sent."/> </arg> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.status" options="status" group="Properties"> <help short="The status of the schedule (i.e. Enabled, Disabled)"/> <default value="&quot;Disabled&quot;"/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.targetResourceId" options="target-resource-id" group="Properties"> <help short="The resource ID to which the schedule belongs"/> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.taskType" options="task-type" group="Properties"> <help short="The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart)."/> </arg> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.timeZoneId" options="time-zone-id" group="Properties"> <help short="The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in `IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds` (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)"/> </arg> <arg type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence" options="weekly-recurrence" group="Properties"> <help short="If the schedule will occur only some days of the week, specify the weekly recurrence."/> <arg type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.time" options="time"> <help short="The time of the day the schedule will occur."/> </arg> <arg type="array<string>" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.weekdays" options="weekdays"> <help short="The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.)."/> <item type="string"/> </arg> </arg> <arg type="object" var="$labVirtualMachine.properties.scheduleParameters[].tags" options="tags"> <help short="The tags of the resource."/> <additionalProp> <item type="string"/> </additionalProp> </arg> </item> </arg> <arg type="string" var="$labVirtualMachine.properties.size" options="size" group="Properties"> <help short="The size of the virtual machine."/> </arg> <arg type="string" var="$labVirtualMachine.properties.sshKey" options="ssh-key" group="Properties"> <help short="The SSH key of the virtual machine administrator."/> </arg> <arg type="string" var="$labVirtualMachine.properties.storageType" options="storage-type" group="Properties"> <help short="Storage type to use for virtual machine (i.e. Standard, Premium)."/> <default value="&quot;labStorageType&quot;"/> </arg> <arg type="string" var="$labVirtualMachine.properties.userName" options="user-name" group="Properties"> <help short="The user name of the virtual machine."/> </arg> </argGroup> <operation operationId="VirtualMachines_CreateOrUpdate"> <longRunning finalStateVia="azure-async-operation"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}"> <request method="put"> <path> <param type="string" name="labName" arg="$Path.labName" required="True"/> <param type="string" name="name" arg="$Path.name" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2018-09-15&quot;"/> </const> </query> <body> <json> <schema type="object" name="labVirtualMachine" required="True" clientFlatten="True"> <prop type="ResourceLocation" name="location" arg="$labVirtualMachine.location"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="boolean" name="allowClaim" arg="$labVirtualMachine.properties.allowClaim"> <default value="false"/> </prop> <prop type="array<object>" name="artifacts" arg="$labVirtualMachine.properties.artifacts"> <item type="object"> <prop type="string" name="artifactId" arg="$labVirtualMachine.properties.artifacts[].artifactId"/> <prop type="string" name="artifactTitle" arg="$labVirtualMachine.properties.artifacts[].artifactTitle"/> <prop type="string" name="deploymentStatusMessage" arg="$labVirtualMachine.properties.artifacts[].deploymentStatusMessage"/> <prop type="dateTime" name="installTime" arg="$labVirtualMachine.properties.artifacts[].installTime"/> <prop type="array<object>" name="parameters" arg="$labVirtualMachine.properties.artifacts[].parameters"> <item type="object"> <prop type="string" name="name" arg="$labVirtualMachine.properties.artifacts[].parameters[].name"/> <prop type="string" name="value" arg="$labVirtualMachine.properties.artifacts[].parameters[].value"/> </item> </prop> <prop type="string" name="status" arg="$labVirtualMachine.properties.artifacts[].status"/> <prop type="string" name="vmExtensionStatusMessage" arg="$labVirtualMachine.properties.artifacts[].vmExtensionStatusMessage"/> </item> </prop> <prop type="dateTime" name="createdDate" arg="$labVirtualMachine.properties.createdDate"/> <prop type="string" name="customImageId" arg="$labVirtualMachine.properties.customImageId"/> <prop type="array<object>" name="dataDiskParameters" arg="$labVirtualMachine.properties.dataDiskParameters"> <item type="object"> <prop type="object" name="attachNewDataDiskOptions" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions"> <prop type="string" name="diskName" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskName"/> <prop type="integer32" name="diskSizeGiB" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskSizeGiB"/> <prop type="string" name="diskType" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskType"> <enum> <item value="&quot;Premium&quot;"/> <item value="&quot;Standard&quot;"/> <item value="&quot;StandardSSD&quot;"/> </enum> </prop> </prop> <prop type="string" name="existingLabDiskId" arg="$labVirtualMachine.properties.dataDiskParameters[].existingLabDiskId"/> <prop type="string" name="hostCaching" arg="$labVirtualMachine.properties.dataDiskParameters[].hostCaching"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;ReadOnly&quot;"/> <item value="&quot;ReadWrite&quot;"/> </enum> </prop> </item> </prop> <prop type="boolean" name="disallowPublicIpAddress" arg="$labVirtualMachine.properties.disallowPublicIpAddress"> <default value="false"/> </prop> <prop type="string" name="environmentId" arg="$labVirtualMachine.properties.environmentId"/> <prop type="dateTime" name="expirationDate" arg="$labVirtualMachine.properties.expirationDate"/> <prop type="object" name="galleryImageReference" arg="$labVirtualMachine.properties.galleryImageReference"> <prop type="string" name="offer" arg="$labVirtualMachine.properties.galleryImageReference.offer"/> <prop type="string" name="osType" arg="$labVirtualMachine.properties.galleryImageReference.osType"/> <prop type="string" name="publisher" arg="$labVirtualMachine.properties.galleryImageReference.publisher"/> <prop type="string" name="sku" arg="$labVirtualMachine.properties.galleryImageReference.sku"/> <prop type="string" name="version" arg="$labVirtualMachine.properties.galleryImageReference.version"/> </prop> <prop type="boolean" name="isAuthenticationWithSshKey" arg="$labVirtualMachine.properties.isAuthenticationWithSshKey"/> <prop type="string" name="labSubnetName" arg="$labVirtualMachine.properties.labSubnetName"/> <prop type="string" name="labVirtualNetworkId" arg="$labVirtualMachine.properties.labVirtualNetworkId"/> <prop type="object" name="networkInterface" arg="$labVirtualMachine.properties.networkInterface"> <prop type="string" name="dnsName" arg="$labVirtualMachine.properties.networkInterface.dnsName"/> <prop type="string" name="privateIpAddress" arg="$labVirtualMachine.properties.networkInterface.privateIpAddress"/> <prop type="string" name="publicIpAddress" arg="$labVirtualMachine.properties.networkInterface.publicIpAddress"/> <prop type="string" name="publicIpAddressId" arg="$labVirtualMachine.properties.networkInterface.publicIpAddressId"/> <prop type="string" name="rdpAuthority" arg="$labVirtualMachine.properties.networkInterface.rdpAuthority"/> <prop type="object" name="sharedPublicIpAddressConfiguration" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration"> <prop type="array<object>" name="inboundNatRules" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules"> <item type="object"> <prop type="integer32" name="backendPort" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].backendPort"/> <prop type="integer32" name="frontendPort" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].frontendPort"/> <prop type="string" name="transportProtocol" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].transportProtocol"> <enum> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> </item> </prop> </prop> <prop type="string" name="sshAuthority" arg="$labVirtualMachine.properties.networkInterface.sshAuthority"/> <prop type="string" name="subnetId" arg="$labVirtualMachine.properties.networkInterface.subnetId"/> <prop type="string" name="virtualNetworkId" arg="$labVirtualMachine.properties.networkInterface.virtualNetworkId"/> </prop> <prop type="string" name="notes" arg="$labVirtualMachine.properties.notes"/> <prop type="string" name="ownerObjectId" arg="$labVirtualMachine.properties.ownerObjectId"> <default value="&quot;dynamicValue&quot;"/> </prop> <prop type="string" name="ownerUserPrincipalName" arg="$labVirtualMachine.properties.ownerUserPrincipalName"/> <prop type="string" name="password" arg="$labVirtualMachine.properties.password" secret="True"/> <prop type="string" name="planId" arg="$labVirtualMachine.properties.planId"/> <prop type="array<object>" name="scheduleParameters" arg="$labVirtualMachine.properties.scheduleParameters"> <item type="object"> <prop type="string" name="name" arg="$labVirtualMachine.properties.scheduleParameters[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="dailyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence"> <prop type="string" name="time" arg="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence.time"/> </prop> <prop type="object" name="hourlyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence"> <prop type="integer32" name="minute" arg="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence.minute"/> </prop> <prop type="object" name="notificationSettings" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings"> <prop type="string" name="emailRecipient" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.emailRecipient"/> <prop type="string" name="notificationLocale" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.notificationLocale"/> <prop type="string" name="status" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="integer32" name="timeInMinutes" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.timeInMinutes"/> <prop type="string" name="webhookUrl" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.webhookUrl"/> </prop> <prop type="string" name="status" arg="$labVirtualMachine.properties.scheduleParameters[].properties.status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId" arg="$labVirtualMachine.properties.scheduleParameters[].properties.targetResourceId"/> <prop type="string" name="taskType" arg="$labVirtualMachine.properties.scheduleParameters[].properties.taskType"/> <prop type="string" name="timeZoneId" arg="$labVirtualMachine.properties.scheduleParameters[].properties.timeZoneId"/> <prop type="object" name="weeklyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence"> <prop type="string" name="time" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.time"/> <prop type="array<string>" name="weekdays" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.weekdays"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags" arg="$labVirtualMachine.properties.scheduleParameters[].tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </item> </prop> <prop type="string" name="size" arg="$labVirtualMachine.properties.size"/> <prop type="string" name="sshKey" arg="$labVirtualMachine.properties.sshKey" secret="True"/> <prop type="string" name="storageType" arg="$labVirtualMachine.properties.storageType"> <default value="&quot;labStorageType&quot;"/> </prop> <prop type="string" name="userName" arg="$labVirtualMachine.properties.userName"/> </prop> <prop type="object" name="tags" arg="$labVirtualMachine.tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </schema> </json> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="object"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.DevTestLab/labs/{}/virtualmachines/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="boolean" name="allowClaim"> <default value="false"/> </prop> <prop readOnly="True" type="object" name="applicableSchedule"> <prop readOnly="True" type="string" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="labVmsShutdown" cls="Schedule_read"> <prop readOnly="True" type="ResourceId" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop readOnly="True" type="dateTime" name="createdDate"/> <prop type="object" name="dailyRecurrence" cls="DayDetails_read"> <prop type="string" name="time"/> </prop> <prop type="object" name="hourlyRecurrence" cls="HourDetails_read"> <prop type="integer32" name="minute"/> </prop> <prop type="object" name="notificationSettings" cls="NotificationSettings_read"> <prop type="string" name="emailRecipient"/> <prop type="string" name="notificationLocale"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="integer32" name="timeInMinutes"/> <prop type="string" name="webhookUrl"/> </prop> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="object" name="weeklyRecurrence" cls="WeekDetails_read"> <prop type="string" name="time"/> <prop type="array<string>" name="weekdays"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="@Schedule_read" name="labVmsStartup"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="object" name="artifactDeploymentStatus"> <prop type="integer32" name="artifactsApplied"/> <prop type="string" name="deploymentStatus"/> <prop type="integer32" name="totalArtifacts"/> </prop> <prop type="array<object>" name="artifacts"> <item type="object"> <prop type="string" name="artifactId"/> <prop type="string" name="artifactTitle"/> <prop type="string" name="deploymentStatusMessage"/> <prop type="dateTime" name="installTime"/> <prop type="array<object>" name="parameters"> <item type="object"> <prop type="string" name="name"/> <prop type="string" name="value"/> </item> </prop> <prop type="string" name="status"/> <prop type="string" name="vmExtensionStatusMessage"/> </item> </prop> <prop readOnly="True" type="string" name="computeId"/> <prop readOnly="True" type="object" name="computeVm"> <prop type="array<string>" name="dataDiskIds"> <item type="string"/> </prop> <prop type="array<object>" name="dataDisks"> <item type="object"> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskUri"/> <prop type="string" name="managedDiskId"/> <prop type="string" name="name"/> </item> </prop> <prop type="string" name="networkInterfaceId"/> <prop type="string" name="osDiskId"/> <prop type="string" name="osType"/> <prop type="array<object>" name="statuses"> <item type="object"> <prop type="string" name="code"/> <prop type="string" name="displayStatus"/> <prop type="string" name="message"/> </item> </prop> <prop type="string" name="vmSize"/> </prop> <prop readOnly="True" type="string" name="createdByUser"/> <prop readOnly="True" type="string" name="createdByUserId"/> <prop type="dateTime" name="createdDate"/> <prop type="string" name="customImageId"/> <prop type="array<object>" name="dataDiskParameters"> <item type="object"> <prop type="object" name="attachNewDataDiskOptions"> <prop type="string" name="diskName"/> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskType"> <enum> <item value="&quot;Premium&quot;"/> <item value="&quot;Standard&quot;"/> <item value="&quot;StandardSSD&quot;"/> </enum> </prop> </prop> <prop type="string" name="existingLabDiskId"/> <prop type="string" name="hostCaching"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;ReadOnly&quot;"/> <item value="&quot;ReadWrite&quot;"/> </enum> </prop> </item> </prop> <prop type="boolean" name="disallowPublicIpAddress"> <default value="false"/> </prop> <prop type="string" name="environmentId"/> <prop type="dateTime" name="expirationDate"/> <prop readOnly="True" type="string" name="fqdn"/> <prop type="object" name="galleryImageReference"> <prop type="string" name="offer"/> <prop type="string" name="osType"/> <prop type="string" name="publisher"/> <prop type="string" name="sku"/> <prop type="string" name="version"/> </prop> <prop type="boolean" name="isAuthenticationWithSshKey"/> <prop type="string" name="labSubnetName"/> <prop type="string" name="labVirtualNetworkId"/> <prop readOnly="True" type="string" name="lastKnownPowerState"/> <prop type="object" name="networkInterface"> <prop type="string" name="dnsName"/> <prop type="string" name="privateIpAddress"/> <prop type="string" name="publicIpAddress"/> <prop type="string" name="publicIpAddressId"/> <prop type="string" name="rdpAuthority"/> <prop type="object" name="sharedPublicIpAddressConfiguration"> <prop type="array<object>" name="inboundNatRules"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="transportProtocol"> <enum> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> </item> </prop> </prop> <prop type="string" name="sshAuthority"/> <prop type="string" name="subnetId"/> <prop type="string" name="virtualNetworkId"/> </prop> <prop type="string" name="notes"/> <prop readOnly="True" type="string" name="osType"/> <prop type="string" name="ownerObjectId"> <default value="&quot;dynamicValue&quot;"/> </prop> <prop type="string" name="ownerUserPrincipalName"/> <prop type="string" name="password" secret="True"/> <prop type="string" name="planId"/> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="array<object>" name="scheduleParameters"> <item type="object"> <prop readOnly="True" type="string" name="location"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@DayDetails_read" name="dailyRecurrence"/> <prop type="@HourDetails_read" name="hourlyRecurrence"/> <prop type="@NotificationSettings_read" name="notificationSettings"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop type="@WeekDetails_read" name="weeklyRecurrence"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </item> </prop> <prop type="string" name="size"/> <prop type="string" name="sshKey" secret="True"/> <prop type="string" name="storageType"> <default value="&quot;labStorageType&quot;"/> </prop> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="string" name="userName"/> <prop readOnly="True" type="string" name="virtualMachineCreationSource"> <enum> <item value="&quot;FromCustomImage&quot;"/> <item value="&quot;FromGalleryImage&quot;"/> <item value="&quot;FromSharedGalleryImage&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> <command name="update" version="2018-09-15"> <resource id="/subscriptions/{}/resourcegroups/{}/providers/microsoft.devtestlab/labs/{}/virtualmachines/{}" version="2018-09-15" swagger="mgmt-plane/devtestlabs/ResourceProviders/Microsoft.DevTestLab/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuRGV2VGVzdExhYi9sYWJzL3tsYWJOYW1lfS92aXJ0dWFsbWFjaGluZXMve25hbWV9/V/MjAxOC0wOS0xNQ=="/> <argGroup name=""> <arg type="string" var="$Path.labName" options="lab-name" required="True" idPart="name"> <help short="The name of the lab."/> </arg> <arg type="string" var="$Path.name" options="name n" required="True" idPart="child_name_1"> <help short="The name of the virtual machine."/> </arg> <arg type="ResourceGroupName" var="$Path.resourceGroupName" options="resource-group g" required="True" idPart="resource_group"/> <arg type="SubscriptionId" var="$Path.subscriptionId" options="subscription" required="True" idPart="subscription"/> </argGroup> <argGroup name="LabVirtualMachine"> <arg nullable="True" type="ResourceLocation" var="$labVirtualMachine.location" options="location l" group="LabVirtualMachine"> <help short="The location of the resource."/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.tags" options="tags" group="LabVirtualMachine"> <help short="The tags of the resource."/> <additionalProp> <item nullable="True" type="string"/> </additionalProp> </arg> </argGroup> <argGroup name="Properties"> <arg nullable="True" type="boolean" var="$labVirtualMachine.properties.allowClaim" options="allow-claim" group="Properties"> <help short="Indicates whether another user can take ownership of the virtual machine"/> </arg> <arg nullable="True" type="array<object>" var="$labVirtualMachine.properties.artifacts" options="artifacts" group="Properties"> <help short="The artifacts to be installed on the virtual machine."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].artifactId" options="artifact-id"> <help short="The artifact's identifier."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].artifactTitle" options="artifact-title"> <help short="The artifact's title."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].deploymentStatusMessage" options="deployment-status-message"> <help short="The status message from the deployment."/> </arg> <arg nullable="True" type="dateTime" var="$labVirtualMachine.properties.artifacts[].installTime" options="install-time"> <help short="The time that the artifact starts to install on the virtual machine."/> </arg> <arg nullable="True" type="array<object>" var="$labVirtualMachine.properties.artifacts[].parameters" options="parameters"> <help short="The parameters of the artifact."/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].parameters[].name" options="name"> <help short="The name of the artifact parameter."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].parameters[].value" options="value"> <help short="The value of the artifact parameter."/> </arg> </item> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].status" options="status"> <help short="The status of the artifact."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.artifacts[].vmExtensionStatusMessage" options="vm-extension-status-message"> <help short="The status message from the virtual machine extension."/> </arg> </item> </arg> <arg nullable="True" type="dateTime" var="$labVirtualMachine.properties.createdDate" options="created-date" group="Properties"> <help short="The creation date of the virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.customImageId" options="custom-image-id" group="Properties"> <help short="The custom image identifier of the virtual machine."/> </arg> <arg nullable="True" type="array<object>" var="$labVirtualMachine.properties.dataDiskParameters" options="data-disk-parameters" group="Properties"> <help short="New or existing data disks to attach to the virtual machine after creation"/> <item nullable="True" type="object"> <arg nullable="True" type="object" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions" options="attach-new-data-disk-options"> <help short="Specifies options to attach a new disk to the virtual machine."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskName" options="disk-name"> <help short="The name of the disk to be attached."/> </arg> <arg nullable="True" type="integer32" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskSizeGiB" options="disk-size-gi-b"> <help short="Size of the disk to be attached in Gibibytes."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskType" options="disk-type"> <help short="The storage type for the disk (i.e. Standard, Premium)."/> <enum> <item name="Premium" value="&quot;Premium&quot;"/> <item name="Standard" value="&quot;Standard&quot;"/> <item name="StandardSSD" value="&quot;StandardSSD&quot;"/> </enum> </arg> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.dataDiskParameters[].existingLabDiskId" options="existing-lab-disk-id"> <help short="Specifies the existing lab disk id to attach to virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.dataDiskParameters[].hostCaching" options="host-caching"> <help short="Caching option for a data disk (i.e. None, ReadOnly, ReadWrite)."/> <enum> <item name="None" value="&quot;None&quot;"/> <item name="ReadOnly" value="&quot;ReadOnly&quot;"/> <item name="ReadWrite" value="&quot;ReadWrite&quot;"/> </enum> </arg> </item> </arg> <arg nullable="True" type="boolean" var="$labVirtualMachine.properties.disallowPublicIpAddress" options="disallow-public-ip-address" group="Properties"> <help short="Indicates whether the virtual machine is to be created without a public IP address."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.environmentId" options="environment-id" group="Properties"> <help short="The resource ID of the environment that contains this virtual machine, if any."/> </arg> <arg nullable="True" type="dateTime" var="$labVirtualMachine.properties.expirationDate" options="expiration-date" group="Properties"> <help short="The expiration date for VM."/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.galleryImageReference" options="gallery-image-reference" group="Properties"> <help short="The Microsoft Azure Marketplace image reference of the virtual machine."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.galleryImageReference.offer" options="offer"> <help short="The offer of the gallery image."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.galleryImageReference.osType" options="os-type"> <help short="The OS type of the gallery image."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.galleryImageReference.publisher" options="publisher"> <help short="The publisher of the gallery image."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.galleryImageReference.sku" options="sku"> <help short="The SKU of the gallery image."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.galleryImageReference.version" options="version"> <help short="The version of the gallery image."/> </arg> </arg> <arg nullable="True" type="boolean" var="$labVirtualMachine.properties.isAuthenticationWithSshKey" options="is-authentication-with-ssh-key" group="Properties"> <help short="Indicates whether this virtual machine uses an SSH key for authentication."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.labSubnetName" options="lab-subnet-name" group="Properties"> <help short="The lab subnet name of the virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.labVirtualNetworkId" options="lab-virtual-network-id" group="Properties"> <help short="The lab virtual network identifier of the virtual machine."/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.networkInterface" options="network-interface" group="Properties"> <help short="The network interface properties."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.dnsName" options="dns-name"> <help short="The DNS name."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.privateIpAddress" options="private-ip-address"> <help short="The private IP address."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.publicIpAddress" options="public-ip-address"> <help short="The public IP address."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.publicIpAddressId" options="public-ip-address-id"> <help short="The resource ID of the public IP address."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.rdpAuthority" options="rdp-authority"> <help short="The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol)."/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration" options="shared-public-ip-address-configuration"> <help short="The configuration for sharing a public IP address across multiple virtual machines."/> <arg nullable="True" type="array<object>" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules" options="inbound-nat-rules"> <help short="The incoming NAT rules"/> <item nullable="True" type="object"> <arg nullable="True" type="integer32" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].backendPort" options="backend-port"> <help short="The port to which the external traffic will be redirected."/> </arg> <arg nullable="True" type="integer32" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].frontendPort" options="frontend-port"> <help short="The external endpoint port of the inbound connection. Possible values range between 1 and 65535, inclusive. If unspecified, a value will be allocated automatically."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].transportProtocol" options="transport-protocol"> <help short="The transport protocol for the endpoint."/> <enum> <item name="Tcp" value="&quot;Tcp&quot;"/> <item name="Udp" value="&quot;Udp&quot;"/> </enum> </arg> </item> </arg> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.sshAuthority" options="ssh-authority"> <help short="The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.subnetId" options="subnet-id"> <help short="The resource ID of the sub net."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.networkInterface.virtualNetworkId" options="virtual-network-id"> <help short="The resource ID of the virtual network."/> </arg> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.notes" options="notes" group="Properties"> <help short="The notes of the virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.ownerObjectId" options="owner-object-id" group="Properties"> <help short="The object identifier of the owner of the virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.ownerUserPrincipalName" options="owner-user-principal-name" group="Properties"> <help short="The user principal name of the virtual machine owner."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.password" options="password" group="Properties"> <help short="The password of the virtual machine administrator."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.planId" options="plan-id" group="Properties"> <help short="The id of the plan associated with the virtual machine image"/> </arg> <arg nullable="True" type="array<object>" var="$labVirtualMachine.properties.scheduleParameters" options="schedule-parameters" group="Properties"> <help short="Virtual Machine schedules to be created"/> <item nullable="True" type="object"> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].name" options="name"> <help short="The name of the virtual machine or environment"/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence" options="daily-recurrence" group="Properties"> <help short="If the schedule will occur once each day of the week, specify the daily recurrence."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence.time" options="time"> <help short="The time of day the schedule will occur."/> </arg> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence" options="hourly-recurrence" group="Properties"> <help short="If the schedule will occur multiple times a day, specify the hourly recurrence."/> <arg nullable="True" type="integer32" var="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence.minute" options="minute"> <help short="Minutes of the hour the schedule will run."/> </arg> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings" options="notification-settings" group="Properties"> <help short="Notification settings."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.emailRecipient" options="email-recipient"> <help short="The email recipient to send notifications to (can be a list of semi-colon separated email addresses)."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.notificationLocale" options="notification-locale"> <help short="The locale to use when sending a notification (fallback for unsupported languages is EN)."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.status" options="status"> <help short="If notifications are enabled for this schedule (i.e. Enabled, Disabled)."/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg nullable="True" type="integer32" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.timeInMinutes" options="time-in-minutes"> <help short="Time in minutes before event at which notification will be sent."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.webhookUrl" options="webhook-url"> <help short="The webhook URL to which the notification will be sent."/> </arg> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.status" options="status" group="Properties"> <help short="The status of the schedule (i.e. Enabled, Disabled)"/> <enum> <item name="Disabled" value="&quot;Disabled&quot;"/> <item name="Enabled" value="&quot;Enabled&quot;"/> </enum> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.targetResourceId" options="target-resource-id" group="Properties"> <help short="The resource ID to which the schedule belongs"/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.taskType" options="task-type" group="Properties"> <help short="The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart)."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.timeZoneId" options="time-zone-id" group="Properties"> <help short="The time zone ID (e.g. China Standard Time, Greenland Standard Time, Pacific Standard time, etc.). The possible values for this property can be found in `IReadOnlyCollection<string> TimeZoneConverter.TZConvert.KnownWindowsTimeZoneIds` (https://github.com/mattjohnsonpint/TimeZoneConverter/blob/main/README.md)"/> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence" options="weekly-recurrence" group="Properties"> <help short="If the schedule will occur only some days of the week, specify the weekly recurrence."/> <arg nullable="True" type="string" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.time" options="time"> <help short="The time of the day the schedule will occur."/> </arg> <arg nullable="True" type="array<string>" var="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.weekdays" options="weekdays"> <help short="The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.)."/> <item nullable="True" type="string"/> </arg> </arg> <arg nullable="True" type="object" var="$labVirtualMachine.properties.scheduleParameters[].tags" options="tags"> <help short="The tags of the resource."/> <additionalProp> <item nullable="True" type="string"/> </additionalProp> </arg> </item> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.size" options="size" group="Properties"> <help short="The size of the virtual machine."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.sshKey" options="ssh-key" group="Properties"> <help short="The SSH key of the virtual machine administrator."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.storageType" options="storage-type" group="Properties"> <help short="Storage type to use for virtual machine (i.e. Standard, Premium)."/> </arg> <arg nullable="True" type="string" var="$labVirtualMachine.properties.userName" options="user-name" group="Properties"> <help short="The user name of the virtual machine."/> </arg> </argGroup> <operation operationId="VirtualMachines_Get"> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}"> <request method="get"> <path> <param type="string" name="labName" arg="$Path.labName" required="True"/> <param type="string" name="name" arg="$Path.name" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2018-09-15&quot;"/> </const> </query> </request> <response statusCode="200"> <body> <json var="$Instance"> <schema type="object" cls="LabVirtualMachine_read"> <prop readOnly="True" type="ResourceId" name="id"> <format template="/subscriptions/{}/resourceGroups/{}/providers/Microsoft.DevTestLab/labs/{}/virtualmachines/{}"/> </prop> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="boolean" name="allowClaim"> <default value="false"/> </prop> <prop readOnly="True" type="object" name="applicableSchedule"> <prop readOnly="True" type="string" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="object" name="labVmsShutdown" cls="Schedule_read"> <prop readOnly="True" type="ResourceId" name="id"/> <prop type="ResourceLocation" name="location"/> <prop readOnly="True" type="string" name="name"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop readOnly="True" type="dateTime" name="createdDate"/> <prop type="object" name="dailyRecurrence" cls="DayDetails_read"> <prop type="string" name="time"/> </prop> <prop type="object" name="hourlyRecurrence" cls="HourDetails_read"> <prop type="integer32" name="minute"/> </prop> <prop type="object" name="notificationSettings" cls="NotificationSettings_read"> <prop type="string" name="emailRecipient"/> <prop type="string" name="notificationLocale"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="integer32" name="timeInMinutes"/> <prop type="string" name="webhookUrl"/> </prop> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="object" name="weeklyRecurrence" cls="WeekDetails_read"> <prop type="string" name="time"/> <prop type="array<string>" name="weekdays"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop type="@Schedule_read" name="labVmsStartup"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </prop> <prop readOnly="True" type="object" name="artifactDeploymentStatus"> <prop type="integer32" name="artifactsApplied"/> <prop type="string" name="deploymentStatus"/> <prop type="integer32" name="totalArtifacts"/> </prop> <prop type="array<object>" name="artifacts"> <item type="object"> <prop type="string" name="artifactId"/> <prop type="string" name="artifactTitle"/> <prop type="string" name="deploymentStatusMessage"/> <prop type="dateTime" name="installTime"/> <prop type="array<object>" name="parameters"> <item type="object"> <prop type="string" name="name"/> <prop type="string" name="value"/> </item> </prop> <prop type="string" name="status"/> <prop type="string" name="vmExtensionStatusMessage"/> </item> </prop> <prop readOnly="True" type="string" name="computeId"/> <prop readOnly="True" type="object" name="computeVm"> <prop type="array<string>" name="dataDiskIds"> <item type="string"/> </prop> <prop type="array<object>" name="dataDisks"> <item type="object"> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskUri"/> <prop type="string" name="managedDiskId"/> <prop type="string" name="name"/> </item> </prop> <prop type="string" name="networkInterfaceId"/> <prop type="string" name="osDiskId"/> <prop type="string" name="osType"/> <prop type="array<object>" name="statuses"> <item type="object"> <prop type="string" name="code"/> <prop type="string" name="displayStatus"/> <prop type="string" name="message"/> </item> </prop> <prop type="string" name="vmSize"/> </prop> <prop readOnly="True" type="string" name="createdByUser"/> <prop readOnly="True" type="string" name="createdByUserId"/> <prop type="dateTime" name="createdDate"/> <prop type="string" name="customImageId"/> <prop type="array<object>" name="dataDiskParameters"> <item type="object"> <prop type="object" name="attachNewDataDiskOptions"> <prop type="string" name="diskName"/> <prop type="integer32" name="diskSizeGiB"/> <prop type="string" name="diskType"> <enum> <item value="&quot;Premium&quot;"/> <item value="&quot;Standard&quot;"/> <item value="&quot;StandardSSD&quot;"/> </enum> </prop> </prop> <prop type="string" name="existingLabDiskId"/> <prop type="string" name="hostCaching"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;ReadOnly&quot;"/> <item value="&quot;ReadWrite&quot;"/> </enum> </prop> </item> </prop> <prop type="boolean" name="disallowPublicIpAddress"> <default value="false"/> </prop> <prop type="string" name="environmentId"/> <prop type="dateTime" name="expirationDate"/> <prop readOnly="True" type="string" name="fqdn"/> <prop type="object" name="galleryImageReference"> <prop type="string" name="offer"/> <prop type="string" name="osType"/> <prop type="string" name="publisher"/> <prop type="string" name="sku"/> <prop type="string" name="version"/> </prop> <prop type="boolean" name="isAuthenticationWithSshKey"/> <prop type="string" name="labSubnetName"/> <prop type="string" name="labVirtualNetworkId"/> <prop readOnly="True" type="string" name="lastKnownPowerState"/> <prop type="object" name="networkInterface"> <prop type="string" name="dnsName"/> <prop type="string" name="privateIpAddress"/> <prop type="string" name="publicIpAddress"/> <prop type="string" name="publicIpAddressId"/> <prop type="string" name="rdpAuthority"/> <prop type="object" name="sharedPublicIpAddressConfiguration"> <prop type="array<object>" name="inboundNatRules"> <item type="object"> <prop type="integer32" name="backendPort"/> <prop type="integer32" name="frontendPort"/> <prop type="string" name="transportProtocol"> <enum> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> </item> </prop> </prop> <prop type="string" name="sshAuthority"/> <prop type="string" name="subnetId"/> <prop type="string" name="virtualNetworkId"/> </prop> <prop type="string" name="notes"/> <prop readOnly="True" type="string" name="osType"/> <prop type="string" name="ownerObjectId"> <default value="&quot;dynamicValue&quot;"/> </prop> <prop type="string" name="ownerUserPrincipalName"/> <prop type="string" name="password" secret="True"/> <prop type="string" name="planId"/> <prop readOnly="True" type="string" name="provisioningState"/> <prop type="array<object>" name="scheduleParameters"> <item type="object"> <prop readOnly="True" type="string" name="location"/> <prop type="string" name="name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="@DayDetails_read" name="dailyRecurrence"/> <prop type="@HourDetails_read" name="hourlyRecurrence"/> <prop type="@NotificationSettings_read" name="notificationSettings"/> <prop type="string" name="status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId"/> <prop type="string" name="taskType"/> <prop type="string" name="timeZoneId"/> <prop type="@WeekDetails_read" name="weeklyRecurrence"/> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </item> </prop> <prop type="string" name="size"/> <prop type="string" name="sshKey" secret="True"/> <prop type="string" name="storageType"> <default value="&quot;labStorageType&quot;"/> </prop> <prop readOnly="True" type="string" name="uniqueIdentifier"/> <prop type="string" name="userName"/> <prop readOnly="True" type="string" name="virtualMachineCreationSource"> <enum> <item value="&quot;FromCustomImage&quot;"/> <item value="&quot;FromGalleryImage&quot;"/> <item value="&quot;FromSharedGalleryImage&quot;"/> </enum> </prop> </prop> <prop type="object" name="tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> <prop readOnly="True" type="string" name="type"/> </schema> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <operation> <instanceUpdate ref="$Instance"> <json> <schema type="object" name="labVirtualMachine" required="True" clientFlatten="True"> <prop type="ResourceLocation" name="location" arg="$labVirtualMachine.location"/> <prop type="object" name="properties" required="True" clientFlatten="True"> <prop type="boolean" name="allowClaim" arg="$labVirtualMachine.properties.allowClaim"> <default value="false"/> </prop> <prop type="array<object>" name="artifacts" arg="$labVirtualMachine.properties.artifacts"> <item type="object"> <prop type="string" name="artifactId" arg="$labVirtualMachine.properties.artifacts[].artifactId"/> <prop type="string" name="artifactTitle" arg="$labVirtualMachine.properties.artifacts[].artifactTitle"/> <prop type="string" name="deploymentStatusMessage" arg="$labVirtualMachine.properties.artifacts[].deploymentStatusMessage"/> <prop type="dateTime" name="installTime" arg="$labVirtualMachine.properties.artifacts[].installTime"/> <prop type="array<object>" name="parameters" arg="$labVirtualMachine.properties.artifacts[].parameters"> <item type="object"> <prop type="string" name="name" arg="$labVirtualMachine.properties.artifacts[].parameters[].name"/> <prop type="string" name="value" arg="$labVirtualMachine.properties.artifacts[].parameters[].value"/> </item> </prop> <prop type="string" name="status" arg="$labVirtualMachine.properties.artifacts[].status"/> <prop type="string" name="vmExtensionStatusMessage" arg="$labVirtualMachine.properties.artifacts[].vmExtensionStatusMessage"/> </item> </prop> <prop type="dateTime" name="createdDate" arg="$labVirtualMachine.properties.createdDate"/> <prop type="string" name="customImageId" arg="$labVirtualMachine.properties.customImageId"/> <prop type="array<object>" name="dataDiskParameters" arg="$labVirtualMachine.properties.dataDiskParameters"> <item type="object"> <prop type="object" name="attachNewDataDiskOptions" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions"> <prop type="string" name="diskName" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskName"/> <prop type="integer32" name="diskSizeGiB" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskSizeGiB"/> <prop type="string" name="diskType" arg="$labVirtualMachine.properties.dataDiskParameters[].attachNewDataDiskOptions.diskType"> <enum> <item value="&quot;Premium&quot;"/> <item value="&quot;Standard&quot;"/> <item value="&quot;StandardSSD&quot;"/> </enum> </prop> </prop> <prop type="string" name="existingLabDiskId" arg="$labVirtualMachine.properties.dataDiskParameters[].existingLabDiskId"/> <prop type="string" name="hostCaching" arg="$labVirtualMachine.properties.dataDiskParameters[].hostCaching"> <enum> <item value="&quot;None&quot;"/> <item value="&quot;ReadOnly&quot;"/> <item value="&quot;ReadWrite&quot;"/> </enum> </prop> </item> </prop> <prop type="boolean" name="disallowPublicIpAddress" arg="$labVirtualMachine.properties.disallowPublicIpAddress"> <default value="false"/> </prop> <prop type="string" name="environmentId" arg="$labVirtualMachine.properties.environmentId"/> <prop type="dateTime" name="expirationDate" arg="$labVirtualMachine.properties.expirationDate"/> <prop type="object" name="galleryImageReference" arg="$labVirtualMachine.properties.galleryImageReference"> <prop type="string" name="offer" arg="$labVirtualMachine.properties.galleryImageReference.offer"/> <prop type="string" name="osType" arg="$labVirtualMachine.properties.galleryImageReference.osType"/> <prop type="string" name="publisher" arg="$labVirtualMachine.properties.galleryImageReference.publisher"/> <prop type="string" name="sku" arg="$labVirtualMachine.properties.galleryImageReference.sku"/> <prop type="string" name="version" arg="$labVirtualMachine.properties.galleryImageReference.version"/> </prop> <prop type="boolean" name="isAuthenticationWithSshKey" arg="$labVirtualMachine.properties.isAuthenticationWithSshKey"/> <prop type="string" name="labSubnetName" arg="$labVirtualMachine.properties.labSubnetName"/> <prop type="string" name="labVirtualNetworkId" arg="$labVirtualMachine.properties.labVirtualNetworkId"/> <prop type="object" name="networkInterface" arg="$labVirtualMachine.properties.networkInterface"> <prop type="string" name="dnsName" arg="$labVirtualMachine.properties.networkInterface.dnsName"/> <prop type="string" name="privateIpAddress" arg="$labVirtualMachine.properties.networkInterface.privateIpAddress"/> <prop type="string" name="publicIpAddress" arg="$labVirtualMachine.properties.networkInterface.publicIpAddress"/> <prop type="string" name="publicIpAddressId" arg="$labVirtualMachine.properties.networkInterface.publicIpAddressId"/> <prop type="string" name="rdpAuthority" arg="$labVirtualMachine.properties.networkInterface.rdpAuthority"/> <prop type="object" name="sharedPublicIpAddressConfiguration" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration"> <prop type="array<object>" name="inboundNatRules" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules"> <item type="object"> <prop type="integer32" name="backendPort" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].backendPort"/> <prop type="integer32" name="frontendPort" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].frontendPort"/> <prop type="string" name="transportProtocol" arg="$labVirtualMachine.properties.networkInterface.sharedPublicIpAddressConfiguration.inboundNatRules[].transportProtocol"> <enum> <item value="&quot;Tcp&quot;"/> <item value="&quot;Udp&quot;"/> </enum> </prop> </item> </prop> </prop> <prop type="string" name="sshAuthority" arg="$labVirtualMachine.properties.networkInterface.sshAuthority"/> <prop type="string" name="subnetId" arg="$labVirtualMachine.properties.networkInterface.subnetId"/> <prop type="string" name="virtualNetworkId" arg="$labVirtualMachine.properties.networkInterface.virtualNetworkId"/> </prop> <prop type="string" name="notes" arg="$labVirtualMachine.properties.notes"/> <prop type="string" name="ownerObjectId" arg="$labVirtualMachine.properties.ownerObjectId"> <default value="&quot;dynamicValue&quot;"/> </prop> <prop type="string" name="ownerUserPrincipalName" arg="$labVirtualMachine.properties.ownerUserPrincipalName"/> <prop type="string" name="password" arg="$labVirtualMachine.properties.password" secret="True"/> <prop type="string" name="planId" arg="$labVirtualMachine.properties.planId"/> <prop type="array<object>" name="scheduleParameters" arg="$labVirtualMachine.properties.scheduleParameters"> <item type="object"> <prop type="string" name="name" arg="$labVirtualMachine.properties.scheduleParameters[].name"/> <prop type="object" name="properties" clientFlatten="True"> <prop type="object" name="dailyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence"> <prop type="string" name="time" arg="$labVirtualMachine.properties.scheduleParameters[].properties.dailyRecurrence.time"/> </prop> <prop type="object" name="hourlyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence"> <prop type="integer32" name="minute" arg="$labVirtualMachine.properties.scheduleParameters[].properties.hourlyRecurrence.minute"/> </prop> <prop type="object" name="notificationSettings" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings"> <prop type="string" name="emailRecipient" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.emailRecipient"/> <prop type="string" name="notificationLocale" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.notificationLocale"/> <prop type="string" name="status" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="integer32" name="timeInMinutes" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.timeInMinutes"/> <prop type="string" name="webhookUrl" arg="$labVirtualMachine.properties.scheduleParameters[].properties.notificationSettings.webhookUrl"/> </prop> <prop type="string" name="status" arg="$labVirtualMachine.properties.scheduleParameters[].properties.status"> <default value="&quot;Disabled&quot;"/> <enum> <item value="&quot;Disabled&quot;"/> <item value="&quot;Enabled&quot;"/> </enum> </prop> <prop type="string" name="targetResourceId" arg="$labVirtualMachine.properties.scheduleParameters[].properties.targetResourceId"/> <prop type="string" name="taskType" arg="$labVirtualMachine.properties.scheduleParameters[].properties.taskType"/> <prop type="string" name="timeZoneId" arg="$labVirtualMachine.properties.scheduleParameters[].properties.timeZoneId"/> <prop type="object" name="weeklyRecurrence" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence"> <prop type="string" name="time" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.time"/> <prop type="array<string>" name="weekdays" arg="$labVirtualMachine.properties.scheduleParameters[].properties.weeklyRecurrence.weekdays"> <item type="string"/> </prop> </prop> </prop> <prop type="object" name="tags" arg="$labVirtualMachine.properties.scheduleParameters[].tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </item> </prop> <prop type="string" name="size" arg="$labVirtualMachine.properties.size"/> <prop type="string" name="sshKey" arg="$labVirtualMachine.properties.sshKey" secret="True"/> <prop type="string" name="storageType" arg="$labVirtualMachine.properties.storageType"> <default value="&quot;labStorageType&quot;"/> </prop> <prop type="string" name="userName" arg="$labVirtualMachine.properties.userName"/> </prop> <prop type="object" name="tags" arg="$labVirtualMachine.tags"> <additionalProp> <item type="string"/> </additionalProp> </prop> </schema> </json> </instanceUpdate> </operation> <operation operationId="VirtualMachines_CreateOrUpdate"> <longRunning finalStateVia="azure-async-operation"/> <http path="/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DevTestLab/labs/{labName}/virtualmachines/{name}"> <request method="put"> <path> <param type="string" name="labName" arg="$Path.labName" required="True"/> <param type="string" name="name" arg="$Path.name" required="True"/> <param type="string" name="resourceGroupName" arg="$Path.resourceGroupName" required="True"/> <param type="string" name="subscriptionId" arg="$Path.subscriptionId" required="True"/> </path> <query> <const readOnly="True" const="True" type="string" name="api-version" required="True"> <default value="&quot;2018-09-15&quot;"/> </const> </query> <body> <json ref="$Instance"/> </body> </request> <response statusCode="200 201"> <body> <json var="$Instance"> <schema type="@LabVirtualMachine_read"/> </json> </body> </response> <response isError="True"> <body> <json> <schema type="@ODataV4Format"/> </json> </body> </response> </http> </operation> <output type="object" ref="$Instance" clientFlatten="True"/> </command> </commandGroup> </CodeGen>