Search code examples
azurepowershelldevopsnic

Cannot parse the request - MissingJsonReferenceId : Error while creating NIC using PowerShell Az command


I am using below Az PowerShell command to create the NIC for virtual machine.

  # Create a NIC for the web server VM.
  $nicVMweb = New-AzNetworkInterface -ResourceGroupName $rgName -Location $location `
    -Name $VmFrontendNICCardName -PublicIpAddress $publicipvm1 `
    -NetworkSecurityGroup $nsgfe -Subnet $virtualNetwork.Subnets[0]

Cannot parse the request. StatusCode: 400 ReasonPhrase: Bad Request ErrorCode: InvalidRequestFormat ErrorMessage: Cannot parse the request. Additional details: Code: MissingJsonReferenceId Message: Value for | reference id is missing. Path properties.ipConfigurations[0].properties.subnet. OperationID : 78525e42-a036-460f-10f9-5b993b7ca5e6

Issue Resolved by Below PowerShell

$Subnet = Get-AzVirtualNetwork -Name $virtualNetworkName -ResourceGroupName $rgName
$IPconfig = New-AzNetworkInterfaceIpConfig -Name $VmFrontendIpConfigName -PrivateIpAddressVersion IPv4 -PrivateIpAddress "10.0.0.10" -SubnetId $Subnet.Subnets[0].Id
$nicVMweb = New-AzNetworkInterface -Name $VmFrontendNICCardName -ResourceGroupName $rgName -Location $location -IpConfiguration $IPconfig

What is the issue in first command?


Solution

  • Could not reproduce your issue, your first command works fine on my side.

    $virtualNetwork = Get-AzVirtualNetwork -Name "<vnet-name>" -ResourceGroupName "<group-name>"
    $publicipvm1 = Get-AzPublicIpAddress -ResourceGroupName <group-name> -Name joyvm-ip2
    $nsgfe = Get-AzNetworkSecurityGroup -Name joyvm-nsg -ResourceGroupName <group-name>
    $nicVMweb = New-AzNetworkInterface -ResourceGroupName <group-name> -Location "West US 2" -Name "joyinter" -PublicIpAddress $publicipvm1 -NetworkSecurityGroup $nsgfe -Subnet $virtualNetwork.Subnets[0]
    

    enter image description here

    For this issue, it may be related to the version of Az.Network module, I use the 3.3.0 version, try to update it to the latest version:

    Update-Module -Name Az.Network