Skip to content

Template Definitions

Dashboard Location: N/A (Templates are defined in the NAC data model, not in the Meraki Dashboard)

Reusable Configuration Templates for Network Infrastructure

Section titled “Reusable Configuration Templates for Network Infrastructure”

Template definitions in NAC-Meraki allow network administrators to create named, reusable configuration blocks that can be applied to multiple networks. Instead of repeating identical configuration across every network definition, you define it once as a template and reference it by name wherever needed. When a variable value needs to differ per site — such as a subnet, time zone, or RADIUS server address — you place a ${variable_name} placeholder in the template; the actual value is then supplied in each network’s variables block at deploy time.

NAC-Meraki supports two template types:

  • model — The template body is written directly in YAML within the configuration key. Use this for structured configuration such as SSIDs, VLANs, switch settings, and firewall rules. Variable placeholders (${variable_name}) can appear anywhere within configuration.
  • file — The template body is a separate HCL template file (.tftpl). Use this when the configuration is complex, list-driven, or benefits from HCL template constructs such as for loops and try() functions. The file key points to the .tftpl file path, relative to the data file location.

Both types share the same name identifier and are referenced from networks in the same way via the templates list.

Diagram
NameTypeConstraintMandatoryDefault Value
networksList[networks]No

NameTypeConstraintMandatoryDefault Value
nameStringYes
typeChoicemodel, fileYes
fileStringNo
configurationClass[configuration]No

NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
managedBooleantrue, falseNo
time_zoneStringmin: 1, max: 127No
tagsListString[min: 1, max: 255, regex: ^[A-Za-z0-9._-]+$]No
enrollment_stringStringmin: 1, max: 1024No
notesStringmin: 1, max: 1024No
product_typesListChoice[appliance, camera, cellularGateway, secureConnect, sensor, switch, systemsManager, wireless, wirelessController]No
templatesListStringNo
variablesMapNo
applianceClass[appliance]No
cellular_gatewayClass[cellular_gateway]No
floor_plansList[floor_plans]No
group_policiesList[group_policies]No
netflowClass[netflow]No
settingsClass[settings]No
snmpClass[snmp]No
switchClass[switch]No
switch_stacksList[switch_stacks]No
syslog_serversList[syslog_servers]No
vlan_profilesList[vlan_profiles]No
webhooksClass[webhooks]No
wirelessClass[wireless]No
devicesList[devices]No

appliance (meraki.templates.networks.configuration)

