Use defaultValue property sparingly—it is not a good practice to use default values for parameters that do not need default values. Default values make supplying a value to the parameter optional. It is better to use variables for defining default values.
API versions are used for every resource configured in the ARM template. API versions should be statically defined within the resource configuration. Moreover, there are multiple API versions available for each resource. It is important to use the right API version for your requirements.
An API version's value should not be defined as part of the parameters declaration, nor is it recommended to put them in variables.
The next code example shows that the Microsoft.Sql/servers resource is using an API of the 2017-10-01-preview version, although other versions, such as 2017...