I was writting this article here “How to use ARM templates for deployments” and received the result seen in Figure 1.
Figure 1, failed deployment using templates azure arm
When I clicked on the operations details i found the following details.
{
   “error”: {
     “code”: “InvalidParameter”,
     “target”: “osDisk.managedDisk.id”,
     “message”: “Parameter ‘osDisk.managedDisk.id’ is not allowed.”
   }
}
I found on GitHub here “Azure managed disk: osDisk.managedDisk.id is not allowed” that doing the following would resolved the issue.
Replace this:
“managedDisk”: {
   “storageAccountType”: “Premium_LRS”,
   “id”: “[parameters(‘virtualMachines_HCM200_id’)]”
},
with this:
“managedDisk”: {
   “storageAccountType”: “Standard_LRS”
},
I tested this out and it worked for me, at least it moved me one step forward, until I got this one.