I've seen the property "provider-VirtualMachine.LeaseDays" documented on various blogs as a way to set the lease if requesting through REST or ASD. I'm using ASD and calling the RequestCatalogItem through a custom blueprint. Using the command below "VirtualMachine.LeaseDays" does get set as a custom property for the machine, but it doesn't seem to be enforced correctly. Whatever the lease is for the base blueprint that's what gets set on the VM. Anyone found a workaround for this?
inputs.put("provider-VirtualMachine.LeaseDays", new vCACCAFEIntegerLiteral(14).getValue());