Cisco Meraki Dashboard API — Appliance
The appliance product area of the Cisco Meraki Dashboard API — 157 operations, from Cisco's published OpenAPI definition (v1.72.0).
The appliance product area of the Cisco Meraki Dashboard API — 157 operations, from Cisco's published OpenAPI definition (v1.72.0).
{
"openapi": "3.0.1",
"info": {
"title": "Cisco Meraki Dashboard API \u2014 appliance",
"description": "The appliance operations of the Cisco Meraki Dashboard API, split by product area from Cisco's published OpenAPI definition.",
"version": "1.72.0",
"contact": {
"name": "Meraki Developer Community",
"url": "https://meraki.io/community"
},
"x-provenance": {
"method": "harvested",
"authored_by": "Cisco Meraki",
"harvested_by": "API Evangelist",
"harvested_on": "2026-07-31",
"first_party": true,
"note": "Split by first tag from Cisco's published spec3.json; operations unmodified.",
"provider_published": true
},
"x-evidence": [
{
"type": "source",
"url": "https://github.com/meraki/openapi/blob/master/openapi/spec3.json"
},
{
"type": "raw",
"url": "https://raw.githubusercontent.com/meraki/openapi/master/openapi/spec3.json"
},
{
"type": "alternate",
"url": "https://api.meraki.com/api/v1/openapiSpec"
}
]
},
"servers": [
{
"url": "https://api.meraki.com/{basePath}",
"variables": {
"basePath": {
"default": "api/v1"
}
}
}
],
"security": [
{
"meraki_api_key": []
},
{
"bearerAuth": []
}
],
"tags": [
{
"name": "account",
"description": ""
},
{
"name": "appliance",
"description": ""
},
{
"name": "applicationCategories",
"description": ""
},
{
"name": "assignments",
"description": ""
},
{
"name": "authenticationToken",
"description": ""
},
{
"name": "bgp",
"description": ""
},
{
"name": "bulkCreate",
"description": ""
},
{
"name": "bulkDelete",
"description": ""
},
{
"name": "byDevice",
"description": ""
},
{
"name": "byNetwork",
"description": ""
},
{
"name": "byVlan",
"description": ""
},
{
"name": "categories",
"description": ""
},
{
"name": "cellularFirewallRules",
"description": ""
},
{
"name": "clients",
"description": ""
},
{
"name": "configure",
"description": ""
},
{
"name": "connectivityMonitoringDestinations",
"description": ""
},
{
"name": "contentFiltering",
"description": ""
},
{
"name": "customPerformanceClasses",
"description": ""
},
{
"name": "delegated",
"description": ""
},
{
"name": "devices",
"description": ""
},
{
"name": "dhcp",
"description": ""
},
{
"name": "dns",
"description": ""
},
{
"name": "domains",
"description": ""
},
{
"name": "events",
"description": ""
},
{
"name": "firewall",
"description": ""
},
{
"name": "firewalledServices",
"description": ""
},
{
"name": "global",
"description": ""
},
{
"name": "group",
"description": ""
},
{
"name": "history",
"description": ""
},
{
"name": "inboundCellularFirewallRules",
"description": ""
},
{
"name": "inboundFirewallRules",
"description": ""
},
{
"name": "interfaces",
"description": ""
},
{
"name": "internetPolicies",
"description": ""
},
{
"name": "intrusion",
"description": ""
},
{
"name": "ipsec",
"description": ""
},
{
"name": "l3",
"description": ""
},
{
"name": "l3FirewallRules",
"description": ""
},
{
"name": "l7FirewallRules",
"description": ""
},
{
"name": "local",
"description": ""
},
{
"name": "malware",
"description": ""
},
{
"name": "monitor",
"description": ""
},
{
"name": "multicastForwarding",
"description": ""
},
{
"name": "nat",
"description": ""
},
{
"name": "oneToManyNatRules",
"description": ""
},
{
"name": "oneToOneNatRules",
"description": ""
},
{
"name": "overview",
"description": ""
},
{
"name": "overviews",
"description": ""
},
{
"name": "packets",
"description": ""
},
{
"name": "peers",
"description": ""
},
{
"name": "performance",
"description": ""
},
{
"name": "policies",
"description": ""
},
{
"name": "portForwardingRules",
"description": ""
},
{
"name": "ports",
"description": ""
},
{
"name": "prefixes",
"description": ""
},
{
"name": "profiles",
"description": ""
},
{
"name": "radio",
"description": ""
},
{
"name": "readings",
"description": ""
},
{
"name": "records",
"description": ""
},
{
"name": "redundancy",
"description": ""
},
{
"name": "rfProfiles",
"description": ""
},
{
"name": "routing",
"description": ""
},
{
"name": "rules",
"description": ""
},
{
"name": "sdwan",
"description": ""
},
{
"name": "security",
"description": ""
},
{
"name": "settings",
"description": ""
},
{
"name": "singleLan",
"description": ""
},
{
"name": "siteToSite",
"description": ""
},
{
"name": "siteToSiteVpn",
"description": ""
},
{
"name": "slas",
"description": ""
},
{
"name": "split",
"description": ""
},
{
"name": "ssids",
"description": ""
},
{
"name": "staticRoutes",
"description": ""
},
{
"name": "statics",
"description": ""
},
{
"name": "stats",
"description": ""
},
{
"name": "statuses",
"description": ""
},
{
"name": "subnets",
"description": ""
},
{
"name": "swap",
"description": ""
},
{
"name": "thirdPartyVPNPeers",
"description": ""
},
{
"name": "trafficShaping",
"description": ""
},
{
"name": "transceivers",
"description": ""
},
{
"name": "umbrella",
"description": ""
},
{
"name": "update",
"description": ""
},
{
"name": "uplinkBandwidth",
"description": ""
},
{
"name": "uplinkSelection",
"description": ""
},
{
"name": "uplinks",
"description": ""
},
{
"name": "usage",
"description": ""
},
{
"name": "usageHistory",
"description": ""
},
{
"name": "vlanAssignments",
"description": ""
},
{
"name": "vlans",
"description": ""
},
{
"name": "vmx",
"description": ""
},
{
"name": "vpn",
"description": ""
},
{
"name": "vpnExclusions",
"description": ""
},
{
"name": "vpnFirewallRules",
"description": ""
},
{
"name": "vrfs",
"description": ""
},
{
"name": "warmSpare",
"description": ""
}
],
"components": {
"securitySchemes": {
"meraki_api_key": {
"type": "apiKey",
"name": "X-Cisco-Meraki-API-Key",
"in": "header"
},
"bearerAuth": {
"type": "http",
"scheme": "bearer",
"bearerFormat": "API Key"
}
}
},
"paths": {
"/devices/{serial}/appliance/dhcp/subnets": {
"get": {
"description": "Return the DHCP subnet information for an appliance",
"operationId": "getDeviceApplianceDhcpSubnets",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
}
],
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"subnet": {
"type": "string",
"description": "Subnet"
},
"vlanId": {
"type": "integer",
"description": "VLAN ID"
},
"usedCount": {
"type": "integer",
"description": "Count of used IP addresses in subnet"
},
"freeCount": {
"type": "integer",
"description": "Count of free IP addresses in subnet"
}
}
}
},
"example": [
{
"subnet": "192.168.1.0/24",
"vlanId": 100,
"usedCount": 2,
"freeCount": 251
}
]
}
}
}
},
"security": [
{
"oauth2": [
"sdwan:telemetry:read"
]
}
],
"summary": "Return the DHCP subnet information for an appliance",
"tags": [
"appliance",
"monitor",
"dhcp",
"subnets"
]
}
},
"/devices/{serial}/appliance/interfaces/ports/update": {
"post": {
"description": "Update configurations for an appliance's specified port",
"operationId": "createDeviceApplianceInterfacesPortsUpdate",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
}
],
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"interface": {
"type": "object",
"properties": {
"slot": {
"type": "integer",
"description": "The slot number for the port",
"nullable": true
},
"subslot": {
"type": "integer",
"description": "The subslot number for the port",
"nullable": true
},
"number": {
"type": "integer",
"description": "The leaf port number"
}
},
"description": "The interface tuple used to identify the port"
},
"enabled": {
"type": "boolean",
"description": "Indicates whether the port is enabled"
},
"personality": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"lan",
"wan"
],
"description": "The type of interface, 'wan' or 'lan', the port is configured as"
},
"layer": {
"type": "object",
"properties": {
"mode": {
"type": "integer",
"enum": [
2,
3
],
"description": "The layer at which the port operates"
}
},
"description": "Describes the port's layer configurability"
}
},
"description": "Describes the port's configurability"
},
"uplink": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"cellular",
"ethernet"
],
"description": "Describes the uplink device",
"nullable": true
}
},
"description": "The port's settings when in WAN mode"
},
"downlink": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"access",
"trunk"
],
"description": "Indicates whether the port is in 'trunk' or 'access' mode"
},
"sgt": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Adaptive policy group ID that all traffic originating from this port is assigned to",
"nullable": true
}
},
"description": "Security Group Tag settings for this port"
},
"access": {
"type": "object",
"properties": {
"vlan": {
"type": "string",
"description": "The VLAN for which this port will accept and pass traffic in 'access' mode. All untagged traffic will automatically be treated as if it belonged to this VLAN"
},
"policy": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"802.1X",
"MAC RADIUS",
"hybrid",
"open"
],
"description": "The access policy that will be enforced by the 'access' VLAN",
"nullable": true
}
},
"description": "The access policy settings for this port"
}
},
"description": "The port's settings when in 'access' mode"
},
"trunk": {
"type": "object",
"properties": {
"nativeVlan": {
"type": "string",
"description": "The Native VLAN for the port. All untagged traffic that comes in on this port will be treated as if it belonged to this VLAN. This can also be set to 0 to drop untagged traffic."
},
"allowedVlans": {
"type": "array",
"items": {
"type": "string"
},
"description": "The VLANs for which this port will accept and pass traffic in 'trunk' mode. This must include the Native VLAN if one is set"
},
"sgt": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Indicates whether the trunk port is Peer SGT capable"
}
},
"description": "Security Group Tag settings for this trunk port"
}
},
"description": "The port's settings when in 'trunk' mode"
}
},
"description": "The port's VLAN settings when in LAN mode"
}
},
"example": {
"interface": {
"slot": 1,
"subslot": 2,
"number": 3
},
"enabled": true,
"personality": {
"mode": "wan",
"layer": {
"mode": 3
}
},
"uplink": {
"type": "ethernet"
},
"downlink": {
"mode": "access",
"sgt": {
"id": "1234"
},
"access": {
"vlan": "1",
"policy": {
"type": "802.1X"
}
},
"trunk": {
"nativeVlan": "2",
"allowedVlans": [
"2",
"3",
"4",
"5"
],
"sgt": {
"enabled": false
}
}
}
}
}
}
},
"required": false
},
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"number": {
"type": "string",
"description": "A port's identifier as labeled on the device"
},
"interface": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "The full interface identifier for this port"
},
"slot": {
"type": "integer",
"description": "The slot for this port",
"nullable": true
},
"subslot": {
"type": "integer",
"description": "The subslot for this port",
"nullable": true
},
"number": {
"type": "integer",
"description": "The leaf interface number for this port"
}
},
"description": "The structured interface identifier for this port"
},
"enabled": {
"type": "boolean",
"description": "Indicates whether the port is enabled"
},
"name": {
"type": "string",
"description": "The name of the interface the port is mapped to"
},
"personality": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"lan",
"wan"
],
"description": "The type of interface, 'wan' or 'lan', the port is configured as"
},
"isFlexible": {
"type": "boolean",
"description": "Indicates whether the port interface type can convert between WAN and LAN"
},
"layer": {
"type": "object",
"properties": {
"mode": {
"type": "integer",
"enum": [
2,
3
],
"description": "The layer at which the port operates"
},
"isFlexible": {
"type": "boolean",
"description": "Whether the layer mode is mutable"
}
},
"description": "Describes the port's layer configurability"
}
},
"description": "Describes the port's configurability"
},
"uplink": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"cellular",
"ethernet"
],
"description": "Describes the uplink device"
},
"primary": {
"type": "boolean",
"description": "Indicates whether the uplink has the highest priority among the device's WAN ports"
}
},
"description": "The port's settings when in WAN mode"
},
"downlink": {
"type": "object",
"properties": {
"mode": {
"type": "string",
"description": "Indicates whether the port is in 'trunk' or 'access' mode"
},
"sgt": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Adaptive policy group ID that all traffic originating from this port is assigned to",
"nullable": true
}
},
"description": "Security Group Tag settings for this port"
},
"access": {
"type": "object",
"properties": {
"vlan": {
"type": "string",
"description": "The VLAN for which this port will accept and pass traffic in 'access' mode. All untagged traffic will automatically be treated as if it belonged to this VLAN"
},
"policy": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"802.1X",
"MAC RADIUS",
"hybrid",
"open"
],
"description": "The access policy that will be enforced by the 'access' VLAN",
"nullable": true
}
},
"description": "The access policy settings for this port"
}
},
"description": "The port's settings when in 'access' mode"
},
"trunk": {
"type": "object",
"properties": {
"nativeVlan": {
"type": "string",
"description": "The Native VLAN for the port. All untagged traffic that comes in on this port will be treated as if it belonged to this VLAN. This can also be set to 0 to drop untagged traffic."
},
"allowedVlans": {
"type": "array",
"items": {
"type": "string"
},
"description": "The VLANs for which this port will accept and pass traffic in 'trunk' mode. This must include the Native VLAN if one is set"
},
"sgt": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean",
"description": "Indicates whether the trunk port is Peer SGT capable"
}
},
"description": "Security Group Tag settings for this trunk port"
}
},
"description": "The port's settings when in 'trunk' mode"
}
},
"description": "The port's VLAN settings when in LAN mode"
}
}
},
"example": {
"number": "1",
"interface": {
"name": "GigabitEthernet1/2/3",
"slot": 1,
"subslot": 2,
"number": 3
},
"enabled": true,
"name": "wan1",
"personality": {
"mode": "wan",
"isFlexible": false,
"layer": {
"mode": 3,
"isFlexible": false
}
},
"uplink": {
"type": "ethernet",
"primary": true
},
"downlink": {
"mode": "access",
"sgt": {
"id": "1234"
},
"access": {
"vlan": "1",
"policy": {
"type": "802.1X"
}
},
"trunk": {
"nativeVlan": "2",
"allowedVlans": [
"2",
"3",
"4",
"5"
],
"sgt": {
"enabled": false
}
}
}
}
}
}
}
},
"summary": "Update configurations for an appliance's specified port",
"tags": [
"appliance",
"configure",
"interfaces",
"ports",
"update"
]
}
},
"/devices/{serial}/appliance/performance": {
"get": {
"description": "Return the performance score for a single Secure Appliance or Secure Router. Only primary Secure Appliance devices supported. If no data is available, a 204 error code is returned.",
"operationId": "getDeviceAppliancePerformance",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
},
{
"name": "t0",
"in": "query",
"description": "The beginning of the timespan for the data. The maximum lookback period is 30 days from today.",
"schema": {
"type": "string"
}
},
{
"name": "t1",
"in": "query",
"description": "The end of the timespan for the data. t1 can be a maximum of 14 days after t0.",
"schema": {
"type": "string"
}
},
{
"name": "timespan",
"in": "query",
"description": "The timespan for which the information will be fetched. If specifying timespan, do not specify parameters t0 and t1. The value must be in seconds and be greater than or equal to 30 minutes and be less than or equal to 14 days. The default is 30 minutes.",
"schema": {
"type": "number",
"format": "float",
"minimum": 1800,
"maximum": 1209600
}
}
],
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"perfScore": {
"type": "number",
"format": "float",
"description": "Utilization for the device"
}
}
},
"example": {
"perfScore": 10.0
}
}
}
}
},
"security": [
{
"oauth2": [
"sdwan:telemetry:read"
]
}
],
"summary": "Return the performance score for a single Secure Appliance or Secure Router",
"tags": [
"appliance",
"monitor",
"performance"
]
}
},
"/devices/{serial}/appliance/prefixes/delegated": {
"get": {
"description": "Return current delegated IPv6 prefixes on an appliance.",
"operationId": "getDeviceAppliancePrefixesDelegated",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
}
],
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"origin": {
"type": "object",
"properties": {
"interface": {
"type": "string",
"description": "Uplink interface for this delegated prefix."
}
},
"required": [
"interface"
],
"description": "Origin details for the delegated prefix."
},
"prefix": {
"type": "string",
"description": "Delegated IPv6 prefix in CIDR notation."
},
"counts": {
"type": "object",
"properties": {
"assigned": {
"type": "integer",
"description": "Number of assigned VLAN prefixes."
},
"available": {
"type": "integer",
"description": "Number of available VLAN prefixes."
}
},
"required": [
"assigned",
"available"
],
"description": "Usage counters for the delegated prefix."
},
"method": {
"type": "string",
"enum": [
"auto",
"manual"
],
"description": "Delegation method."
},
"staticDelegatedPrefixId": {
"type": "string",
"description": "Static delegated prefix id. Present when method is manual."
},
"description": {
"type": "string",
"description": "Description for a manual delegated prefix."
},
"isPreferred": {
"type": "boolean",
"description": "Whether this delegated prefix is preferred."
},
"expiresAt": {
"type": "string",
"format": "date-time",
"description": "Expiration time of the delegated prefix.",
"nullable": true
}
},
"required": [
"prefix",
"method",
"isPreferred"
]
}
},
"example": [
{
"origin": {
"interface": "wan1"
},
"prefix": "2001:db8:3c4d:15::/64",
"counts": {
"assigned": 2,
"available": 253
},
"method": "auto",
"staticDelegatedPrefixId": "2001:db8:3c4d:15::/64",
"description": "My ISP provider",
"isPreferred": true,
"expiresAt": "2018-05-12T00:00:00Z"
}
]
}
}
}
},
"security": [
{
"oauth2": [
"sdwan:telemetry:read"
]
}
],
"summary": "Return current delegated IPv6 prefixes on an appliance.",
"tags": [
"appliance",
"monitor",
"prefixes",
"delegated"
]
}
},
"/devices/{serial}/appliance/prefixes/delegated/vlanAssignments": {
"get": {
"description": "Return prefixes assigned to all IPv6 enabled VLANs on an appliance.",
"operationId": "getDeviceAppliancePrefixesDelegatedVlanAssignments",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
}
],
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"vlan": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "VLAN id."
},
"name": {
"type": "string",
"description": "VLAN name."
}
},
"required": [
"id",
"name"
],
"description": "VLAN details for the prefix assignment."
},
"origin": {
"type": "object",
"properties": {
"interface": {
"type": "string",
"description": "Uplink interface origin."
},
"prefix": {
"type": "string",
"description": "Delegated origin prefix.",
"nullable": true
}
},
"required": [
"interface"
],
"description": "Delegated prefix origin for this VLAN assignment."
},
"status": {
"type": "string",
"enum": [
"Active",
"Expiring soon",
"Not assigned"
],
"description": "Current assignment status."
},
"ipv6": {
"type": "object",
"properties": {
"prefix": {
"type": "string",
"description": "Assigned IPv6 subnet prefix.",
"nullable": true
},
"address": {
"type": "string",
"description": "IPv6 address assigned to the MX on the VLAN."
},
"linkLocal": {
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Link-local address.",
"nullable": true
}
},
"description": "IPv6 link-local address."
},
"solicitedNodeMulticast": {
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Solicited-node multicast address.",
"nullable": true
}
},
"description": "IPv6 solicited-node multicast address."
}
},
"required": [
"address"
],
"description": "IPv6 assignment details for the VLAN."
}
},
"required": [
"status"
]
}
},
"example": [
{
"vlan": {
"id": 100,
"name": "My VLAN"
},
"origin": {
"interface": "wan1",
"prefix": "2001:db8:3c4d:15::/64"
},
"status": "Active",
"ipv6": {
"prefix": "2001:db8:3c4d:15::/64",
"address": "2001:db8:3c4d:15::1",
"linkLocal": {
"address": "2001:db8:3c4d:15::1"
},
"solicitedNodeMulticast": {
"address": "2001:db8:3c4d:15::1"
}
}
}
]
}
}
}
},
"security": [
{
"oauth2": [
"sdwan:telemetry:read"
]
}
],
"summary": "Return prefixes assigned to all IPv6 enabled VLANs on an appliance.",
"tags": [
"appliance",
"monitor",
"prefixes",
"delegated",
"vlanAssignments"
]
}
},
"/devices/{serial}/appliance/radio/settings": {
"get": {
"description": "Return the radio settings of an appliance",
"operationId": "getDeviceApplianceRadioSettings",
"parameters": [
{
"name": "serial",
"in": "path",
"description": "Serial",
"schema": {
"type": "string"
},
"required": true
}
],
"responses": {
"200": {
"description": "Successful operation",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"serial": {
"type": "string",
"description": "The device serial"
},
"rfProfileId": {
"type": "string",
"description": "RF Profile ID"
},
"twoFourGhzSettings": {
"type": "object",
"properties": {
"channel": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5,
# --- truncated at 32 KB (810 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cisco-meraki/refs/heads/main/openapi/cisco-meraki-appliance-api-openapi.json