The entries under the networks array must reference either clustered or non-clustered resources only. You can either use the map_to_object expression or add count:1 to convert a non-clustered to a clustered resource, or you can remove the count to convert a clustered resource to non-clustered.
Cannot deserialize value of type ArrayList<string> from Array value (token JsonToken.START_ARRAY) at [source: UNKNOWN; byte offset: #UNKNOWN] (through reference chain: com.vmware.admiral.compute.content.TemplateComputeDescription["networks"]->ArrayList[0])
count propertymap_by functionResolving the issue depends on the scenario which caused it:
Network0:type: Cloud.NSX.Networkproperties: deviceIndex: 0 networkType: existing count: 1
map_by function to assign multiple networks to a VM, this should not itself be placed inside a list:Machine0:type: Cloud.Machineproperties: image: ${input.image} flavor: ${input.flavor} networks: - '${map_by( .... )}' networks: '${map_by( .... )}'Once the syntax is amended as above, the duplicated network lines can be removed from the Cloud Template in the yaml editor.