Section titled “appliance (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
connectivity_monitoring_destinationsList[connectivity_monitoring_destinations]No
firewallClass[firewall]No
sdwan_internet_policiesList[sdwan_internet_policies]No
content_filteringClass[content_filtering]No
portsList[ports]No
prefixes_delegated_staticsList[prefixes_delegated_statics]No
rf_profilesList[rf_profiles]No
security_intrusionClass[security_intrusion]No
security_malwareClass[security_malware]No
settingsClass[settings]No
single_lanClass[single_lan]No
ssidsList[ssids]No
static_routesList[static_routes]No
traffic_shapingClass[traffic_shaping]No
vlansList[vlans]No
vpn_bgpClass[vpn_bgp]No
vpn_site_to_site_vpnClass[vpn_site_to_site_vpn]No
warm_spareClass[warm_spare]No

cellular_gateway (meraki.templates.networks.configuration)

Section titled “cellular_gateway (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
connectivity_monitoring_destinationsList[connectivity_monitoring_destinations]No
dhcpClass[dhcp]No
subnet_poolClass[subnet_pool]No
uplink_bandwidth_limitsClass[uplink_bandwidth_limits]No

floor_plans (meraki.templates.networks.configuration)

Section titled “floor_plans (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
centerClass[center]No
bottom_left_cornerClass[bottom_left_corner]No
bottom_right_cornerClass[bottom_right_corner]No
top_left_cornerClass[top_left_corner]No
top_right_cornerClass[top_right_corner]No
floor_numberIntegermin: 1, max: 256No
image_contentsStringmin: 1, max: 100000No

group_policies (meraki.templates.networks.configuration)

Section titled “group_policies (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
schedulingClass[scheduling]No
bandwidthClass[bandwidth]No
firewall_and_traffic_shapingClass[firewall_and_traffic_shaping]No
content_filteringClass[content_filtering]No
splash_auth_settingsChoicebypass, network defaultNo
vlan_taggingClass[vlan_tagging]No
bonjour_forwardingClass[bonjour_forwarding]No

netflow (meraki.templates.networks.configuration)

Section titled “netflow (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
collector_ipIPNo
collector_portIntegermin: 1, max: 65535No
reportingBooleantrue, falseNo
etaBooleantrue, falseNo
eta_destination_portIntegermin: 1, max: 65535No

settings (meraki.templates.networks.configuration)

Section titled “settings (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
local_status_page_enabledBooleantrue, falseNo
secure_portBooleantrue, falseNo
named_vlansBooleantrue, falseNo
remote_status_pageBooleantrue, falseNo
local_status_page_authenticationClass[local_status_page_authentication]No

snmp (meraki.templates.networks.configuration)

Section titled “snmp (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
accessChoicecommunity, none, usersNo
community_stringStringmin: 1, max: 127No
usersList[users]No

switch (meraki.templates.networks.configuration)

Section titled “switch (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
access_control_lists_rulesList[access_control_lists_rules]No
access_policiesList[access_policies]No
alternate_management_interfaceClass[alternate_management_interface]No
dhcp_server_policyClass[dhcp_server_policy]No
dscp_to_cos_mappingsList[dscp_to_cos_mappings]No
link_aggregationsList[link_aggregations]No
mtuClass[mtu]No
port_schedulesList[port_schedules]No
qos_rulesList[qos_rules]No
routing_multicastClass[routing_multicast]No
routing_multicast_rendezvous_pointsList[routing_multicast_rendezvous_points]No
routing_ospfClass[routing_ospf]No
settingsClass[settings]No
storm_controlClass[storm_control]No
stpClass[stp]No

switch_stacks (meraki.templates.networks.configuration)

Section titled “switch_stacks (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
devicesListString[min: 1, max: 127]No
routing_interfacesList[routing_interfaces]No
routing_static_routesList[routing_static_routes]No
routing_interfaces_dhcpClass[routing_interfaces_dhcp]No

syslog_servers (meraki.templates.networks.configuration)

Section titled “syslog_servers (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
hostStringmin: 1, max: 127Yes
portIntegermin: 0, max: 65535Yes
rolesListChoice[Wireless Event log, Appliance Event log, Switch Event log, Air Marshal events, Flows, URLs, IDS alerts, Security events]Yes

vlan_profiles (meraki.templates.networks.configuration)

Section titled “vlan_profiles (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 255Yes
vlan_namesList[vlan_names]Yes
vlan_groupsList[vlan_groups]No
inameStringmin: 1, max: 127No

webhooks (meraki.templates.networks.configuration)

Section titled “webhooks (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
http_serversList[http_servers]No
payload_templatesList[payload_templates]No

wireless (meraki.templates.networks.configuration)

Section titled “wireless (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
ethernet_ports_profiles_set_defaultStringmin: 1, max: 127No
air_marshal_rulesList[air_marshal_rules]No
air_marshal_settingsClass[air_marshal_settings]No
alternate_management_interfaceClass[alternate_management_interface]No
billingClass[billing]No
bluetooth_settingsClass[bluetooth_settings]No
electronic_shelf_labelClass[electronic_shelf_label]No
ethernet_ports_profilesList[ethernet_ports_profiles]No
ethernet_ports_profiles_assignClass[ethernet_ports_profiles_assign]No
rf_profilesList[rf_profiles]No
settingsClass[settings]No
ssidsList[ssids]No

devices (meraki.templates.networks.configuration)

Section titled “devices (meraki.templates.networks.configuration)”
NameTypeConstraintMandatoryDefault Value
serialStringRegex: ^[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}$No
nameStringmin: 1, max: 127No
tagsListString[min: 1, max: 255]No
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No
addressStringmin: 1, max: 1024No
notesStringmin: 1, max: 1024No
move_map_markerBooleantrue, falseNo
floor_plan_nameStringmin: 1, max: 127No
switch_profile_nameStringmin: 1, max: 127No
sensor_commandsChoiceenableDownstreamPower, disableDownstreamPower, cycleDownstreamPower, refreshDataNo
sensor_relationshipsListAny[String[matches: ^[A-Z0-9]{4}-[A-Z0-9]{4}-[A-Z0-9]{4}$] or String[min: 1, max: 127]]No
template_nameStringmin: 1, max: 127No
applianceClass[appliance]No
cellular_simsClass[cellular_sims]No
cellular_gatewayClass[cellular_gateway]No
management_interfaceClass[management_interface]No
switchClass[switch]No
switch_routing_interfacesList[switch_routing_interfaces]No
wirelessClass[wireless]No

connectivity_monitoring_destinations (meraki.templates.networks.configuration.appliance)

Section titled “connectivity_monitoring_destinations (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
ipIPYes
descriptionStringmin: 1, max: 1024No
defaultBooleantrue, falseNo

firewall (meraki.templates.networks.configuration.appliance)

Section titled “firewall (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
settings_spoofing_protection_ip_source_guard_modeChoiceblock, logNo
cellular_firewall_rulesList[cellular_firewall_rules]No
firewalled_servicesList[firewalled_services]No
inbound_cellular_firewall_rulesList[inbound_cellular_firewall_rules]No
inbound_firewall_rulesClass[inbound_firewall_rules]No
l3_firewall_rulesClass[l3_firewall_rules]No
l7_firewall_rulesList[l7_firewall_rules]No
multicast_forwardingClass[multicast_forwarding]No
one_to_many_nat_rulesList[one_to_many_nat_rules]No
one_to_one_nat_rulesList[one_to_one_nat_rules]No
port_forwarding_rulesList[port_forwarding_rules]No

sdwan_internet_policies (meraki.templates.networks.configuration.appliance)

Section titled “sdwan_internet_policies (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
preferred_uplinkChoicebestForVoIP, defaultUplink, loadBalancing, wan1, wan2Yes
fail_over_criterionChoicepoorPerformance, uplinkDownNo
performance_classClass[performance_class]No
traffic_filtersList[traffic_filters]Yes

content_filtering (meraki.templates.networks.configuration.appliance)

Section titled “content_filtering (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
allowed_url_patternsListString[min: 1, max: 1024]No
blocked_url_patternsListString[min: 1, max: 1024]No
blocked_url_categoriesListString[min: 1, max: 1024]No
url_category_list_sizeChoicefullList, topSitesNo

ports (meraki.templates.networks.configuration.appliance)

Section titled “ports (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
port_id_rangesList[port_id_ranges]Yes
enabledBooleantrue, falseNo
drop_untagged_trafficBooleantrue, falseNo
typeChoiceaccess, trunkNo
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
allowed_vlansAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
access_policyChoiceopen, 8021x-radius, mac-radius, hybris-radiusNo

prefixes_delegated_statics (meraki.templates.networks.configuration.appliance)

Section titled “prefixes_delegated_statics (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
prefixStringmin: 1, max: 1024No
originClass[origin]No
descriptionStringmin: 1, max: 1024No
static_delegated_prefix_nameStringmin: 1, max: 127Yes

rf_profiles (meraki.templates.networks.configuration.appliance)

Section titled “rf_profiles (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
two_four_ghz_settingsClass[two_four_ghz_settings]No
five_ghz_settingsClass[five_ghz_settings]No
per_ssid_settingsList[per_ssid_settings]No

security_intrusion (meraki.templates.networks.configuration.appliance)

Section titled “security_intrusion (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
modeChoicedetection, disabled, preventionNo
ids_rulesetsChoicebalanced, connectivity, securityNo
protected_networksClass[protected_networks]No

security_malware (meraki.templates.networks.configuration.appliance)

Section titled “security_malware (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
modeChoicedisabled, enabledYes
allowed_urlsList[allowed_urls]No
allowed_filesList[allowed_files]No

single_lan (meraki.templates.networks.configuration.appliance)

Section titled “single_lan (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
appliance_ipIPNo
ipv6Class[ipv6]No
mandatory_dhcpBooleantrue, falseNo

ssids (meraki.templates.networks.configuration.appliance)

Section titled “ssids (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
numberChoice1, 2, 3, 4No
enabledBooleantrue, falseNo
default_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
auth_modeChoice8021x-meraki, 8021x-radius, open, pskNo
pskStringmin: 1, max: 64No
radius_serversList[radius_servers]No
encryption_modeChoicewep, wpaNo
wpa_encryption_modeChoiceWPA1 and WPA2, WPA2 only, WPA3 Transition Mode, WPA3 onlyNo
visibleBooleantrue, falseNo
dhcp_enforced_deauthenticationBooleantrue, falseNo
dot11wClass[dot11w]No

static_routes (meraki.templates.networks.configuration.appliance)

Section titled “static_routes (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
gateway_ipIPNo
gateway_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

traffic_shaping (meraki.templates.networks.configuration.appliance)

Section titled “traffic_shaping (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
global_bandwidth_limitsClass[global_bandwidth_limits]No
custom_performance_classesList[custom_performance_classes]No
rulesClass[rules]No
uplink_bandwidth_limitsClass[uplink_bandwidth_limits]No
uplink_selectionClass[uplink_selection]No
vpn_exclusionsClass[vpn_exclusions]No

vlans (meraki.templates.networks.configuration.appliance)

Section titled “vlans (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
appliance_ipIPNo
template_vlan_typeChoicesame, uniqueNo
cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No
maskIntegermin: 0, max: 32No
ipv6Class[ipv6]No
dhcp_handlingChoiceDo not respond to DHCP requests, Relay DHCP to another server, Run a DHCP serverNo
dhcp_lease_timeChoice1 day, 1 hour, 1 week, 12 hours, 30 minutes, 4 hoursNo
mandatory_dhcpBooleantrue, falseNo
dhcp_optionsList[dhcp_options]No
dhcp_boot_optionsBooleantrue, falseNo
group_policy_nameStringmin: 1, max: 127No
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
vpn_nat_subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
dhcp_relay_server_ipsListIPNo
dhcp_boot_next_serverIPNo
dhcp_boot_filenameStringmin: 1, max: 127No
fixed_ip_assignmentsList[fixed_ip_assignments]No
reserved_ip_rangesList[reserved_ip_ranges]No
dns_nameserversStringRegex: ^(upstream_dns|google_dns|opendns|custom)$No

vpn_bgp (meraki.templates.networks.configuration.appliance)

Section titled “vpn_bgp (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseYes
as_numberIntegermin: 1, max: 4294967295No
ibgp_hold_timerIntegermin: 12, max: 240No
neighborsList[neighbors]No

vpn_site_to_site_vpn (meraki.templates.networks.configuration.appliance)

Section titled “vpn_site_to_site_vpn (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
modeChoicehub, none, spokeYes
hubsList[hubs]No
subnetsList[subnets]No
subnet_natBooleantrue, falseNo

warm_spare (meraki.templates.networks.configuration.appliance)

Section titled “warm_spare (meraki.templates.networks.configuration.appliance)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseYes
uplink_modeChoicevirtual, publicNo
virtual_ip1IPNo
virtual_ip2IPNo
spare_deviceStringmin: 1, max: 127No

dhcp (meraki.templates.networks.configuration.cellular_gateway)

Section titled “dhcp (meraki.templates.networks.configuration.cellular_gateway)”
NameTypeConstraintMandatoryDefault Value
dhcp_lease_timeChoice30 minutes, 1 hour, 4 hours, 12 hours, 1 day, 1 weekNo
dns_nameserversStringRegex: ^(upstream_dns|google_dns|opendns|custom)$No
dns_custom_nameserversListIPNo

subnet_pool (meraki.templates.networks.configuration.cellular_gateway)

Section titled “subnet_pool (meraki.templates.networks.configuration.cellular_gateway)”
NameTypeConstraintMandatoryDefault Value
maskIntegermin: 0, max: 32No
cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No

Section titled “uplink_bandwidth_limits (meraki.templates.networks.configuration.cellular_gateway)”
NameTypeConstraintMandatoryDefault Value
limit_upIntegermin: 0, max: 1000000No
limit_downIntegermin: 0, max: 1000000No

center (meraki.templates.networks.configuration.floor_plans)

Section titled “center (meraki.templates.networks.configuration.floor_plans)”
NameTypeConstraintMandatoryDefault Value
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No

bottom_left_corner (meraki.templates.networks.configuration.floor_plans)

Section titled “bottom_left_corner (meraki.templates.networks.configuration.floor_plans)”
NameTypeConstraintMandatoryDefault Value
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No

bottom_right_corner (meraki.templates.networks.configuration.floor_plans)

Section titled “bottom_right_corner (meraki.templates.networks.configuration.floor_plans)”
NameTypeConstraintMandatoryDefault Value
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No

top_left_corner (meraki.templates.networks.configuration.floor_plans)

Section titled “top_left_corner (meraki.templates.networks.configuration.floor_plans)”
NameTypeConstraintMandatoryDefault Value
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No

top_right_corner (meraki.templates.networks.configuration.floor_plans)

Section titled “top_right_corner (meraki.templates.networks.configuration.floor_plans)”
NameTypeConstraintMandatoryDefault Value
latNumbermin: -90, max: 90No
lngNumbermin: -180, max: 180No

scheduling (meraki.templates.networks.configuration.group_policies)

Section titled “scheduling (meraki.templates.networks.configuration.group_policies)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
mondayClass[monday]No
tuesdayClass[tuesday]No
wednesdayClass[wednesday]No
thursdayClass[thursday]No
fridayClass[friday]No
saturdayClass[saturday]No
sundayClass[sunday]No

bandwidth (meraki.templates.networks.configuration.group_policies)

Section titled “bandwidth (meraki.templates.networks.configuration.group_policies)”
NameTypeConstraintMandatoryDefault Value
settingsChoicecustom, ignore, network defaultNo
bandwidth_limitsClass[bandwidth_limits]No

firewall_and_traffic_shaping (meraki.templates.networks.configuration.group_policies)

Section titled “firewall_and_traffic_shaping (meraki.templates.networks.configuration.group_policies)”
NameTypeConstraintMandatoryDefault Value
settingsChoicecustom, ignore, network defaultNo
traffic_shaping_rulesList[traffic_shaping_rules]No
l3_firewall_rulesList[l3_firewall_rules]No
l7_firewall_rulesList[l7_firewall_rules]No

vlan_tagging (meraki.templates.networks.configuration.group_policies)

Section titled “vlan_tagging (meraki.templates.networks.configuration.group_policies)”
NameTypeConstraintMandatoryDefault Value
settingsChoicecustom, ignore, network defaultNo
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

bonjour_forwarding (meraki.templates.networks.configuration.group_policies)

Section titled “bonjour_forwarding (meraki.templates.networks.configuration.group_policies)”
NameTypeConstraintMandatoryDefault Value
settingsChoicecustom, ignore, network defaultNo
rulesList[rules]No

local_status_page_authentication (meraki.templates.networks.configuration.settings)

Section titled “local_status_page_authentication (meraki.templates.networks.configuration.settings)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
usernameStringmin: 1, max: 127No
passwordStringmin: 14, max: 64, regex: ^(?=.*[0-9])(?=.*[A-Z])(?=.*[a-z])(?=.*[^A-Za-z0-9]).{14,64}$No

users (meraki.templates.networks.configuration.snmp)

Section titled “users (meraki.templates.networks.configuration.snmp)”
NameTypeConstraintMandatoryDefault Value
usernameStringmin: 1, max: 127Yes
passphraseStringmin: 1, max: 127Yes

access_control_lists_rules (meraki.templates.networks.configuration.switch)

Section titled “access_control_lists_rules (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
commentStringmin: 1, max: 127No
policyChoiceallow, denyYes
ip_versionChoiceany, ipv4, ipv6No
protocolChoiceany, tcp, udpYes
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
source_cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No
source_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
destination_cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No
destination_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3

access_policies (meraki.templates.networks.configuration.switch)

Section titled “access_policies (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
radius_serversList[radius_servers]No
radiusClass[radius]No
guest_port_bouncingBooleantrue, falseNo
radius_accounting_serversList[radius_accounting_servers]No
radius_group_attributeChoice“, 11No
host_modeChoiceMulti-Auth, Multi-Domain, Multi-Host, Single-HostNo
access_policy_typeChoice802.1x, Hybrid authentication, MAC authentication bypassNo
increase_access_speedBooleantrue, falseNo
guest_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
voice_vlan_clientsBooleantrue, falseNo
url_redirect_walled_garden_rangesListString[min: 1, max: 1024]No
radius_testingBooleantrue, falseNo
radius_coa_supportBooleantrue, falseNo
radius_accountingBooleantrue, falseNo
url_redirect_walled_gardenBooleantrue, falseNo
dot1x_control_directionChoiceboth, inboundNo

alternate_management_interface (meraki.templates.networks.configuration.switch)

Section titled “alternate_management_interface (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
protocolsListChoice[radius, snmp, syslog]No
switchesList[switches]No

dhcp_server_policy (meraki.templates.networks.configuration.switch)

Section titled “dhcp_server_policy (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
default_policyChoiceallow, blockNo
allowed_serversListMACNo
blocked_serversListMACNo
arp_inspectionBooleantrue, falseNo
alerts_emailBooleantrue, falseNo
arp_inspection_trusted_serversList[arp_inspection_trusted_servers]No

dscp_to_cos_mappings (meraki.templates.networks.configuration.switch)

Section titled “dscp_to_cos_mappings (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
dscpIntegermin: 0, max: 63Yes
cosIntegermin: 0, max: 7Yes
titleStringmin: 1, max: 127No

Section titled “link_aggregations (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
switch_portsList[switch_ports]No
switch_profile_portsList[switch_profile_ports]No
link_aggregation_nameStringmin: 1, max: 127Yes

mtu (meraki.templates.networks.configuration.switch)

Section titled “mtu (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
default_mtu_sizeIntegermin: 1, max: 9578No
overridesList[overrides]No

port_schedules (meraki.templates.networks.configuration.switch)

Section titled “port_schedules (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
port_scheduleClass[port_schedule]No

qos_rules (meraki.templates.networks.configuration.switch)

Section titled “qos_rules (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
protocolChoiceANY, TCP, UDPNo
dscpIntegermin: -1, max: 63No
source_portIntegermin: 0, max: 65535No
source_port_rangeStringRegex: ^([1-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])-(\d|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$No
destination_portIntegermin: 0, max: 65535No
destination_port_rangeStringRegex: ^([1-9]|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])-(\d|[1-9]\d{1,3}|[1-5]\d{4}|6[0-4]\d{3}|65[0-4]\d{2}|655[0-2]\d|6553[0-5])$No
qos_rule_nameStringmin: 1, max: 127Yes

routing_multicast (meraki.templates.networks.configuration.switch)

Section titled “routing_multicast (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
default_settingsClass[default_settings]No
overridesList[overrides]No

routing_multicast_rendezvous_points (meraki.templates.networks.configuration.switch)

Section titled “routing_multicast_rendezvous_points (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
interface_ipIPYes
multicast_groupAnyIP or String[matches: [Aa]ny]Yes
rendezvous_point_nameStringmin: 1, max: 127Yes

routing_ospf (meraki.templates.networks.configuration.switch)

Section titled “routing_ospf (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
hello_timer_in_secondsIntegermin: 1, max: 65535No
dead_timer_in_secondsIntegermin: 1, max: 65535No
areasList[areas]No
v3Class[v3]No
md5_authentication_keyClass[md5_authentication_key]No
md5_authenticationBooleantrue, falseNo

storm_control (meraki.templates.networks.configuration.switch)

Section titled “storm_control (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
broadcast_thresholdIntegermin: 1, max: 100No
multicast_thresholdIntegermin: 1, max: 100No
unknown_unicast_thresholdIntegermin: 1, max: 100No
treat_these_traffic_types_as_one_thresholdListChoice[broadcast, multicast]No

stp (meraki.templates.networks.configuration.switch)

Section titled “stp (meraki.templates.networks.configuration.switch)”
NameTypeConstraintMandatoryDefault Value
stp_bridge_priorityList[stp_bridge_priority]No
rstpBooleantrue, falseNo

routing_interfaces (meraki.templates.networks.configuration.switch_stacks)

Section titled “routing_interfaces (meraki.templates.networks.configuration.switch_stacks)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
interface_ipIPNo
multicast_routingChoiceIGMP snooping querier, disabled, enabledNo
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
default_gatewayIPNo
static_v4_dns1IPNo
static_v4_dns2IPNo
uplink_v4Booleantrue, falseNo
uplink_v6Booleantrue, falseNo
ospf_settingsClass[ospf_settings]No
ipv6Class[ipv6]No
dhcpClass[dhcp]No

routing_static_routes (meraki.templates.networks.configuration.switch_stacks)

Section titled “routing_static_routes (meraki.templates.networks.configuration.switch_stacks)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
next_hop_ipIPNo
advertise_via_ospfBooleantrue, falseNo
prefer_over_ospf_routesBooleantrue, falseNo
management_next_hopIPNo

routing_interfaces_dhcp (meraki.templates.networks.configuration.switch_stacks)

Section titled “routing_interfaces_dhcp (meraki.templates.networks.configuration.switch_stacks)”
NameTypeConstraintMandatoryDefault Value
dhcp_modeChoicedhcpDisabled, dhcpRelay, dhcpServerNo
dhcp_relay_server_ipsListIPNo
dhcp_lease_timeChoice1 day, 1 hour, 1 week, 12 hours, 30 minutes, 4 hoursNo
dns_nameservers_optionChoicecustom, googlePublicDns, openDnsNo
dns_custom_nameserversListIPNo
boot_next_serverIPNo
boot_file_nameStringmin: 1, max: 127No
dhcp_optionsList[dhcp_options]No
reserved_ip_rangesList[reserved_ip_ranges]No
fixed_ip_assignmentsList[fixed_ip_assignments]No
boot_optionsBooleantrue, falseNo

vlan_names (meraki.templates.networks.configuration.vlan_profiles)

Section titled “vlan_names (meraki.templates.networks.configuration.vlan_profiles)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 32Yes
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
adaptive_policy_groupAnyInteger[min: 0, max: 65535] or String[match: `^(6553[0-5]655[0-2][0-9]65[0-4][0-9]2

vlan_groups (meraki.templates.networks.configuration.vlan_profiles)

Section titled “vlan_groups (meraki.templates.networks.configuration.vlan_profiles)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 32Yes
vlan_idsAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

http_servers (meraki.templates.networks.configuration.webhooks)

Section titled “http_servers (meraki.templates.networks.configuration.webhooks)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
urlStringmin: 1, max: 1024No
shared_secretStringmin: 1, max: 1024No
payload_templateClass[payload_template]No

payload_templates (meraki.templates.networks.configuration.webhooks)

Section titled “payload_templates (meraki.templates.networks.configuration.webhooks)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
bodyStringmin: 1, max: 4096No
body_fileStringmin: 1, max: 4096No
headersList[headers]No
headers_fileStringmin: 1, max: 4096No

air_marshal_rules (meraki.templates.networks.configuration.wireless)

Section titled “air_marshal_rules (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
typeChoicealert, allow, blockNo
matchClass[match]No
rule_nameStringmin: 1, max: 127Yes

air_marshal_settings (meraki.templates.networks.configuration.wireless)

Section titled “air_marshal_settings (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
default_policyChoiceallow, blockYes

billing (meraki.templates.networks.configuration.wireless)

Section titled “billing (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
currencyStringmin: 1, max: 3No
plansList[plans]No

bluetooth_settings (meraki.templates.networks.configuration.wireless)

Section titled “bluetooth_settings (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
uuidStringRegex: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{3,4}-[0-9a-fA-F]{12}$No
major_minor_assignment_modeChoiceNon-unique, UniqueNo
majorIntegermin: 0, max: 31No
minorIntegermin: 0, max: 63No
scanningBooleantrue, falseNo
advertisingBooleantrue, falseNo

electronic_shelf_label (meraki.templates.networks.configuration.wireless)

Section titled “electronic_shelf_label (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
hostnameStringmin: 1, max: 127No
enabledBooleantrue, falseNo

ethernet_ports_profiles (meraki.templates.networks.configuration.wireless)

Section titled “ethernet_ports_profiles (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
portsList[ports]No
usb_portsList[usb_ports]No

ethernet_ports_profiles_assign (meraki.templates.networks.configuration.wireless)

Section titled “ethernet_ports_profiles_assign (meraki.templates.networks.configuration.wireless)”
NameTypeConstraintMandatoryDefault Value
devicesListString[min: 1, max: 127]Yes
profile_nameStringmin: 1, max: 127Yes

cellular_sims (meraki.templates.networks.configuration.devices)

Section titled “cellular_sims (meraki.templates.networks.configuration.devices)”
NameTypeConstraintMandatoryDefault Value
simsList[sims]No
sim_orderingListChoice[sim1, sim2, sim3]No
sim_failoverClass[sim_failover]No

management_interface (meraki.templates.networks.configuration.devices)

Section titled “management_interface (meraki.templates.networks.configuration.devices)”
NameTypeConstraintMandatoryDefault Value
wan1Class[wan1]No
wan2Class[wan2]No
lan_ipClass[lan_ip]No

switch_routing_interfaces (meraki.templates.networks.configuration.devices)

Section titled “switch_routing_interfaces (meraki.templates.networks.configuration.devices)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
subnetStringRegex: ^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\/([1-9]|[12][0-9]|3[0-2])$No
interface_ipIPNo
multicast_routingChoiceIGMP snooping querier, disabled, enabledNo
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
default_gatewayIPNo
static_v4_dns1IPNo
static_v4_dns2IPNo
uplink_v4Booleantrue, falseNo
uplink_v6Booleantrue, falseNo
ospf_settingsClass[ospf_settings]No
ipv6Class[ipv6]No
dhcpClass[dhcp]No

cellular_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “cellular_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
commentStringmin: 1, max: 127No
policyChoiceallow, denyYes
protocolChoiceany, icmp, icmp6, tcp, udpYes
source_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
source_cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])|([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}(\/\d{1,3})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])|([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}(\/\d{1,3})?))*$No
destination_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
destination_cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])|([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}(\/\d{1,3})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])|([0-9a-fA-F]{0,4}:){2,7}[0-9a-fA-F]{0,4}(\/\d{1,3})?))*$No
source_policy_objectsListString[min: 1, max: 127]No
source_policy_object_groupsListString[min: 1, max: 127]No
destination_policy_objectsListString[min: 1, max: 127]No
destination_policy_object_groupsListString[min: 1, max: 127]No
source_vlansList[source_vlans]No
destination_vlansList[destination_vlans]No
syslogBooleantrue, falseNo

firewalled_services (meraki.templates.networks.configuration.appliance.firewall)

Section titled “firewalled_services (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
service_nameStringmin: 1, max: 127Yes
accessChoiceblocked, restricted, unrestrictedYes
allowed_ipsListAny[IP or String[matches: [Aa]ny]]No

inbound_cellular_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “inbound_cellular_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
commentStringmin: 1, max: 127No
policyChoiceallow, denyYes
protocolChoiceany, icmp, icmp6, tcp, udpYes
source_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
source_cidrStringRegex: ^(?i:any|(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,7}:|(?:[0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,5}(?::[0-9a-fA-F]{1,4}){1,2}|(?:[0-9a-fA-F]{1,4}:){1,4}(?::[0-9a-fA-F]{1,4}){1,3}|(?:[0-9a-fA-F]{1,4}:){1,3}(?::[0-9a-fA-F]{1,4}){1,4}|(?:[0-9a-fA-F]{1,4}:){1,2}(?::[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:(?::[0-9a-fA-F]{1,4}){1,6}|:(?::[0-9a-fA-F]{1,4}){1,7}|::)(?:\d{1,3})?|(\d{1,3}\.){3}\d{1,3}(\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])$No
destination_portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
destination_cidrStringRegex: ^(?i:any|(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,7}:|(?:[0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,5}(?::[0-9a-fA-F]{1,4}){1,2}|(?:[0-9a-fA-F]{1,4}:){1,4}(?::[0-9a-fA-F]{1,4}){1,3}|(?:[0-9a-fA-F]{1,4}:){1,3}(?::[0-9a-fA-F]{1,4}){1,4}|(?:[0-9a-fA-F]{1,4}:){1,2}(?::[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:(?::[0-9a-fA-F]{1,4}){1,6}|:(?::[0-9a-fA-F]{1,4}){1,7}|::)(?:\d{1,3})?|(\d{1,3}\.){3}\d{1,3}(\d{1,2})?|VLAN\((?:[1-9]|[1-9]\d|[1-9]\d{2}|[1-3]\d{3}|40[0-8]\d|409[0-4])\)\.(?:\*|[1-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-4])$No
source_vlansList[source_vlans]No
destination_vlansList[destination_vlans]No
syslogBooleantrue, falseNo

inbound_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “inbound_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
rulesList[rules]No
syslog_default_ruleBooleantrue, falseNo

l3_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “l3_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
rulesList[rules]No
syslog_default_ruleBooleantrue, falseNo

l7_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “l7_firewall_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
policyChoicedenyNo
typeChoiceapplication, applicationCategory, host, ipRange, port, blockedCountries, allowedCountriesNo
valueStringmin: 1, max: 127No
value_countriesListString[min: 1, max: 127]No

multicast_forwarding (meraki.templates.networks.configuration.appliance.firewall)

Section titled “multicast_forwarding (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
rulesList[rules]Yes

one_to_many_nat_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “one_to_many_nat_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
public_ipIPYes
uplinkStringRegex: ^internet\d+$Yes
port_rulesList[port_rules]Yes

one_to_one_nat_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “one_to_one_nat_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
public_ipIPNo
lan_ipIPYes
uplinkStringRegex: ^internet\d+$No
allowed_inboundList[allowed_inbound]No

port_forwarding_rules (meraki.templates.networks.configuration.appliance.firewall)

Section titled “port_forwarding_rules (meraki.templates.networks.configuration.appliance.firewall)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
lan_ipIPYes
uplinkChoiceboth, internet1, internet2, internet3No
public_portAnyInteger[min: 1, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
local_portAnyInteger[min: 1, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
allowed_ipsListAny[IP or String[matches: [Aa]ny]]Yes
protocolChoicetcp, udpYes

performance_class (meraki.templates.networks.configuration.appliance.sdwan_internet_policies)

Section titled “performance_class (meraki.templates.networks.configuration.appliance.sdwan_internet_policies)”
NameTypeConstraintMandatoryDefault Value
typeChoicebuiltin, customNo
builtin_performance_class_nameChoiceVoIPNo
custom_performance_class_nameStringNo

traffic_filters (meraki.templates.networks.configuration.appliance.sdwan_internet_policies)

Section titled “traffic_filters (meraki.templates.networks.configuration.appliance.sdwan_internet_policies)”
NameTypeConstraintMandatoryDefault Value
typeChoiceapplication, custom, majorApplicationYes
valueClass[value]Yes

port_id_ranges (meraki.templates.networks.configuration.appliance.ports)

Section titled “port_id_ranges (meraki.templates.networks.configuration.appliance.ports)”
NameTypeConstraintMandatoryDefault Value
fromAnyInteger[min: 1, max: 24] or String[matches: ^\d{1,3}$]Yes
toAnyInteger[min: 1, max: 24] or String[matches: ^\d{1,3}$]Yes

origin (meraki.templates.networks.configuration.appliance.prefixes_delegated_statics)

Section titled “origin (meraki.templates.networks.configuration.appliance.prefixes_delegated_statics)”
NameTypeConstraintMandatoryDefault Value
typeChoiceindependent, internetNo
interfacesListString[min: 1, max: 10]No

two_four_ghz_settings (meraki.templates.networks.configuration.appliance.rf_profiles)

Section titled “two_four_ghz_settings (meraki.templates.networks.configuration.appliance.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
min_bitrateChoice1, 2, 5.5, 6, 9, 11, 12, 18, 24, 36, 48, 54No
axBooleantrue, falseNo

five_ghz_settings (meraki.templates.networks.configuration.appliance.rf_profiles)

Section titled “five_ghz_settings (meraki.templates.networks.configuration.appliance.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
min_bitrateChoice6, 9, 12, 18, 24, 36, 48, 54No
axBooleantrue, falseNo

per_ssid_settings (meraki.templates.networks.configuration.appliance.rf_profiles)

Section titled “per_ssid_settings (meraki.templates.networks.configuration.appliance.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
band_operation_modeChoice2.4ghz, 5ghz, 6ghz, dual, multiNo
band_steeringBooleantrue, falseNo
ssid_nameStringmin: 1, max: 127Yes

protected_networks (meraki.templates.networks.configuration.appliance.security_intrusion)

Section titled “protected_networks (meraki.templates.networks.configuration.appliance.security_intrusion)”
NameTypeConstraintMandatoryDefault Value
use_defaultBooleantrue, falseNo
included_cidrListStringNo
excluded_cidrListStringNo

allowed_urls (meraki.templates.networks.configuration.appliance.security_malware)

Section titled “allowed_urls (meraki.templates.networks.configuration.appliance.security_malware)”
NameTypeConstraintMandatoryDefault Value
urlStringmin: 1, max: 1024Yes
commentStringmin: 1, max: 127Yes

allowed_files (meraki.templates.networks.configuration.appliance.security_malware)

Section titled “allowed_files (meraki.templates.networks.configuration.appliance.security_malware)”
NameTypeConstraintMandatoryDefault Value
sha256Stringmin: 1, max: 1024Yes
commentStringmin: 1, max: 127Yes

dynamic_dns (meraki.templates.networks.configuration.appliance.settings)

Section titled “dynamic_dns (meraki.templates.networks.configuration.appliance.settings)”
NameTypeConstraintMandatoryDefault Value
prefixStringmin: 1, max: 1024No
enabledBooleantrue, falseNo

ipv6 (meraki.templates.networks.configuration.appliance.single_lan)

Section titled “ipv6 (meraki.templates.networks.configuration.appliance.single_lan)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
prefix_assignmentsList[prefix_assignments]No

radius_servers (meraki.templates.networks.configuration.appliance.ssids)

Section titled “radius_servers (meraki.templates.networks.configuration.appliance.ssids)”
NameTypeConstraintMandatoryDefault Value
hostStringmin: 1, max: 127No
portIntegermin: 0, max: 65535No
secretStringmin: 1, max: 127No

dot11w (meraki.templates.networks.configuration.appliance.ssids)

Section titled “dot11w (meraki.templates.networks.configuration.appliance.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
requiredBooleantrue, falseNo

global_bandwidth_limits (meraki.templates.networks.configuration.appliance.traffic_shaping)

Section titled “global_bandwidth_limits (meraki.templates.networks.configuration.appliance.traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
limit_upIntegermin: 0, max: 1000000No
limit_downIntegermin: 0, max: 1000000No

custom_performance_classes (meraki.templates.networks.configuration.appliance.traffic_shaping)

Section titled “custom_performance_classes (meraki.templates.networks.configuration.appliance.traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
max_latencyIntegermin: 1, max: 1000No
max_jitterIntegermin: 1, max: 1000No
max_loss_percentageIntegermin: 1, max: 100No

rules (meraki.templates.networks.configuration.appliance.traffic_shaping)

Section titled “rules (meraki.templates.networks.configuration.appliance.traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
rulesList[rules]No
default_rulesBooleantrue, falseNo

Section titled “uplink_selection (meraki.templates.networks.configuration.appliance.traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
default_uplinkChoicewan1, wan2No
wan_traffic_uplink_preferencesList[wan_traffic_uplink_preferences]No
vpn_traffic_uplink_preferencesList[vpn_traffic_uplink_preferences]No
active_active_auto_vpnBooleantrue, falseNo
load_balancingBooleantrue, falseNo
failover_and_failback_immediateBooleantrue, falseNo

vpn_exclusions (meraki.templates.networks.configuration.appliance.traffic_shaping)

Section titled “vpn_exclusions (meraki.templates.networks.configuration.appliance.traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
customList[custom]No
major_applicationsListString[min: 1, max: 127]No

dhcp_options (meraki.templates.networks.configuration.appliance.vlans)

Section titled “dhcp_options (meraki.templates.networks.configuration.appliance.vlans)”
NameTypeConstraintMandatoryDefault Value
codeStringRegex: ^([2-9]|1[0-9][0-9]?|2[0-9]|2[0-5][0-4]|[3-9][0-9])$Yes
typeChoicehex, integer, ip, textYes
valueStringmin: 1, max: 127Yes

fixed_ip_assignments (meraki.templates.networks.configuration.appliance.vlans)

Section titled “fixed_ip_assignments (meraki.templates.networks.configuration.appliance.vlans)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
macMACYes
ipIPYes

reserved_ip_ranges (meraki.templates.networks.configuration.appliance.vlans)

Section titled “reserved_ip_ranges (meraki.templates.networks.configuration.appliance.vlans)”
NameTypeConstraintMandatoryDefault Value
startIPYes
endIPYes
commentStringmin: 1, max: 127Yes

neighbors (meraki.templates.networks.configuration.appliance.vpn_bgp)

Section titled “neighbors (meraki.templates.networks.configuration.appliance.vpn_bgp)”
NameTypeConstraintMandatoryDefault Value
ipIPNo
ipv6IPNo
remote_as_numberIntegermin: 1, max: 4294967295Yes
receive_limitIntegermin: 0, max: 2147483647No
allow_transitBooleantrue, falseNo
ebgp_hold_timerIntegermin: 12, max: 240Yes
ebgp_multihopIntegermin: 1, max: 255Yes
source_interfaceStringmin: 1, max: 10No
next_hop_ipIPNo
ttl_securityBooleantrue, falseNo
passwordStringmin: 5, max: 64No

hubs (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn)

Section titled “hubs (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn)”
NameTypeConstraintMandatoryDefault Value
use_default_routeBooleantrue, falseNo
hub_network_nameStringmin: 1, max: 127Yes

subnets (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn)

Section titled “subnets (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn)”
NameTypeConstraintMandatoryDefault Value
local_subnetStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$Yes
use_vpnBooleantrue, falseNo
natClass[nat]No

monday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “monday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

tuesday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “tuesday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

wednesday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “wednesday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

thursday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “thursday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

friday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “friday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

saturday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “saturday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

sunday (meraki.templates.networks.configuration.group_policies.scheduling)

Section titled “sunday (meraki.templates.networks.configuration.group_policies.scheduling)”
NameTypeConstraintMandatoryDefault Value
activeBooleantrue, falseNo
fromStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No
toStringRegex: ^(?:0:00|0:30|1:00|1:30|2:00|2:30|3:00|3:30|4:00|4:30|5:00|5:30|6:00|6:30|7:00|7:30|8:00|8:30|9:00|9:30|00:00|00:30|01:00|01:30|02:00|02:30|03:00|03:30|04:00|04:30|05:00|05:30|06:00|06:30|07:00|07:30|08:00|08:30|09:00|09:30|10:00|10:30|11:00|11:30|12:00|12:30|13:00|13:30|14:00|14:30|15:00|15:30|16:00|16:30|17:00|17:30|18:00|18:30|19:00|19:30|20:00|20:30|21:00|21:30|22:00|22:30|23:00|23:30|24:00)$No

bandwidth_limits (meraki.templates.networks.configuration.group_policies.bandwidth)

Section titled “bandwidth_limits (meraki.templates.networks.configuration.group_policies.bandwidth)”
NameTypeConstraintMandatoryDefault Value
limit_upIntegermin: 0, max: 1000000No
limit_downIntegermin: 0, max: 1000000No

traffic_shaping_rules (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping)

Section titled “traffic_shaping_rules (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping)”
NameTypeConstraintMandatoryDefault Value
definitionsList[definitions]Yes
per_client_bandwidth_limitsClass[per_client_bandwidth_limits]No
dscp_tag_valueIntegermin: 0, max: 63No
pcp_tag_valueIntegermin: 0, max: 7No
priorityChoicelow, normal, highNo

allowed_url_patterns (meraki.templates.networks.configuration.group_policies.content_filtering)

Section titled “allowed_url_patterns (meraki.templates.networks.configuration.group_policies.content_filtering)”
NameTypeConstraintMandatoryDefault Value
settingsChoiceappend, network default, overrideNo
patternsListString[min: 1, max: 1024]No

blocked_url_patterns (meraki.templates.networks.configuration.group_policies.content_filtering)

Section titled “blocked_url_patterns (meraki.templates.networks.configuration.group_policies.content_filtering)”
NameTypeConstraintMandatoryDefault Value
settingsChoiceappend, network default, overrideNo
patternsListString[min: 1, max: 1024]No

blocked_url_categories (meraki.templates.networks.configuration.group_policies.content_filtering)

Section titled “blocked_url_categories (meraki.templates.networks.configuration.group_policies.content_filtering)”
NameTypeConstraintMandatoryDefault Value
settingsChoiceappend, network default, overrideNo
categoriesListString[min: 1, max: 127]No

radius (meraki.templates.networks.configuration.switch.access_policies)

Section titled “radius (meraki.templates.networks.configuration.switch.access_policies)”
NameTypeConstraintMandatoryDefault Value
critical_authClass[critical_auth]No
failed_auth_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
re_authentication_intervalIntegermin: 1, max: 2147483647No
cacheClass[cache]No

radius_accounting_servers (meraki.templates.networks.configuration.switch.access_policies)

Section titled “radius_accounting_servers (meraki.templates.networks.configuration.switch.access_policies)”
NameTypeConstraintMandatoryDefault Value
hostStringmin: 1, max: 127No
portIntegermin: 0, max: 65535No
secretStringmin: 1, max: 127No
organization_radius_server_nameStringmin: 1, max: 127No

switches (meraki.templates.networks.configuration.switch.alternate_management_interface)

Section titled “switches (meraki.templates.networks.configuration.switch.alternate_management_interface)”
NameTypeConstraintMandatoryDefault Value
alternate_management_ipIPYes
subnet_maskStringRegex: ^(255|254|252|248|240|224|192|128|0+)(\.0|\.128|\.192|\.224|\.240|\.248|\.252|\.254|\.255){0,3}$No
gatewayIPNo
deviceStringmin: 1, max: 127Yes

arp_inspection_trusted_servers (meraki.templates.networks.configuration.switch.dhcp_server_policy)

Section titled “arp_inspection_trusted_servers (meraki.templates.networks.configuration.switch.dhcp_server_policy)”
NameTypeConstraintMandatoryDefault Value
macMACNo
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
ipv4_addressIPNo
trusted_server_nameStringmin: 1, max: 127Yes

Section titled “switch_ports (meraki.templates.networks.configuration.switch.link_aggregations)”
NameTypeConstraintMandatoryDefault Value
port_idAnyInteger[min: 1, max: 48] or String[matches: (\d{1,3})]Yes
deviceStringmin: 1, max: 127Yes

Section titled “switch_profile_ports (meraki.templates.networks.configuration.switch.link_aggregations)”
NameTypeConstraintMandatoryDefault Value
profileStringmin: 1, max: 127Yes
port_idAnyInteger[min: 1, max: 48] or String[matches: (\d{1,3})]Yes

overrides (meraki.templates.networks.configuration.switch.mtu)

Section titled “overrides (meraki.templates.networks.configuration.switch.mtu)”
NameTypeConstraintMandatoryDefault Value
switchesListString[min: 1, max: 127]No
switch_profilesListString[min: 1, max: 127]No
mtu_sizeIntegermin: 1, max: 9578Yes

port_schedule (meraki.templates.networks.configuration.switch.port_schedules)

Section titled “port_schedule (meraki.templates.networks.configuration.switch.port_schedules)”
NameTypeConstraintMandatoryDefault Value
mondayClass[monday]No
tuesdayClass[tuesday]No
wednesdayClass[wednesday]No
thursdayClass[thursday]No
fridayClass[friday]No
saturdayClass[saturday]No
sundayClass[sunday]No

default_settings (meraki.templates.networks.configuration.switch.routing_multicast)

Section titled “default_settings (meraki.templates.networks.configuration.switch.routing_multicast)”
NameTypeConstraintMandatoryDefault Value
igmp_snoopingBooleantrue, falseNo
flood_unknown_multicast_trafficBooleantrue, falseNo

areas (meraki.templates.networks.configuration.switch.routing_ospf)

Section titled “areas (meraki.templates.networks.configuration.switch.routing_ospf)”
NameTypeConstraintMandatoryDefault Value
area_idAnyString[min: 1, max: 13] or IP or Integer[min: 1, max: 4294967295]Yes
area_nameStringmin: 1, max: 127Yes
area_typeChoicenormal, nssa, stubYes

v3 (meraki.templates.networks.configuration.switch.routing_ospf)

Section titled “v3 (meraki.templates.networks.configuration.switch.routing_ospf)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
hello_timer_in_secondsIntegermin: 1, max: 65535No
dead_timer_in_secondsIntegermin: 1, max: 65535No
areasList[areas]No

md5_authentication_key (meraki.templates.networks.configuration.switch.routing_ospf)

Section titled “md5_authentication_key (meraki.templates.networks.configuration.switch.routing_ospf)”
NameTypeConstraintMandatoryDefault Value
idIntegermin: 1, max: 1234No
passphraseStringmin: 1, max: 127No

power_exceptions (meraki.templates.networks.configuration.switch.settings)

Section titled “power_exceptions (meraki.templates.networks.configuration.switch.settings)”
NameTypeConstraintMandatoryDefault Value
power_typeChoicecombined, redundant, useNetworkSettingYes
deviceStringmin: 1, max: 127No

stp_bridge_priority (meraki.templates.networks.configuration.switch.stp)

Section titled “stp_bridge_priority (meraki.templates.networks.configuration.switch.stp)”
NameTypeConstraintMandatoryDefault Value
switch_profilesListString[min: 1, max: 127]No
switchesListString[min: 1, max: 127]No
stacksListString[min: 1, max: 127]No
stp_priorityIntegermin: 0, max: 61440Yes

ospf_settings (meraki.templates.networks.configuration.switch_stacks.routing_interfaces)

Section titled “ospf_settings (meraki.templates.networks.configuration.switch_stacks.routing_interfaces)”
NameTypeConstraintMandatoryDefault Value
areaAnyString[min: 1, max: 13] or IP or Integer[min: 1, max: 4294967295]No
costIntegermin: 1, max: 65535No
is_passiveBooleantrue, falseNo

payload_template (meraki.templates.networks.configuration.webhooks.http_servers)

Section titled “payload_template (meraki.templates.networks.configuration.webhooks.http_servers)”
NameTypeConstraintMandatoryDefault Value
payload_template_idStringmin: 1, max: 127No
nameStringmin: 1, max: 127No

headers (meraki.templates.networks.configuration.webhooks.payload_templates)

Section titled “headers (meraki.templates.networks.configuration.webhooks.payload_templates)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
templateStringmin: 1, max: 4096No

match (meraki.templates.networks.configuration.wireless.air_marshal_rules)

Section titled “match (meraki.templates.networks.configuration.wireless.air_marshal_rules)”
NameTypeConstraintMandatoryDefault Value
typeChoicebssid, contains, exact, wildcardNo
stringStringmin: 1, max: 127No

access_points (meraki.templates.networks.configuration.wireless.alternate_management_interface)

Section titled “access_points (meraki.templates.networks.configuration.wireless.alternate_management_interface)”
NameTypeConstraintMandatoryDefault Value
alternate_management_ipIPYes
subnet_maskStringRegex: ^(255|254|252|248|240|224|192|128|0+)(\.0|\.128|\.192|\.224|\.240|\.248|\.252|\.254|\.255){0,3}$No
gatewayIPNo
dns1IPNo
dns2IPNo
deviceStringmin: 1, max: 127Yes

plans (meraki.templates.networks.configuration.wireless.billing)

Section titled “plans (meraki.templates.networks.configuration.wireless.billing)”
NameTypeConstraintMandatoryDefault Value
idStringmin: 1, max: 127No
priceNumbermin: 0, max: 1000Yes
bandwidth_limitsClass[bandwidth_limits]Yes
time_limitChoice1 day, 1 hour, 1 week, 30 daysYes

usb_ports (meraki.templates.networks.configuration.wireless.ethernet_ports_profiles)

Section titled “usb_ports (meraki.templates.networks.configuration.wireless.ethernet_ports_profiles)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
enabledBooleantrue, falseNo
ssid_nameStringmin: 1, max: 127No

ap_band_settings (meraki.templates.networks.configuration.wireless.rf_profiles)

Section titled “ap_band_settings (meraki.templates.networks.configuration.wireless.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
band_operation_modeChoice2.4ghz, 5ghz, 6ghz, dual, multiNo
bandsListChoice[2.4, 5, 6, disabled]No
band_steeringBooleantrue, falseNo

six_ghz_settings (meraki.templates.networks.configuration.wireless.rf_profiles)

Section titled “six_ghz_settings (meraki.templates.networks.configuration.wireless.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
max_powerIntegermin: 2, max: 30No
min_powerIntegermin: 2, max: 30No
min_bitrateChoice6, 9, 12, 18, 24, 36, 48, 54No
valid_auto_channelsListChoice[1, 5, 9, 13, 17, 21, 25, 29, 33, 37, 41, 45, 49, 53, 57, 61, 65, 69, 73, 77, 81, 85, 89, 93, 97, 101, 105, 109, 113, 117, 121, 125, 129, 133, 137, 141, 145, 149, 153, 157, 161, 165, 169, 173, 177, 181, 185, 189, 193, 197, 201, 205, 209, 213, 217, 221, 225, 229, 233]No
channel_widthChoiceauto, 0, 20, 40, 80, 160No
rxsopIntegermin: -95, max: -65No

flex_radios (meraki.templates.networks.configuration.wireless.rf_profiles)

Section titled “flex_radios (meraki.templates.networks.configuration.wireless.rf_profiles)”
NameTypeConstraintMandatoryDefault Value
modelStringmin: 1, max: 10No
bandsListChoice[2.4, 5, 6, disabled]No

named_vlans_pool_dhcp_monitoring (meraki.templates.networks.configuration.wireless.settings)

Section titled “named_vlans_pool_dhcp_monitoring (meraki.templates.networks.configuration.wireless.settings)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
durationIntegermin: 1, max: 60No

dot11r (meraki.templates.networks.configuration.wireless.ssids)

Section titled “dot11r (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
adaptiveBooleantrue, falseNo

ldap (meraki.templates.networks.configuration.wireless.ssids)

Section titled “ldap (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
serversList[servers]No
credentialsClass[credentials]No
base_distinguished_nameStringmin: 1, max: 127No
server_ca_certificateStringmin: 1, max: 4096No

active_directory (meraki.templates.networks.configuration.wireless.ssids)

Section titled “active_directory (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
serversList[servers]No
credentialsClass[credentials]No

ap_tags_and_vlan_ids (meraki.templates.networks.configuration.wireless.ssids)

Section titled “ap_tags_and_vlan_ids (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
tagsListString[min: 1, max: 255]No
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

gre (meraki.templates.networks.configuration.wireless.ssids)

Section titled “gre (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
concentratorAnyString[matches: ^(([a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])\.)+[a-zA-Z]{2,}$] or IPNo
keyIntegermin: 0, max: 4294967295No

dns_rewrite (meraki.templates.networks.configuration.wireless.ssids)

Section titled “dns_rewrite (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
dns_custom_nameserversListIPNo

named_vlans (meraki.templates.networks.configuration.wireless.ssids)

Section titled “named_vlans (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
taggingClass[tagging]No
radius_guest_vlanClass[radius_guest_vlan]No

device_type_group_policies (meraki.templates.networks.configuration.wireless.ssids)

Section titled “device_type_group_policies (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
device_type_policiesList[device_type_policies]No

eap_override (meraki.templates.networks.configuration.wireless.ssids)

Section titled “eap_override (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
timeoutIntegermin: 1, max: 600No
identityClass[identity]No
max_retriesIntegermin: 1, max: 5No
eapol_keyClass[eapol_key]No

firewall_l3_firewall_rules (meraki.templates.networks.configuration.wireless.ssids)

Section titled “firewall_l3_firewall_rules (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
rulesList[rules]No
allow_lan_accessBooleantrue, falseNo

firewall_l7_firewall_rules (meraki.templates.networks.configuration.wireless.ssids)

Section titled “firewall_l7_firewall_rules (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
policyChoicedenyNo
typeChoiceapplication, applicationCategory, host, ipRange, portNo
valueStringmin: 1, max: 127No

hotspot20 (meraki.templates.networks.configuration.wireless.ssids)

Section titled “hotspot20 (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
operatorStringmin: 1, max: 127No
venueClass[venue]No
network_access_typeChoiceChargeable public network, Emergency services only network, Free public network, Personal device network, Private network, Private network with guest access, Test or experimental, WildcardNo
domainsListString[min: 1, max: 127]No
roam_consort_oisListString[Regex: ^[0-9a-gA-G]{6,10}$]No
mcc_mncsList[mcc_mncs]No
nai_realmsList[nai_realms]No

identity_psks (meraki.templates.networks.configuration.wireless.ssids)

Section titled “identity_psks (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
passphraseStringmin: 1, max: 127No
expires_atStringmin: 1, max: 127No
group_policy_nameStringmin: 1, max: 127No

unavailability_schedules (meraki.templates.networks.configuration.wireless.ssids)

Section titled “unavailability_schedules (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
rangesList[ranges]No
ranges_in_secondsList[ranges_in_seconds]No

splash_settings (meraki.templates.networks.configuration.wireless.ssids)

Section titled “splash_settings (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
splash_urlStringmin: 1, max: 1024No
use_splash_urlBooleantrue, falseNo
splash_timeoutIntegermin: 1, max: 86400No
redirect_urlStringmin: 1, max: 1024No
use_redirect_urlBooleantrue, falseNo
welcome_messageStringmin: 1, max: 4096No
splash_logoClass[splash_logo]No
splash_imageClass[splash_image]No
splash_prepaid_frontClass[splash_prepaid_front]No
block_all_traffic_before_sign_onBooleantrue, falseNo
controller_disconnection_behaviorChoicedefault, open, restrictedNo
allow_simultaneous_loginsBooleantrue, falseNo
guest_sponsorshipClass[guest_sponsorship]No
billingClass[billing]No
sentry_enrollmentClass[sentry_enrollment]No
self_registrationClass[self_registration]No
theme_nameStringmin: 1, max: 127No

vpn (meraki.templates.networks.configuration.wireless.ssids)

Section titled “vpn (meraki.templates.networks.configuration.wireless.ssids)”
NameTypeConstraintMandatoryDefault Value
concentratorClass[concentrator]No
split_tunnelClass[split_tunnel]No
failoverClass[failover]No

radio_settings (meraki.templates.networks.configuration.devices.appliance)

Section titled “radio_settings (meraki.templates.networks.configuration.devices.appliance)”
NameTypeConstraintMandatoryDefault Value
two_four_ghz_settingsClass[two_four_ghz_settings]No
five_ghz_settingsClass[five_ghz_settings]No
rf_profile_nameStringmin: 1, max: 127No

Section titled “uplinks_settings (meraki.templates.networks.configuration.devices.appliance)”
NameTypeConstraintMandatoryDefault Value
wan1Class[wan1]No
wan2Class[wan2]No

sims (meraki.templates.networks.configuration.devices.cellular_sims)

Section titled “sims (meraki.templates.networks.configuration.devices.cellular_sims)”
NameTypeConstraintMandatoryDefault Value
slotChoicesim1, sim2, sim3No
is_primaryBooleantrue, falseNo
apnsList[apns]No
sim_orderIntegermin: 1, max: 3No

sim_failover (meraki.templates.networks.configuration.devices.cellular_sims)

Section titled “sim_failover (meraki.templates.networks.configuration.devices.cellular_sims)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
timeoutIntegermin: 1, max: 600No

lan (meraki.templates.networks.configuration.devices.cellular_gateway)

Section titled “lan (meraki.templates.networks.configuration.devices.cellular_gateway)”
NameTypeConstraintMandatoryDefault Value
reserved_ip_rangesList[reserved_ip_ranges]No
fixed_ip_assignmentsList[fixed_ip_assignments]No

wan1 (meraki.templates.networks.configuration.devices.management_interface)

Section titled “wan1 (meraki.templates.networks.configuration.devices.management_interface)”
NameTypeConstraintMandatoryDefault Value
using_static_ipBooleantrue, falseNo
static_ipIPNo
static_gateway_ipIPNo
static_subnet_maskStringRegex: ^(255|254|252|248|240|224|192|128|0+)(\.0|\.128|\.192|\.224|\.240|\.248|\.252|\.254|\.255){0,3}$No
static_dnsListString[min: 1, max: 1024]No
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
wanChoicedisabled, enabled, not configuredNo

wan2 (meraki.templates.networks.configuration.devices.management_interface)

Section titled “wan2 (meraki.templates.networks.configuration.devices.management_interface)”
NameTypeConstraintMandatoryDefault Value
using_static_ipBooleantrue, falseNo
static_ipIPNo
static_gateway_ipIPNo
static_subnet_maskStringRegex: ^(255|254|252|248|240|224|192|128|0+)(\.0|\.128|\.192|\.224|\.240|\.248|\.252|\.254|\.255){0,3}$No
static_dnsListString[min: 1, max: 1024]No
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
wanChoicedisabled, enabled, not configuredNo

lan_ip (meraki.templates.networks.configuration.devices.management_interface)

Section titled “lan_ip (meraki.templates.networks.configuration.devices.management_interface)”
NameTypeConstraintMandatoryDefault Value
using_static_ipBooleantrue, falseNo
static_ipIPNo
static_gateway_ipIPNo
static_subnet_maskStringRegex: ^(255|254|252|248|240|224|192|128|0+)(\.0|\.128|\.192|\.224|\.240|\.248|\.252|\.254|\.255){0,3}$No
static_dnsListString[min: 1, max: 1024]No
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

alternate_management_interface_ipv6 (meraki.templates.networks.configuration.devices.wireless)

Section titled “alternate_management_interface_ipv6 (meraki.templates.networks.configuration.devices.wireless)”
NameTypeConstraintMandatoryDefault Value
protocolChoiceipv4, ipv6No
assignment_modeChoicedynamic, staticNo
addressStringmin: 1, max: 1024No
gatewayIPNo
prefixStringmin: 1, max: 1024No
nameserversListIPNo

source_vlans (meraki.templates.networks.configuration.appliance.firewall.cellular_firewall_rules)

Section titled “source_vlans (meraki.templates.networks.configuration.appliance.firewall.cellular_firewall_rules)”
NameTypeConstraintMandatoryDefault Value
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
ipv4_offsetIntegermin: 1, max: 254No
ipv6_offsetIPNo

destination_vlans (meraki.templates.networks.configuration.appliance.firewall.cellular_firewall_rules)

Section titled “destination_vlans (meraki.templates.networks.configuration.appliance.firewall.cellular_firewall_rules)”
NameTypeConstraintMandatoryDefault Value
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
ipv4_offsetIntegermin: 1, max: 254No
ipv6_offsetIPNo

port_rules (meraki.templates.networks.configuration.appliance.firewall.one_to_many_nat_rules)

Section titled “port_rules (meraki.templates.networks.configuration.appliance.firewall.one_to_many_nat_rules)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
protocolChoicetcp, udpNo
public_portAnyInteger[min: 1, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
local_ipIPNo
local_portAnyInteger[min: 1, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
allowed_ipsListAny[IP or String[matches: [Aa]ny]]No

allowed_inbound (meraki.templates.networks.configuration.appliance.firewall.one_to_one_nat_rules)

Section titled “allowed_inbound (meraki.templates.networks.configuration.appliance.firewall.one_to_one_nat_rules)”
NameTypeConstraintMandatoryDefault Value
protocolChoiceany, icmp-ping, tcp, udpNo
destination_portsListAny[Integer[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
allowed_ipsListAny[IP or String[matches: [Aa]ny]]No

value (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters)

Section titled “value (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters)”
NameTypeConstraintMandatoryDefault Value
protocolChoiceany, icmp6, tcp, udpNo
sourceClass[source]Yes
destinationClass[destination]Yes

prefix_assignments (meraki.templates.networks.configuration.appliance.single_lan.ipv6)

Section titled “prefix_assignments (meraki.templates.networks.configuration.appliance.single_lan.ipv6)”
NameTypeConstraintMandatoryDefault Value
autonomousBooleantrue, falseNo
disabledBooleantrue, falseYes
static_prefixIPNo
static_appliance_ip6IPNo
originClass[origin]No

Section titled “cellular (meraki.templates.networks.configuration.appliance.traffic_shaping.uplink_bandwidth_limits)”
NameTypeConstraintMandatoryDefault Value
limit_upIntegerNo
limit_downIntegerNo

Section titled “wan_traffic_uplink_preferences (meraki.templates.networks.configuration.appliance.traffic_shaping.uplink_selection)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
traffic_filtersList[traffic_filters]Yes
preferred_uplinkChoicewan1, wan2Yes

Section titled “vpn_traffic_uplink_preferences (meraki.templates.networks.configuration.appliance.traffic_shaping.uplink_selection)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
traffic_filtersList[traffic_filters]Yes
preferred_uplinkChoicebestForVoIP, defaultUplink, loadBalancing, wan1, wan2Yes
fail_over_criterionChoicepoorPerformance, uplinkDownNo
performance_classClass[performance_class]No

custom (meraki.templates.networks.configuration.appliance.traffic_shaping.vpn_exclusions)

Section titled “custom (meraki.templates.networks.configuration.appliance.traffic_shaping.vpn_exclusions)”
NameTypeConstraintMandatoryDefault Value
protocolChoiceany, dns, icmp, tcp, udpYes
destinationAnyString[matches: ^(([a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])\.)+[a-zA-Z]{2,}$] or IPNo
portAnyInteger[min: 1, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3

nat (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn.subnets)

Section titled “nat (meraki.templates.networks.configuration.appliance.vpn_site_to_site_vpn.subnets)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
remote_subnetStringNo

definitions (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping.traffic_shaping_rules)

Section titled “definitions (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping.traffic_shaping_rules)”
NameTypeConstraintMandatoryDefault Value
typeChoiceapplication, applicationCategory, host, ipRange, localNet, portYes
valueStringmin: 1, max: 127Yes

per_client_bandwidth_limits (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping.traffic_shaping_rules)

Section titled “per_client_bandwidth_limits (meraki.templates.networks.configuration.group_policies.firewall_and_traffic_shaping.traffic_shaping_rules)”
NameTypeConstraintMandatoryDefault Value
settingsChoicenetwork default, ignore, customNo
bandwidth_limitsClass[bandwidth_limits]No

critical_auth (meraki.templates.networks.configuration.switch.access_policies.radius)

Section titled “critical_auth (meraki.templates.networks.configuration.switch.access_policies.radius)”
NameTypeConstraintMandatoryDefault Value
data_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
voice_vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
suspend_port_bounceBooleantrue, falseNo

cache (meraki.templates.networks.configuration.switch.access_policies.radius)

Section titled “cache (meraki.templates.networks.configuration.switch.access_policies.radius)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
timeoutIntegermin: 1, max: 600No

servers (meraki.templates.networks.configuration.wireless.ssids.ldap)

Section titled “servers (meraki.templates.networks.configuration.wireless.ssids.ldap)”
NameTypeConstraintMandatoryDefault Value
hostStringmin: 1, max: 127Yes
portIntegermin: 0, max: 65535Yes

credentials (meraki.templates.networks.configuration.wireless.ssids.ldap)

Section titled “credentials (meraki.templates.networks.configuration.wireless.ssids.ldap)”
NameTypeConstraintMandatoryDefault Value
distinguished_nameStringmin: 1, max: 127No
passwordStringmin: 5, max: 64No

tagging (meraki.templates.networks.configuration.wireless.ssids.named_vlans)

Section titled “tagging (meraki.templates.networks.configuration.wireless.ssids.named_vlans)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
default_vlan_nameStringmin: 1, max: 127No
by_ap_tagsList[by_ap_tags]No

radius_guest_vlan (meraki.templates.networks.configuration.wireless.ssids.named_vlans)

Section titled “radius_guest_vlan (meraki.templates.networks.configuration.wireless.ssids.named_vlans)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
nameStringmin: 1, max: 127No

device_type_policies (meraki.templates.networks.configuration.wireless.ssids.device_type_group_policies)

Section titled “device_type_policies (meraki.templates.networks.configuration.wireless.ssids.device_type_group_policies)”
NameTypeConstraintMandatoryDefault Value
device_typeChoiceAndroid, B&N Nook, BlackBerry, Chrome OS, Mac OS X, Other OS, Windows, Windows Phone, iPad, iPhone, iPodYes
device_policyChoiceAllowed, Blocked, Group policyYes
group_policy_nameStringmin: 1, max: 127No

identity (meraki.templates.networks.configuration.wireless.ssids.eap_override)

Section titled “identity (meraki.templates.networks.configuration.wireless.ssids.eap_override)”
NameTypeConstraintMandatoryDefault Value
retriesIntegermin: 1, max: 5No
timeoutIntegermin: 1, max: 600No

eapol_key (meraki.templates.networks.configuration.wireless.ssids.eap_override)

Section titled “eapol_key (meraki.templates.networks.configuration.wireless.ssids.eap_override)”
NameTypeConstraintMandatoryDefault Value
retriesIntegermin: 1, max: 5No
timeout_in_msIntegermin: 1, max: 5000No

venue (meraki.templates.networks.configuration.wireless.ssids.hotspot20)

Section titled “venue (meraki.templates.networks.configuration.wireless.ssids.hotspot20)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127No
typeChoiceAirplane, Alcohol and Drug Rehabilitation Center, Amphitheater, Amusement Park, Arena, Attorney Office, Automobile or Truck, Automotive Service Station, Bank, Bar, Boarding House, Bus, Bus Stop, City Park, Coffee Shop, Convention Center, Doctor or Dentist office, Dormitory, Emergency Coordination Center, Factory, Ferry, Fire Station, Gas Station, Grocery Market, Group Home, Hospital, Hotel or Motel, Kiosk, Library, Long-Term Care Facility, Motor Bike, Muni-mesh Network, Museum, Passenger Terminal, Place of Worship, Police Station, Post Office, Prison or Jail, Private Residence, Professional Office, Research and Development Facility, Rest Area, Restaurant, Retail Store, School, Primary, School, Secondary, Ship or Boat, Shopping Mall, Stadium, Theater, Traffic Control, Train, University or College, Unspecified, Unspecified Assembly, Unspecified Business, Unspecified Educational, Unspecified Factory and Industrial, Unspecified Institutional, Unspecified Mercantile, Unspecified Outdoor, Unspecified Residential, Unspecified Storage, Unspecified Utility and Miscellaneous, Unspecified Vehicular, Zoo or AquariumNo

mcc_mncs (meraki.templates.networks.configuration.wireless.ssids.hotspot20)

Section titled “mcc_mncs (meraki.templates.networks.configuration.wireless.ssids.hotspot20)”
NameTypeConstraintMandatoryDefault Value
mccStringmin: 1, max: 127No
mncStringmin: 1, max: 127No

nai_realms (meraki.templates.networks.configuration.wireless.ssids.hotspot20)

Section titled “nai_realms (meraki.templates.networks.configuration.wireless.ssids.hotspot20)”
NameTypeConstraintMandatoryDefault Value
formatChoice0, 1No
realmStringmin: 1, max: 127No
methodsList[methods]No

ranges (meraki.templates.networks.configuration.wireless.ssids.unavailability_schedules)

Section titled “ranges (meraki.templates.networks.configuration.wireless.ssids.unavailability_schedules)”
NameTypeConstraintMandatoryDefault Value
start_dayChoiceSunday, Monday, Tuesday, Wednesday, Thursday, Friday, SaturdayYes
start_timeStringRegex: ^([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$Yes
end_dayChoiceSunday, Monday, Tuesday, Wednesday, Thursday, Friday, SaturdayYes
end_timeStringRegex: ^([01]?[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$Yes

ranges_in_seconds (meraki.templates.networks.configuration.wireless.ssids.unavailability_schedules)

Section titled “ranges_in_seconds (meraki.templates.networks.configuration.wireless.ssids.unavailability_schedules)”
NameTypeConstraintMandatoryDefault Value
startIntegermin: 0, max: 604800Yes
endIntegermin: 0, max: 604800Yes

splash_logo (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “splash_logo (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
md5Stringmin: 1, max: 4096No
extensionStringmin: 1, max: 10No
imageClass[image]No

splash_image (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “splash_image (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
md5Stringmin: 1, max: 4096No
extensionStringmin: 1, max: 10No
imageClass[image]No

splash_prepaid_front (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “splash_prepaid_front (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
md5Stringmin: 1, max: 4096No
extensionStringmin: 1, max: 10No
imageClass[image]No

guest_sponsorship (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “guest_sponsorship (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
duration_in_minutesIntegermin: 1, max: 60480No
guest_can_request_timeframeBooleantrue, falseNo

sentry_enrollment (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “sentry_enrollment (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
systems_manager_networkStringmin: 1, max: 127No
strengthChoiceclick-through, focused, strictNo
enforced_systemsListChoice[iOS, Android, macOS, Windows]No

self_registration (meraki.templates.networks.configuration.wireless.ssids.splash_settings)

Section titled “self_registration (meraki.templates.networks.configuration.wireless.ssids.splash_settings)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
authorization_typeChoiceadmin, auto, self_emailNo

concentrator (meraki.templates.networks.configuration.wireless.ssids.vpn)

Section titled “concentrator (meraki.templates.networks.configuration.wireless.ssids.vpn)”
NameTypeConstraintMandatoryDefault Value
network_idStringmin: 1, max: 127No
vlan_idAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2

split_tunnel (meraki.templates.networks.configuration.wireless.ssids.vpn)

Section titled “split_tunnel (meraki.templates.networks.configuration.wireless.ssids.vpn)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
rulesList[rules]No

failover (meraki.templates.networks.configuration.wireless.ssids.vpn)

Section titled “failover (meraki.templates.networks.configuration.wireless.ssids.vpn)”
NameTypeConstraintMandatoryDefault Value
request_ipIPNo
heartbeat_intervalIntegermin: 1, max: 360No
idle_timeoutIntegermin: 1, max: 360No

local_radius (meraki.templates.networks.configuration.wireless.ssids.radius)

Section titled “local_radius (meraki.templates.networks.configuration.wireless.ssids.radius)”
NameTypeConstraintMandatoryDefault Value
cache_timeoutIntegermin: 1, max: 86400No
password_authenticationBooleantrue, falseNo
certificate_authenticationClass[certificate_authentication]No

accounting_servers (meraki.templates.networks.configuration.wireless.ssids.radius)

Section titled “accounting_servers (meraki.templates.networks.configuration.wireless.ssids.radius)”
NameTypeConstraintMandatoryDefault Value
hostStringmin: 1, max: 127Yes
portIntegermin: 0, max: 65535No
secretStringmin: 1, max: 127No
ca_certificateStringmin: 1, max: 4096No
radsecBooleantrue, falseNo

apns (meraki.templates.networks.configuration.devices.cellular_sims.sims)

Section titled “apns (meraki.templates.networks.configuration.devices.cellular_sims.sims)”
NameTypeConstraintMandatoryDefault Value
nameStringmin: 1, max: 127Yes
allowed_ip_typesListChoice[ipv4, ipv6, IPV4, IPV6]Yes
authenticationClass[authentication]No

profile (meraki.templates.networks.configuration.devices.switch.ports)

Section titled “profile (meraki.templates.networks.configuration.devices.switch.ports)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
inameStringmin: 1, max: 127No
nameStringmin: 1, max: 127No

source (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value)

Section titled “source (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value)”
NameTypeConstraintMandatoryDefault Value
portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No
vlanAnyInteger[min: 1, max: 4094] or String[matches: `(?:[1-9][1-9][0-9][1-9][0-9]2
hostIntegermin: 1, max: 254No

destination (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value)

Section titled “destination (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value)”
NameTypeConstraintMandatoryDefault Value
portAnyInteger[min: 0, max: 65535] or String[matches: `(?:[1-9][0-9]3[1-5][0-9]46[0-4][0-9]3
cidrStringRegex: ^(?i:any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?)(,(any|(\d{1,3}\.){3}\d{1,3}(\/\d{1,2})?))*$No
applicationsList[applications]No

by_ap_tags (meraki.templates.networks.configuration.wireless.ssids.named_vlans.tagging)

Section titled “by_ap_tags (meraki.templates.networks.configuration.wireless.ssids.named_vlans.tagging)”
NameTypeConstraintMandatoryDefault Value
tagsListString[min: 1, max: 255]No
vlan_nameStringmin: 1, max: 127No

methods (meraki.templates.networks.configuration.wireless.ssids.hotspot20.nai_realms)

Section titled “methods (meraki.templates.networks.configuration.wireless.ssids.hotspot20.nai_realms)”
NameTypeConstraintMandatoryDefault Value
idStringmin: 1, max: 127No
authentication_typesClass[authentication_types]No

Section titled “image (meraki.templates.networks.configuration.wireless.ssids.splash_settings.splash_logo)”
NameTypeConstraintMandatoryDefault Value
formatChoicegif, jpg, pngNo
contentsStringmin: 1, max: 4096No

free_access (meraki.templates.networks.configuration.wireless.ssids.splash_settings.billing)

Section titled “free_access (meraki.templates.networks.configuration.wireless.ssids.splash_settings.billing)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
duration_in_minutesIntegermin: 1, max: 60480No

certificate_authentication (meraki.templates.networks.configuration.wireless.ssids.radius.local_radius)

Section titled “certificate_authentication (meraki.templates.networks.configuration.wireless.ssids.radius.local_radius)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
use_ldapBooleantrue, falseNo
use_ocspBooleantrue, falseNo
ocsp_responder_urlStringmin: 1, max: 1024No
client_root_ca_certificateStringmin: 1, max: 4096No

Section titled “svis (meraki.templates.networks.configuration.devices.appliance.uplinks_settings.wan1)”
NameTypeConstraintMandatoryDefault Value
ipv4Class[ipv4]No
ipv6Class[ipv6]No

Section titled “pppoe (meraki.templates.networks.configuration.devices.appliance.uplinks_settings.wan1)”
NameTypeConstraintMandatoryDefault Value
enabledBooleantrue, falseNo
authenticationClass[authentication]No

authentication (meraki.templates.networks.configuration.devices.cellular_sims.sims.apns)

Section titled “authentication (meraki.templates.networks.configuration.devices.cellular_sims.sims.apns)”
NameTypeConstraintMandatoryDefault Value
typeChoicechap, none, papNo
usernameStringmin: 1, max: 127No
passwordStringmin: 5, max: 64No

applications (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value.destination)

Section titled “applications (meraki.templates.networks.configuration.appliance.sdwan_internet_policies.traffic_filters.value.destination)”
NameTypeConstraintMandatoryDefault Value
idStringmin: 1, max: 127No
nameStringmin: 1, max: 127No
typeStringmin: 1, max: 127No

authentication_types (meraki.templates.networks.configuration.wireless.ssids.hotspot20.nai_realms.methods)

Section titled “authentication_types (meraki.templates.networks.configuration.wireless.ssids.hotspot20.nai_realms.methods)”
NameTypeConstraintMandatoryDefault Value
non_eap_inner_authenticationChoiceReserved, PAP, CHAP, MSCHAP, MSCHAPV2No
eap_inner_authenticationChoiceEAP-TLS, EAP-SIM, EAP-AKA, EAP-TTLS with MSCHAPv2No
credentialsChoiceSIM, USIM, NFC Secure Element, Hardware Token, Softoken, Certificate, username/password, none, Reserved, Vendor SpecificNo
tunneled_eap_method_credentialsChoiceSIM, USIM, NFC Secure Element, Hardware Token, Softoken, Certificate, username/password, Reserved, Anonymous, Vendor SpecificNo

Section titled “ipv4 (meraki.templates.networks.configuration.devices.appliance.uplinks_settings.wan1.svis)”
NameTypeConstraintMandatoryDefault Value
assignment_modeChoicedynamic, staticNo
addressStringmin: 1, max: 1024No
gatewayIPNo
nameserversListIPNo

Example 1: Model Template — Network Setup and Management

Section titled “Example 1: Model Template — Network Setup and Management”

This example defines a model template named nw_setup_mgmt that configures foundational network settings: product types, time zone, local status page, SNMP, and syslog. Site-specific values such as time_zone, syslog_server, and snmp_username are expressed as ${variable} placeholders. Fixed values that should be identical across all branches — such as syslog roles and product types — are hardcoded directly in the template.

The !env secret_password syntax reads the value from an environment variable at deploy time, keeping secrets out of the data model files.

meraki:
templates:
networks:
- name: nw_setup_mgmt
type: model
configuration:
product_types:
- appliance
- switch
- wireless
- cellularGateway
time_zone: ${time_zone}
notes: ${network_notes}
tags:
- cleu_branch
settings:
local_status_page_enabled: true
remote_status_page: true
secure_port: false
local_status_page_authentication:
username: ${local_page_username}
password: !env secret_password
named_vlans: true
snmp:
access: users
users:
- username: ${snmp_username}
passphrase: !env secret_password
syslog_servers:
- host: ${syslog_server}
port: ${syslog_port}
roles:
- Switch Event log
- Air Marshal events
- Flows
- URLs
- Wireless Event log
- Appliance Event log

Example 2: Model Template — Wireless SSIDs and RF Profiles

Section titled “Example 2: Model Template — Wireless SSIDs and RF Profiles”

This example defines a model template named wireless covering wireless settings, RF profiles, and two SSIDs (a corporate Data SSID with 802.1X RADIUS and a Guest SSID with a click-through splash page). SSID names, RADIUS servers, bandwidth limits, and schedule toggles are parameterized. The security model and wireless architecture are standardized across all networks that reference this template.

meraki:
templates:
networks:
- name: wireless
type: model
configuration:
wireless:
settings:
upgrade_strategy: minimizeUpgradeTime
meshing: false
rf_profiles:
- name: Corp wireless rf profile
band_selection_type: ssid
min_bitrate_type: band
per_ssid_settings:
- ssid_name: ${guest_wireless_ssid_name}
band_operation_mode: dual
band_steering: true
bands:
- "2.4"
- "5"
- ssid_name: ${data_wireless_ssid_name}
band_operation_mode: dual
band_steering: true
bands:
- "2.4"
- "5"
- "6"
transmission: true
ssids:
- name: ${data_wireless_ssid_name}
auth_mode: 8021x-radius
available_on_all_aps: true
band_selection: Dual band operation with Band Steering
default_vlan_id: 10
dot11r:
enabled: true
dot11w:
enabled: true
required: false
enabled: true
encryption_mode: wpa-eap
ip_assignment_mode: Bridge mode
lan_isolation: false
radius:
accounting: true
accounting_servers:
- host: ${radius_accounting_server1_host}
port: 1813
secret: !env secret_password
- host: ${radius_accounting_server2_host}
port: 1813
secret: !env secret_password
servers:
- host: ${radius_server1_host}
port: 1812
secret: !env secret_password
- host: ${radius_server2_host}
port: 1812
secret: !env secret_password
testing: true
unavailability_schedules:
enabled: ${data_ssid_schedules_enabled}
ranges:
- start_day: Sunday
start_time: 00:00:00
end_time: 06:00:00
end_day: Sunday
- start_day: Saturday
start_time: 00:00:00
end_time: 06:00:00
end_day: Saturday
ssid_number: "0"
use_vlan_tagging: true
visible: true
wpa_encryption_mode: WPA2 only
- name: ${guest_wireless_ssid_name}
auth_mode: open
available_on_all_aps: true
band_selection: Dual band operation
default_vlan_id: 50
enabled: true
firewall_l3_firewall_rules:
allow_lan_access: false
ip_assignment_mode: Bridge mode
lan_isolation: true
mandatory_dhcp: true
per_client_bandwidth_limit_down: ${guest_wireless_client_bw_down}
per_client_bandwidth_limit_up: ${guest_wireless_client_bw_up}
per_ssid_bandwidth_limit_down: ${guest_wireless_ssid_bw_down}
per_ssid_bandwidth_limit_up: ${guest_wireless_ssid_bw_up}
splash_page: Click-through splash page
splash_settings:
welcome_message: ${guest_ssid_welcome_message}
ssid_number: "1"
use_vlan_tagging: true
visible: true

Example 3: File Template — L3 Firewall Rules from a .tftpl File

Section titled “Example 3: File Template — L3 Firewall Rules from a .tftpl File”

This example defines a file template named fw_rules_template where the configuration body is provided by a separate HCL template file (template_file1.tftpl). The file path is relative to the location of the data file that references it. File templates are well-suited for list-driven configuration such as firewall rules, where HCL for loops and try() functions can generate entries dynamically from a variable that contains a list of objects.

The corresponding .tftpl file iterates over the template_network_1_fw_rules variable to generate one firewall rule per list entry, then appends a final deny any rule.

meraki:
templates:
networks:
- name: fw_rules_template
type: file
file: "../standard_templates/template_file1.tftpl"

The .tftpl file referenced above (template_file1.tftpl):

appliance:
firewall:
l3_firewall_rules:
rules:
%{ for rule in template_network_1_fw_rules }
- comment: ${try(rule.policy, "allow")} ${try(rule.protocol, "tcp")} port ${try(rule.destination_port, "Any")}
policy: ${try(rule.policy, "allow")}
protocol: ${try(rule.protocol, "tcp")}
source_port: Any
destination_port: ${try(rule.destination_port, "Any")}
source_cidr: Any
destination_cidr: Any
%{ endfor }
- comment: Deny any
policy: deny
protocol: any
source_port: Any
destination_port: Any
source_cidr: Any
destination_cidr: Any