openapi: 3.0.0
info:
version: 1.54.0
title: KPN SD-LAN SD-WAN Network View API
description: >-
The SD-LAN SD-WAN Network View API is a modern REST API based on the OpenAPI specification.
The Network View API gives users read rights to retrieve information from the `Network View API` resources.
- **Note**: By default you have read only access but based on your requirements and contract you can be granted `Manager` access to this API which is more than read only. To request manager access, please contact us at api_developer@kpn.com.
---
## [Source view](https://app.swaggerhub.com/apis/kpn/kpn-sd_lan_sd_wan_network_view_api/)
[Documentation view](https://app.swaggerhub.com/apis-docs/kpn/kpn-sd_lan_sd_wan_network_view_api/)
---
## [KPN Developer](https://developer.kpn.com/)
[Getting Started](https://developer.kpn.com/getting-started)
servers:
- url: https://api-prd.kpn.com/kpn/meraki
paths:
/organizations/{organizationId}/networks:
get:
summary: List networks in an organization
description: Retrieve the list of networks for a given organization.
operationId: getOrganizationNetworks
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
description: The ID of the organization.
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
name:
type: string
example:
- id: N_12345
name: Test Network
/organizations/{organizationId}/devices:
get:
summary: List devices in an organization
description: Retrieve the list of devices for a given organization.
operationId: getOrganizationDevices
parameters:
- name: organizationId
in: path
required: true
schema:
type: string
description: The ID of the organization.
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
model:
type: string
name:
type: string
example:
- serial: Q234-ABCD-5678
model: MX67
name: Main Office MX
/networks/{networkId}/clients:
get:
summary: List clients in a network
description: Retrieve the list of clients for a given network.
operationId: getNetworkClients
parameters:
- name: networkId
in: path
required: true
schema:
type: string
description: The ID of the network.
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
mac:
type: string
description:
type: string
example:
- id: C12345
mac: '00:11:22:33:44:55'
description: Test Client
/getOrganizations: {}
/getOrganizationNetworks: {}
/getOrganizationDevices: {}
/getNetworkClients: {}
/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
example:
- subnet: 192.168.1.0/24
vlanId: 100
usedCount: 2
freeCount: 251
summary: Return the DHCP subnet information for an appliance
tags:
- appliance.monitor
/devices/{serial}/appliance/performance:
get:
description: Return the performance score for a single MX. Only primary MX 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
example:
perfScore: 10
summary: Return the performance score for a single MX
tags:
- appliance.monitor
/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
example:
- origin:
interface: wan1
prefix: 2001:db8:3c4d:15::/64
counts:
assigned: 2
available: 253
method: auto
description: My ISP provider
isPreferred: true
expiresAt: '2018-05-12T00:00:00Z'
summary: Return current delegated IPv6 prefixes on an appliance.
tags:
- appliance.monitor
/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
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
summary: Return prefixes assigned to all IPv6 enabled VLANs on an appliance.
tags:
- appliance.monitor
/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
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
description: Manual channel for 2.4 GHz
targetPower:
type: integer
description: Manual target power for 2.4 GHz
description: Manual radio settings for 2.4 GHz
fiveGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
description: Manual channel for 5 GHz
channelWidth:
type: integer
enum:
- 0
- 20
- 40
- 80
- 160
description: Manual channel width for 5 GHz
targetPower:
type: integer
description: Manual target power for 5 GHz
description: Manual radio settings for 5 GHz
example:
serial: Q234-ABCD-5678
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
summary: Return the radio settings of an appliance
tags:
- appliance.configure
put:
description: Update the radio settings of an appliance
operationId: updateDeviceApplianceRadioSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rfProfileId:
type: string
description: The ID of an RF profile to assign to the device. If the value of this parameter is null, the appropriate basic RF profile (indoor or outdoor) will be assigned to the device. Assigning an RF profile will clear ALL manually configured overrides on the device (channel width, channel, power).
twoFourGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
description: Sets a manual channel for 2.4 GHz. Can be '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13' or '14' or null for using auto channel.
targetPower:
type: integer
description: Set a manual target power for 2.4 GHz (dBm). Enter null for using auto power range.
description: Manual radio settings for 2.4 GHz.
fiveGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
description: Sets a manual channel for 5 GHz. Can be '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161', '165', '169', '173' or '177' or null for using auto channel.
channelWidth:
type: integer
enum:
- 0
- 20
- 40
- 80
- 160
description: Sets a manual channel width for 5 GHz. Can be '0', '20', '40', '80' or '160' or null for using auto channel width.
targetPower:
type: integer
description: Set a manual target power for 5 GHz (dBm). Enter null for using auto power range.
description: Manual radio settings for 5 GHz.
example:
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
required: false
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
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
description: Manual channel for 2.4 GHz
targetPower:
type: integer
description: Manual target power for 2.4 GHz
description: Manual radio settings for 2.4 GHz
fiveGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
description: Manual channel for 5 GHz
channelWidth:
type: integer
enum:
- 0
- 20
- 40
- 80
- 160
description: Manual channel width for 5 GHz
targetPower:
type: integer
description: Manual target power for 5 GHz
description: Manual radio settings for 5 GHz
example:
serial: Q234-ABCD-5678
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
summary: Update the radio settings of an appliance
tags:
- appliance.configure
/devices/{serial}/appliance/uplinks/settings:
get:
description: Return the uplink settings for an MX appliance
operationId: getDeviceApplianceUplinksSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaces:
type: object
properties:
wan1:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 1 settings.
wan2:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 2 settings.
description: Interface settings.
example:
interfaces:
wan1:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
wan2:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
summary: Return the uplink settings for an MX appliance
tags:
- appliance.configure
put:
description: Update the uplink settings for an MX appliance
operationId: updateDeviceApplianceUplinksSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
interfaces:
type: object
properties:
wan1:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
password:
type: string
description: Password for PPPoE authentication. This parameter is not returned.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 1 settings.
wan2:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
password:
type: string
description: Password for PPPoE authentication. This parameter is not returned.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 2 settings.
description: Interface settings.
example:
interfaces:
wan1:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
password: password
wan2:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
password: password
required:
- interfaces
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaces:
type: object
properties:
wan1:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 1 settings.
wan2:
type: object
properties:
enabled:
type: boolean
description: Enable or disable the interface.
vlanTagging:
type: object
properties:
enabled:
type: boolean
description: Whether VLAN tagging is enabled.
vlanId:
type: integer
description: The ID of the VLAN to use for VLAN tagging.
description: VLAN tagging settings.
svis:
type: object
properties:
ipv4:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: IP address and subnet mask when in static mode.
gateway:
type: string
description: Gateway IP address when in static mode.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv4 settings for static/dynamic mode.
ipv6:
type: object
properties:
assignmentMode:
type: string
enum:
- dynamic
- static
description: The assignment mode for this SVI. Applies only when PPPoE is disabled.
address:
type: string
description: Static address that will override the one(s) received by SLAAC.
gateway:
type: string
description: Static gateway that will override the one received by autoconf.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The nameserver settings for this SVI.
description: IPv6 settings for static/dynamic mode.
description: SVI settings by protocol.
pppoe:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE is enabled.
authentication:
type: object
properties:
enabled:
type: boolean
description: Whether PPPoE authentication is enabled.
username:
type: string
description: Username for PPPoE authentication.
description: Settings for PPPoE Authentication.
description: Configuration options for PPPoE.
description: WAN 2 settings.
description: Interface settings.
example:
interfaces:
wan1:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
wan2:
enabled: true
vlanTagging:
enabled: true
vlanId: 1
svis:
ipv4:
assignmentMode: static
address: 9.10.11.10/16
gateway: 13.14.15.16
nameservers:
addresses:
- 1.2.3.4
ipv6:
assignmentMode: static
address: 1:2:3::4
gateway: 1:2:3::5
nameservers:
addresses:
- 1001:4860:4860::8888
- 1001:4860:4860::8844
pppoe:
enabled: true
authentication:
enabled: true
username: username
summary: Update the uplink settings for an MX appliance
tags:
- appliance.configure
/devices/{serial}/appliance/vmx/authenticationToken:
post:
description: Generate a new vMX authentication token
operationId: createDeviceApplianceVmxAuthenticationToken
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
token:
type: string
description: The newly generated authentication token for the vMX instance
expiresAt:
type: string
description: The expiration time for the token, in ISO 8601 format
example:
token: ffc0b7b578b61be5bd1d172132c78044/9af03bd84d474
expiresAt: '2021-06-18T12:40:10Z'
summary: Generate a new vMX authentication token
tags:
- appliance.configure
/devices/{serial}/cellularGateway/lan:
get:
description: Show the LAN Settings of a MG
operationId: getDeviceCellularGatewayLan
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
deviceName:
type: string
description: Name of the MG.
deviceLanIp:
type: string
description: Lan IP of the MG
deviceSubnet:
type: string
description: Subnet configuration of the MG.
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name of the assignment
ip:
type: string
description: The IP address you want to assign to a specific server or device
mac:
type: string
description: The MAC address of the server or device that hosts the internal resource that you wish to receive the specified IP address
description: list of all fixed IP assignments for a single MG
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: Starting IP included in the reserved range of IPs
end:
type: string
description: Ending IP included in the reserved range of IPs
comment:
type: string
description: Comment explaining the reserved IP range
description: list of all reserved IP ranges for a single MG
example:
deviceName: name of the MG
deviceLanIp: 192.168.0.33
deviceSubnet: 192.168.0.32/27
fixedIpAssignments:
- name: server 1
ip: 192.168.0.10
mac: 0b:00:00:00:00:ac
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
summary: Show the LAN Settings of a MG
tags:
- cellularGateway.configure
put:
description: Update the LAN Settings for a single MG.
operationId: updateDeviceCellularGatewayLan
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: Starting IP included in the reserved range of IPs
end:
type: string
description: Ending IP included in the reserved range of IPs
comment:
type: string
description: Comment explaining the reserved IP range
required:
- start
- end
- comment
description: list of all reserved IP ranges for a single MG
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name of the assignment
ip:
type: string
description: The IP address you want to assign to a specific server or device
mac:
type: string
description: The MAC address of the server or device that hosts the internal resource that you wish to receive the specified IP address
required:
- ip
- mac
description: list of all fixed IP assignments for a single MG
example:
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
fixedIpAssignments:
- name: server 1
ip: 192.168.0.10
mac: 0b:00:00:00:00:ac
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
deviceName:
type: string
description: Name of the MG.
deviceLanIp:
type: string
description: Lan IP of the MG
deviceSubnet:
type: string
description: Subnet configuration of the MG.
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name of the assignment
ip:
type: string
description: The IP address you want to assign to a specific server or device
mac:
type: string
description: The MAC address of the server or device that hosts the internal resource that you wish to receive the specified IP address
description: list of all fixed IP assignments for a single MG
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: Starting IP included in the reserved range of IPs
end:
type: string
description: Ending IP included in the reserved range of IPs
comment:
type: string
description: Comment explaining the reserved IP range
description: list of all reserved IP ranges for a single MG
example:
deviceName: name of the MG
deviceLanIp: 192.168.0.33
deviceSubnet: 192.168.0.32/27
fixedIpAssignments:
- name: server 1
ip: 192.168.0.10
mac: 0b:00:00:00:00:ac
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
summary: Update the LAN Settings for a single MG.
tags:
- cellularGateway.configure
/devices/{serial}/cellularGateway/portForwardingRules:
get:
description: Returns the port forwarding rules for a single MG.
operationId: getDeviceCellularGatewayPortForwardingRules
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name for the rule
lanIp:
type: string
description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
publicPort:
type: string
description: A port or port ranges that will be forwarded to the host on the LAN
localPort:
type: string
description: A port or port ranges that will receive the forwarded traffic from the WAN
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges.
protocol:
type: string
description: TCP or UDP
access:
type: string
description: '`any` or `restricted`. Specify the right to make inbound connections on the specified ports or port ranges. If `restricted`, a list of allowed IPs is mandatory.'
description: An array of port forwarding params
example:
rules:
- name: test
lanIp: 172.31.128.5
publicPort: 11-12
localPort: '4'
allowedIps:
- 10.10.10.10
- 10.10.10.11
protocol: tcp
access: any
summary: Returns the port forwarding rules for a single MG.
tags:
- cellularGateway.configure
put:
description: Updates the port forwarding rules for a single MG.
operationId: updateDeviceCellularGatewayPortForwardingRules
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name for the rule
lanIp:
type: string
description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
publicPort:
type: string
description: A port or port ranges that will be forwarded to the host on the LAN
localPort:
type: string
description: A port or port ranges that will receive the forwarded traffic from the WAN
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges.
protocol:
type: string
description: TCP or UDP
access:
type: string
description: '`any` or `restricted`. Specify the right to make inbound connections on the specified ports or port ranges. If `restricted`, a list of allowed IPs is mandatory.'
required:
- lanIp
- publicPort
- localPort
- protocol
- access
description: An array of port forwarding params
example:
rules:
- name: test
lanIp: 172.31.128.5
publicPort: 11-12
localPort: '4'
allowedIps:
- 10.10.10.10
- 10.10.10.11
protocol: tcp
access: any
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name for the rule
lanIp:
type: string
description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
publicPort:
type: string
description: A port or port ranges that will be forwarded to the host on the LAN
localPort:
type: string
description: A port or port ranges that will receive the forwarded traffic from the WAN
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges.
protocol:
type: string
description: TCP or UDP
access:
type: string
description: '`any` or `restricted`. Specify the right to make inbound connections on the specified ports or port ranges. If `restricted`, a list of allowed IPs is mandatory.'
description: An array of port forwarding params
example:
rules:
- name: test
lanIp: 172.31.128.5
publicPort: 11-12
localPort: '4'
allowedIps:
- 10.10.10.10
- 10.10.10.11
protocol: tcp
access: any
summary: Updates the port forwarding rules for a single MG.
tags:
- cellularGateway.configure
/devices/{serial}/switch/ports:
get:
description: List the switch ports for a switch
operationId: getDeviceSwitchPorts
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:
portId:
type: string
description: The identifier of the switch port.
name:
type: string
description: The name of the switch port.
tags:
type: array
items:
type: string
description: The list of tags of the switch port.
enabled:
type: boolean
description: The status of the switch port.
poeEnabled:
type: boolean
description: The PoE status of the switch port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch port.
adaptivePolicyGroupId:
type: string
description: The adaptive policy group ID that will be used to tag traffic through this switch port. This ID must pre-exist during the configuration, else needs to be created using adaptivePolicy/groups API. Cannot be applied to a port on a switch bound to profile.
adaptivePolicyGroup:
type: object
properties:
id:
type: string
description: The ID of the adaptive policy group.
name:
type: string
description: The name of the adaptive policy group.
description: The adaptive policy group data of the port.
peerSgtCapable:
type: boolean
description: If true, Peer SGT is enabled for traffic through this switch port. Applicable to trunk port only, not access port. Cannot be applied to a port on a switch bound to profile.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
- portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
adaptivePolicyGroupId: '123'
adaptivePolicyGroup:
id: '123'
name: Adaptive Policy Group
peerSgtCapable: false
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: List the switch ports for a switch
tags:
- switch.configure
/devices/{serial}/switch/ports/cycle:
post:
description: Cycle a set of switch ports
operationId: cycleDeviceSwitchPorts
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
ports:
type: array
items:
type: string
description: List of switch ports
example:
ports:
- '1'
- 2-5
- 1_MA-MOD-8X10G_1
- 1_MA-MOD-8X10G_2-1_MA-MOD-8X10G_8
required:
- ports
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
ports:
type: array
items:
type: string
description: List of switch ports
example:
ports:
- '1'
- 2-5
- 1_MA-MOD-8X10G_1
- 1_MA-MOD-8X10G_2-1_MA-MOD-8X10G_8
summary: Cycle a set of switch ports
tags:
- switch.monitor
/devices/{serial}/switch/ports/statuses:
get:
description: Return the status for all the ports of a switch
operationId: getDeviceSwitchPortsStatuses
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 31 days from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
enabled:
type: boolean
description: Whether the port is configured to be enabled.
status:
type: string
enum:
- Connected
- Disabled
- Disconnected
description: The current connection status of the port.
isUplink:
type: boolean
description: Whether the port is the switch's uplink.
errors:
type: array
items:
type: string
description: All errors present on the port.
warnings:
type: array
items:
type: string
description: All warnings present on the port.
speed:
type: string
enum:
- ''
- 1 Gbps
- 10 Gbps
- 10 Mbps
- 100 Gbps
- 100 Mbps
- 2.5 Gbps
- 20 Gbps
- 25 Gbps
- 40 Gbps
- 5 Gbps
- 50 Gbps
description: The current data transfer rate which the port is operating at.
duplex:
type: string
enum:
- ''
- full
- half
description: The current duplex of a connected port.
spanningTree:
type: object
properties:
statuses:
type: array
items:
type: string
description: The current Spanning Tree Protocol statuses of the port.
description: The Spanning Tree Protocol (STP) information of the connected device.
poe:
type: object
properties:
isAllocated:
type: boolean
description: Whether the port is drawing power
description: PoE status of the port.
usageInKb:
type: object
properties:
total:
type: integer
description: The total amount of data sent and received (in kilobytes).
sent:
type: integer
description: The amount of data sent (in kilobytes).
recv:
type: integer
description: The amount of data received (in kilobytes).
description: A breakdown of how many kilobytes have passed through this port during the timespan.
cdp:
type: object
properties:
systemName:
type: string
description: The system name.
platform:
type: string
description: Identifies the hardware platform of the device.
deviceId:
type: string
description: Identifies the device name.
portId:
type: string
description: Identifies the port from which the CDP packet was sent.
nativeVlan:
type: integer
description: Indicates, per interface, the assumed VLAN for untagged packets on the interface.
address:
type: string
description: Contains network addresses of both receiving and sending devices.
managementAddress:
type: string
description: The device's management IP.
version:
type: string
description: Contains the device software release information.
vtpManagementDomain:
type: string
description: Advertises the configured VLAN Trunking Protocl (VTP)-management-domain name of the system.
capabilities:
type: string
description: Identifies the device type, which indicates the functional capabilities of the device.
description: The Cisco Discovery Protocol (CDP) information of the connected device.
lldp:
type: object
properties:
systemName:
type: string
description: The device's system name.
systemDescription:
type: string
description: The device's system description.
chassisId:
type: string
description: The device's chassis ID.
portId:
type: string
description: Identifies the port from which the LLDP packet was sent
managementVlan:
type: integer
description: The device's management VLAN.
portVlan:
type: integer
description: The port's VLAN.
managementAddress:
type: string
description: The device's management IP.
portDescription:
type: string
description: Description of the port from which the LLDP packet was sent.
systemCapabilities:
type: string
description: Identifies the device type, which indicates the functional capabilities of the device.
description: The Link Layer Discovery Protocol (LLDP) information of the connected device.
clientCount:
type: integer
description: The number of clients connected through this port.
powerUsageInWh:
type: number
format: float
description: How much power (in watt-hours) has been delivered by this port during the timespan.
trafficInKbps:
type: object
properties:
total:
type: number
format: float
description: The average speed of the data sent and received (in kilobits-per-second).
sent:
type: number
format: float
description: The average speed of the data sent (in kilobits-per-second).
recv:
type: number
format: float
description: The average speed of the data received (in kilobits-per-second).
description: A breakdown of the average speed of data that has passed through this port during the timespan.
securePort:
type: object
properties:
enabled:
type: boolean
description: Whether Secure Port is turned on for this port.
active:
type: boolean
description: Whether Secure Port is currently active for this port.
authenticationStatus:
type: string
enum:
- Authentication failure
- Authentication in progress
- Authentication successful
- Authentication timed out
- Disabled
- Enabled
description: The current Secure Port status.
configOverrides:
type: object
properties:
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the . For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the . Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the . Only applicable to trunk ports.
description: The configuration overrides applied to this port when Secure Port is active.
description: The Secure Port status of the port.
example:
- portId: '1'
enabled: true
status: Connected
isUplink: false
errors:
- PoE overload
- Very high proportion of CRC errors
warnings:
- SecurePort authentication in progress
- PoE port was denied power
- High proportion of CRC errors
speed: 10 Gbps
duplex: full
spanningTree:
statuses:
- Learning
poe:
isAllocated: false
usageInKb:
total: 40867
sent: 23008
recv: 17859
cdp:
systemName: ''
platform: MS350-24X
deviceId: 0c8ddbddee:ff
portId: Port 20
nativeVlan: 1
address: 10.0,0.1
managementAddress: 10.0.0.100
version: '1'
vtpManagementDomain: ''
capabilities: Switch
lldp:
systemName: MS350-24X - Test
systemDescription: MS350-24X Cloud Managed PoE Switch
chassisId: 0c:8d:db:dd:ee:ff
portId: '20'
managementVlan: 1
portVlan: 1
managementAddress: 10.0.0.100
portDescription: Port 20
systemCapabilities: switch
clientCount: 10
powerUsageInWh: 55.9
trafficInKbps:
total: 2.2
sent: 1.2
recv: 1
securePort:
enabled: true
active: true
authenticationStatus: Authentication in progress
configOverrides:
type: trunk
vlan: 12
voiceVlan: 34
allowedVlans: all
summary: Return the status for all the ports of a switch
tags:
- switch.monitor
/devices/{serial}/switch/ports/statuses/packets:
get:
description: Return the packet counters for all the ports of a switch
operationId: getDeviceSwitchPortsStatusesPackets
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 1 day from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 1 day. The default is 1 day.
schema:
type: number
format: float
maximum: 86400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
packets:
type: array
items:
type: object
properties:
desc:
type: string
description: The type of packets being counted.
total:
type: integer
description: The total count of sent and received packets.
sent:
type: integer
description: The total count of packets sent by the switch during the timespan.
recv:
type: integer
description: The total count of packets received by the switch during the timespan.
ratePerSec:
type: object
properties:
total:
type: integer
description: The rate of all packets sent and received during the timespan
sent:
type: integer
description: The rate of packets sent during the timespan
recv:
type: integer
description: The rate of packets received during the timespan
description: Packet rates measured in packets per second.
description: The packet counts on the switch.
example:
- portId: '1'
packets:
- desc: Total
total: 112081
sent: 104135
recv: 7946
ratePerSec:
total: 1
sent: 1
recv: 0
summary: Return the packet counters for all the ports of a switch
tags:
- switch.monitor
/devices/{serial}/switch/ports/{portId}:
get:
description: Return a switch port
operationId: getDeviceSwitchPort
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
portId:
type: string
description: The identifier of the switch port.
name:
type: string
description: The name of the switch port.
tags:
type: array
items:
type: string
description: The list of tags of the switch port.
enabled:
type: boolean
description: The status of the switch port.
poeEnabled:
type: boolean
description: The PoE status of the switch port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch port.
adaptivePolicyGroupId:
type: string
description: The adaptive policy group ID that will be used to tag traffic through this switch port. This ID must pre-exist during the configuration, else needs to be created using adaptivePolicy/groups API. Cannot be applied to a port on a switch bound to profile.
adaptivePolicyGroup:
type: object
properties:
id:
type: string
description: The ID of the adaptive policy group.
name:
type: string
description: The name of the adaptive policy group.
description: The adaptive policy group data of the port.
peerSgtCapable:
type: boolean
description: If true, Peer SGT is enabled for traffic through this switch port. Applicable to trunk port only, not access port. Cannot be applied to a port on a switch bound to profile.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
adaptivePolicyGroupId: '123'
adaptivePolicyGroup:
id: '123'
name: Adaptive Policy Group
peerSgtCapable: false
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: Return a switch port
tags:
- switch.configure
put:
description: Update a switch port
operationId: updateDeviceSwitchPort
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the switch port.
tags:
type: array
items:
type: string
description: The list of tags of the switch port.
enabled:
type: boolean
description: The status of the switch port.
poeEnabled:
type: boolean
description: The PoE status of the switch port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch port.
adaptivePolicyGroupId:
type: string
description: The adaptive policy group ID that will be used to tag traffic through this switch port. This ID must pre-exist during the configuration, else needs to be created using adaptivePolicy/groups API. Cannot be applied to a port on a switch bound to profile.
peerSgtCapable:
type: boolean
description: If true, Peer SGT is enabled for traffic through this switch port. Applicable to trunk port only, not access port. Cannot be applied to a port on a switch bound to profile.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch port.
description: dot3az settings for the port
example:
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
portScheduleId: '1234'
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
adaptivePolicyGroupId: '123'
peerSgtCapable: false
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
dot3az:
enabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
portId:
type: string
description: The identifier of the switch port.
name:
type: string
description: The name of the switch port.
tags:
type: array
items:
type: string
description: The list of tags of the switch port.
enabled:
type: boolean
description: The status of the switch port.
poeEnabled:
type: boolean
description: The PoE status of the switch port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch port.
adaptivePolicyGroupId:
type: string
description: The adaptive policy group ID that will be used to tag traffic through this switch port. This ID must pre-exist during the configuration, else needs to be created using adaptivePolicy/groups API. Cannot be applied to a port on a switch bound to profile.
adaptivePolicyGroup:
type: object
properties:
id:
type: string
description: The ID of the adaptive policy group.
name:
type: string
description: The name of the adaptive policy group.
description: The adaptive policy group data of the port.
peerSgtCapable:
type: boolean
description: If true, Peer SGT is enabled for traffic through this switch port. Applicable to trunk port only, not access port. Cannot be applied to a port on a switch bound to profile.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
adaptivePolicyGroupId: '123'
adaptivePolicyGroup:
id: '123'
name: Adaptive Policy Group
peerSgtCapable: false
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: Update a switch port
tags:
- switch.configure
/devices/{serial}/switch/routing/interfaces:
get:
description: List layer 3 interfaces for a switch. Those for a stack may be found under switch stack routing.
operationId: getDeviceSwitchRoutingInterfaces
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:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
- interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: List layer 3 interfaces for a switch
tags:
- switch.configure
post:
description: Create a layer 3 interface for a switch
operationId: createDeviceSwitchRoutingInterface
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: A friendly name or description for the interface or VLAN.
subnet:
type: string
description: The network that this routed interface is on, in CIDR notation (ex. 10.1.1.0/24).
interfaceIp:
type: string
description: The IP address this switch will use for layer 3 routing on this VLAN or subnet. This cannot be the same as the switch's management IP.
multicastRouting:
type: string
enum:
- IGMP snooping querier
- disabled
- enabled
description: 'Enable multicast support if, multicast routing between VLANs is required. Options are: ''disabled'', ''enabled'' or ''IGMP snooping querier''. Default is ''disabled''.'
vlanId:
type: integer
description: The VLAN this routed interface is on. VLAN must be between 1 and 4094.
defaultGateway:
type: string
description: The next hop for any traffic that isn't going to a directly connected subnet or over a static route. This IP address must exist in a subnet with a routed interface. Required if this is the first IPv4 interface.
ospfSettings:
type: object
properties:
area:
type: string
description: The OSPF area to which this interface should belong. Can be either 'disabled' or the identifier of an existing OSPF area. Defaults to 'disabled'.
cost:
type: integer
description: The path cost for this interface. Defaults to 1, but can be increased up to 65535 to give lower priority.
isPassiveEnabled:
type: boolean
description: When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
description: The OSPF routing settings of the interface.
ipv6:
type: object
properties:
assignmentMode:
type: string
description: The IPv6 assignment mode for the interface. Can be either 'eui-64' or 'static'.
prefix:
type: string
description: The IPv6 prefix of the interface. Required if IPv6 object is included.
address:
type: string
description: The IPv6 address of the interface. Required if assignmentMode is 'static'. Must not be included if assignmentMode is 'eui-64'.
gateway:
type: string
description: The IPv6 default gateway of the interface. Required if prefix is defined and this is the first interface with IPv6 configured for the switch.
description: The IPv6 settings of the interface.
example:
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
defaultGateway: 192.168.1.1
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ipv6:
assignmentMode: static
prefix: 1:2:3:4::/48
address: 1:2:3:4::1
gateway: 1:2:3:4::2
required: false
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: Create a layer 3 interface for a switch
tags:
- switch.configure
/devices/{serial}/switch/routing/interfaces/{interfaceId}:
get:
description: Return a layer 3 interface for a switch
operationId: getDeviceSwitchRoutingInterface
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: Return a layer 3 interface for a switch
tags:
- switch.configure
put:
description: Update a layer 3 interface for a switch
operationId: updateDeviceSwitchRoutingInterface
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: A friendly name or description for the interface or VLAN.
subnet:
type: string
description: The network that this routed interface is on, in CIDR notation (ex. 10.1.1.0/24).
interfaceIp:
type: string
description: The IP address this switch will use for layer 3 routing on this VLAN or subnet. This cannot be the same as the switch's management IP.
multicastRouting:
type: string
enum:
- IGMP snooping querier
- disabled
- enabled
description: 'Enable multicast support if, multicast routing between VLANs is required. Options are: ''disabled'', ''enabled'' or ''IGMP snooping querier''. Default is ''disabled''.'
vlanId:
type: integer
description: The VLAN this routed interface is on. VLAN must be between 1 and 4094.
defaultGateway:
type: string
description: The next hop for any traffic that isn't going to a directly connected subnet or over a static route. This IP address must exist in a subnet with a routed interface. Required if this is the first IPv4 interface.
ospfSettings:
type: object
properties:
area:
type: string
description: The OSPF area to which this interface should belong. Can be either 'disabled' or the identifier of an existing OSPF area. Defaults to 'disabled'.
cost:
type: integer
description: The path cost for this interface. Defaults to 1, but can be increased up to 65535 to give lower priority.
isPassiveEnabled:
type: boolean
description: When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
description: The OSPF routing settings of the interface.
ipv6:
type: object
properties:
assignmentMode:
type: string
description: The IPv6 assignment mode for the interface. Can be either 'eui-64' or 'static'.
prefix:
type: string
description: The IPv6 prefix of the interface. Required if IPv6 object is included.
address:
type: string
description: The IPv6 address of the interface. Required if assignmentMode is 'static'. Must not be included if assignmentMode is 'eui-64'.
gateway:
type: string
description: The IPv6 default gateway of the interface. Required if prefix is defined and this is the first interface with IPv6 configured for the switch.
description: The IPv6 settings of the interface.
example:
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
defaultGateway: 192.168.1.1
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ipv6:
assignmentMode: static
prefix: 1:2:3:4::/48
address: 1:2:3:4::1
gateway: 1:2:3:4::2
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: Update a layer 3 interface for a switch
tags:
- switch.configure
delete:
description: Delete a layer 3 interface from the switch
operationId: deleteDeviceSwitchRoutingInterface
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a layer 3 interface from the switch
tags:
- switch.configure
/devices/{serial}/switch/routing/interfaces/{interfaceId}/dhcp:
get:
description: Return a layer 3 interface DHCP configuration for a switch
operationId: getDeviceSwitchRoutingInterfaceDhcp
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
description: The DHCP mode options for the switch stack interface ('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch stack interface
dhcpLeaseTime:
type: string
description: The DHCP lease time config for the dhcp server running on the switch stack interface ('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
description: The DHCP name server option for the dhcp server running on the switch stack interface ('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: The DHCP name server IPs when DHCP name server option is 'custom'
bootOptionsEnabled:
type: boolean
description: Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch stack interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch stack interface
bootFileName:
type: string
description: The PXE boot server file name for the DHCP server running on the switch stack interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
description: The type of the DHCP option which should be one of ('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
description: Array of DHCP options consisting of code, type and value for the DHCP server running on the switch stack interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
summary: Return a layer 3 interface DHCP configuration for a switch
tags:
- switch.configure
put:
description: Update a layer 3 interface DHCP configuration for a switch
operationId: updateDeviceSwitchRoutingInterfaceDhcp
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
enum:
- dhcpDisabled
- dhcpRelay
- dhcpServer
description: |-
The DHCP mode options for the switch interface
('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch interface
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: |-
The DHCP lease time config for the dhcp server running on switch interface
('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
enum:
- custom
- googlePublicDns
- openDns
description: |-
The DHCP name server option for the dhcp server running on the switch interface
('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: |-
The DHCP name server IPs when DHCP name server option is
'custom'
bootOptionsEnabled:
type: boolean
description: |-
Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch
interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch interface
bootFileName:
type: string
description: The PXE boot server filename for the DHCP server running on the switch interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
enum:
- hex
- integer
- ip
- text
description: |-
The type of the DHCP option which should be one of
('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
required:
- code
- type
- value
description: Array of DHCP options consisting of code, type and value for the DHCP server running on the switch interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
required:
- start
- end
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
required:
- name
- mac
- ip
description: Array of DHCP fixed IP assignments for the DHCP server running on the switch interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
description: The DHCP mode options for the switch stack interface ('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch stack interface
dhcpLeaseTime:
type: string
description: The DHCP lease time config for the dhcp server running on the switch stack interface ('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
description: The DHCP name server option for the dhcp server running on the switch stack interface ('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: The DHCP name server IPs when DHCP name server option is 'custom'
bootOptionsEnabled:
type: boolean
description: Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch stack interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch stack interface
bootFileName:
type: string
description: The PXE boot server file name for the DHCP server running on the switch stack interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
description: The type of the DHCP option which should be one of ('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
description: Array of DHCP options consisting of code, type and value for the DHCP server running on the switch stack interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
summary: Update a layer 3 interface DHCP configuration for a switch
tags:
- switch.configure
/devices/{serial}/switch/routing/staticRoutes:
get:
description: List layer 3 static routes for a switch
operationId: getDeviceSwitchRoutingStaticRoutes
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:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
- staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: List layer 3 static routes for a switch
tags:
- switch.configure
post:
description: Create a layer 3 static route for a switch
operationId: createDeviceSwitchRoutingStaticRoute
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name or description for layer 3 static route
subnet:
type: string
description: The subnet which is routed via this static route and should be specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: IP address of the next hop device to which the device sends its traffic for the subnet
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static route via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static route over OSPF routes
example:
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
required:
- subnet
- nextHopIp
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Create a layer 3 static route for a switch
tags:
- switch.configure
/devices/{serial}/switch/routing/staticRoutes/{staticRouteId}:
get:
description: Return a layer 3 static route for a switch
operationId: getDeviceSwitchRoutingStaticRoute
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Return a layer 3 static route for a switch
tags:
- switch.configure
put:
description: Update a layer 3 static route for a switch
operationId: updateDeviceSwitchRoutingStaticRoute
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name or description for layer 3 static route
subnet:
type: string
description: The subnet which is routed via this static route and should be specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: IP address of the next hop device to which the device sends its traffic for the subnet
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static route via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static route over OSPF routes
example:
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
required: false
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Update a layer 3 static route for a switch
tags:
- switch.configure
delete:
description: Delete a layer 3 static route for a switch
operationId: deleteDeviceSwitchRoutingStaticRoute
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a layer 3 static route for a switch
tags:
- switch.configure
/devices/{serial}/switch/warmSpare:
get:
description: Return warm spare configuration for a switch
operationId: getDeviceSwitchWarmSpare
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Enable or disable warm spare for a switch
primarySerial:
type: string
description: Serial number of the primary switch
spareSerial:
type: string
description: Serial number of the warm spare switch
example:
enabled: true
primarySerial: Q234-ABCD-0001
spareSerial: Q234-ABCD-0002
summary: Return warm spare configuration for a switch
tags:
- switch.configure
put:
description: Update warm spare configuration for a switch. The spare will use the same L3 configuration as the primary. Note that this will irreversibly destroy any existing L3 configuration on the spare.
operationId: updateDeviceSwitchWarmSpare
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Enable or disable warm spare for a switch
spareSerial:
type: string
description: Serial number of the warm spare switch
example:
enabled: true
spareSerial: Q234-ABCD-0002
required:
- enabled
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Enable or disable warm spare for a switch
primarySerial:
type: string
description: Serial number of the primary switch
spareSerial:
type: string
description: Serial number of the warm spare switch
example:
enabled: true
primarySerial: Q234-ABCD-0001
spareSerial: Q234-ABCD-0002
summary: Update warm spare configuration for a switch
tags:
- switch.configure
/devices/{serial}/wireless/alternateManagementInterface/ipv6:
put:
description: Update alternate management interface IPv6 address
operationId: updateDeviceWirelessAlternateManagementInterfaceIpv6
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
addresses:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- ipv4
- ipv6
description: The IP protocol used for the address
assignmentMode:
type: string
enum:
- dynamic
- static
description: The type of address assignment. Either static or dynamic.
address:
type: string
description: The IP address configured for the alternate management interface
gateway:
type: string
description: The gateway address configured for the alternate managment interface
prefix:
type: string
description: The IPv6 prefix length of the IPv6 interface. Required if IPv6 object is included.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The DNS servers settings for this address.
description: configured alternate management interface addresses
example:
addresses:
- protocol: ipv6
assignmentMode: static
address: 2001:db8:3c4d:15::1
gateway: fe80:db8:c15:c0:d0c::10ca:1d02
prefix: 2001:db8:3c4d:15::/64
nameservers:
addresses:
- 2001:db8:3c4d:15::1
- 2001:db8:3c4d:15::1
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
addresses:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- ipv4
- ipv6
description: The IP protocol used for the address
assignmentMode:
type: string
enum:
- dynamic
- static
description: The type of address assignment. Either static or dynamic.
address:
type: string
description: The IP address configured for the alternate management interface
gateway:
type: string
description: The gateway address configured for the alternate managment interface
prefix:
type: string
description: The IPv6 prefix of the interface. Required if IPv6 object is included.
nameservers:
type: object
properties:
addresses:
type: array
items:
type: string
description: Up to 2 nameserver addresses to use, ordered in priority from highest to lowest priority.
description: The DNS servers settings for this address.
description: configured alternate management interface addresses
example:
addresses:
- protocol: ipv6
assignmentMode: static
address: 2001:db8:3c4d:15::1
gateway: fe80:db8:c15:c0:d0c::10ca:1d02
prefix: 2001:db8:3c4d:15::/64
nameservers:
addresses:
- 2001:db8:3c4d:15::1
- 2001:db8:3c4d:15::1
summary: Update alternate management interface IPv6 address
tags:
- wireless.configure
/devices/{serial}/wireless/bluetooth/settings:
get:
description: Return the bluetooth settings for a wireless device
operationId: getDeviceWirelessBluetoothSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
description: Desired UUID of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
major:
type: integer
description: Desired major value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
minor:
type: integer
description: Desired minor value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
example:
uuid: 00000000-0000-0000-000-000000000000
major: 13
minor: 125
summary: Return the bluetooth settings for a wireless device
tags:
- wireless.configure
put:
description: Update the bluetooth settings for a wireless device
operationId: updateDeviceWirelessBluetoothSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
description: Desired UUID of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
major:
type: integer
description: Desired major value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
minor:
type: integer
description: Desired minor value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
example:
uuid: 00000000-0000-0000-000-000000000000
major: 13
minor: 125
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
uuid:
type: string
description: Desired UUID of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
major:
type: integer
description: Desired major value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
minor:
type: integer
description: Desired minor value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
example:
uuid: 00000000-0000-0000-000-000000000000
major: 13
minor: 125
summary: Update the bluetooth settings for a wireless device
tags:
- wireless.configure
/devices/{serial}/wireless/connectionStats:
get:
description: Aggregated connectivity info for a given AP on this network
operationId: getDeviceWirelessConnectionStats
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 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
serial:
type: string
description: The serial number for the device
connectionStats:
type: object
properties:
assoc:
type: integer
description: The number of failed association attempts
auth:
type: integer
description: The number of failed authentication attempts
dhcp:
type: integer
description: The number of failed DHCP attempts
dns:
type: integer
description: The number of failed DNS attempts
success:
type: integer
description: The number of successful connection attempts
description: The connection stats of the device
example:
serial: Q234-ABCD-5678
connectionStats:
assoc: 0
auth: 1
dhcp: 0
dns: 0
success: 43
summary: Aggregated connectivity info for a given AP on this network
tags:
- wireless.monitor
/devices/{serial}/wireless/electronicShelfLabel:
get:
description: Return the ESL settings of a device
operationId: getDeviceWirelessElectronicShelfLabel
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
apEslId:
type: integer
description: An identifier for the device used by the ESL system
serial:
type: string
description: The serial number of the device
channel:
type: string
description: Desired ESL channel for the device, or 'Auto' (case insensitive) to use the recommended channel
enabled:
type: boolean
description: Turn ESL features on and off for this device
networkId:
type: string
description: The identifier for the device's network
hostname:
type: string
description: Hostname of the ESL management service
provider:
type: string
description: The service providing ESL functionality
example:
apEslId: 16777216
serial: Q234-ABCD-5678
channel: '1'
enabled: true
networkId: N_24329156
hostname: localhost:700
provider: imagotag
summary: Return the ESL settings of a device
tags:
- wireless.configure
put:
description: Update the ESL settings of a device
operationId: updateDeviceWirelessElectronicShelfLabel
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
channel:
type: string
description: Desired ESL channel for the device, or 'Auto' (case insensitive) to use the recommended channel
enabled:
type: boolean
description: Turn ESL features on and off for this device
example:
channel: '1'
enabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
apEslId:
type: integer
description: An identifier for the device used by the ESL system
serial:
type: string
description: The serial number of the device
channel:
type: string
description: Desired ESL channel for the device, or 'Auto' (case insensitive) to use the recommended channel
enabled:
type: boolean
description: Turn ESL features on and off for this device
networkId:
type: string
description: The identifier for the device's network
hostname:
type: string
description: Hostname of the ESL management service
provider:
type: string
description: The service providing ESL functionality
example:
apEslId: 16777216
serial: Q234-ABCD-5678
channel: '1'
enabled: true
networkId: N_24329156
hostname: localhost:700
provider: imagotag
summary: Update the ESL settings of a device
tags:
- wireless.configure
/devices/{serial}/wireless/latencyStats:
get:
description: Aggregated latency info for a given AP on this network
operationId: getDeviceWirelessLatencyStats
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 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: fields
in: query
description: 'Partial selection: If present, this call will return only the selected fields of ["rawDistribution", "avg"]. All fields will be returned by default. Selected fields must be entered as a comma separated string.'
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
serial: Q2JC-2MJM-FHRD
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
summary: Aggregated latency info for a given AP on this network
tags:
- wireless.monitor
/devices/{serial}/wireless/radio/settings:
get:
description: Return the radio settings of a device
operationId: getDeviceWirelessRadioSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
serial: Q234-ABCD-5678
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
summary: Return the radio settings of a device
tags:
- wireless.configure
put:
description: Update the radio settings of a device
operationId: updateDeviceWirelessRadioSettings
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rfProfileId:
type: string
description: The ID of an RF profile to assign to the device. If the value of this parameter is null, the appropriate basic RF profile (indoor or outdoor) will be assigned to the device. Assigning an RF profile will clear ALL manually configured overrides on the device (channel width, channel, power).
twoFourGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
description: Sets a manual channel for 2.4 GHz. Can be '1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13' or '14' or null for using auto channel.
targetPower:
type: integer
description: Set a manual target power for 2.4 GHz (dBm). Enter null for using auto power range.
description: Manual radio settings for 2.4 GHz.
fiveGhzSettings:
type: object
properties:
channel:
type: integer
enum:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
description: Sets a manual channel for 5 GHz. Can be '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161', '165', '169', '173' or '177' or null for using auto channel.
channelWidth:
type: integer
enum:
- 0
- 20
- 40
- 80
- 160
description: Sets a manual channel for 5 GHz. Can be '0', '20', '40', '80' or '160' or null for using auto channel width.
targetPower:
type: integer
description: Set a manual target power for 5 GHz (dBm). Enter null for using auto power range.
description: Manual radio settings for 5 GHz.
example:
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
serial: Q234-ABCD-5678
rfProfileId: '1234'
twoFourGhzSettings:
channel: 11
targetPower: 21
fiveGhzSettings:
channel: 149
channelWidth: 20
targetPower: 15
summary: Update the radio settings of a device
tags:
- wireless.configure
/devices/{serial}/wireless/status:
get:
description: Return the SSID statuses of an access point
operationId: getDeviceWirelessStatus
parameters:
- name: serial
in: path
description: Serial
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
basicServiceSets:
type: array
items:
type: object
properties:
ssidName:
type: string
description: Name of wireless network
ssidNumber:
type: integer
description: Unique identifier of wireless network
enabled:
type: boolean
description: Status of wireless network
band:
type: string
description: Frequency range used by wireless network
bssid:
type: string
description: Unique identifier of wireless access point
channel:
type: integer
description: Frequency channel used by wireless network
channelWidth:
type: string
description: Width of frequency channel used by wireless network
power:
type: string
description: Strength of wireless signal
visible:
type: boolean
description: Whether the SSID is advertised or hidden
broadcasting:
type: boolean
description: Whether the SSID is broadcasting based on an availability schedule
description: SSID status list
example:
basicServiceSets:
- ssidName: My SSID
ssidNumber: 0
enabled: true
band: 2.4 GHz
bssid: 8A:15:04:00:00:00
channel: 11
channelWidth: 20 MHz
power: 18 dBm
visible: true
broadcasting: true
summary: Return the SSID statuses of an access point
tags:
- wireless.monitor
/networks/{networkId}/appliance/clients/{clientId}/security/events:
get:
description: List the security events for a client. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
operationId: getNetworkApplianceClientSecurityEvents
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: clientId
in: path
description: Client ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. Data is gathered after the specified t0 value. The maximum lookback period is 791 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 791 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 less than or equal to 791 days. The default is 31 days.
schema:
type: number
format: float
maximum: 68342400
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: sortOrder
in: query
description: Sorted order of security events based on event detection time. Order options are 'ascending' or 'descending'. Default is ascending order.
schema:
type: string
enum:
- ascending
- descending
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
additionalProperties: true
example:
- ts: '2018-02-11T00:00:00.090210Z'
eventType: File Scanned
clientName: COMPUTER-M-V78J
clientMac: 10:dd:b1:eb:88:f8
clientIp: 192.168.128.2
srcIp: 192.168.128.2
destIp: 119.192.233.48
protocol: http
uri: http://www.favorite-icons.com/program/FavoriteIconsUninstall.exe
canonicalName: PUA.Win.Dropper.Kraddare::1201
destinationPort: 80
fileHash: 3ec1b9a95fe62aa25fc959643a0f227b76d253094681934daaf628d3574b3463
fileType: MS_EXE
fileSizeBytes: 193688
disposition: Malicious
action: Blocked
- ts: '2018-02-11T00:00:00.090210Z'
eventType: IDS Alert
deviceMac: 00:18:0a:01:02:03
clientMac: A1:B2:C3:D4:E5:F6
srcIp: 1.2.3.4:34195
destIp: 10.20.30.40:80
protocol: tcp/ip
priority: '2'
classification: '4'
blocked: true
message: SERVER-WEBAPP JBoss JMX console access attempt
signature: '1:21516:9'
sigSource: ''
ruleId: meraki:intrusion/snort/GID/1/SID/26267
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the security events for a client
tags:
- appliance.monitor
/networks/{networkId}/appliance/connectivityMonitoringDestinations:
get:
description: Return the connectivity testing destinations for an MX network
operationId: getNetworkApplianceConnectivityMonitoringDestinations
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to an empty string
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
summary: Return the connectivity testing destinations for an MX network
tags:
- appliance.configure
put:
description: Update the connectivity testing destinations for an MX network
operationId: updateNetworkApplianceConnectivityMonitoringDestinations
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to null
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
required:
- ip
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to an empty string
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
summary: Update the connectivity testing destinations for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/contentFiltering:
get:
description: Return the content filtering settings for an MX network
operationId: getNetworkApplianceContentFiltering
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
allowedUrlPatterns:
- http://www.example.org
- http://help.com.au
blockedUrlPatterns:
- http://www.example.com
- http://www.betting.com
blockedUrlCategories:
- id: meraki:contentFiltering/category/1
name: Real Estate
- id: meraki:contentFiltering/category/7
name: Shopping
urlCategoryListSize: topSites
summary: Return the content filtering settings for an MX network
tags:
- appliance.configure
put:
description: Update the content filtering settings for an MX network
operationId: updateNetworkApplianceContentFiltering
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
allowedUrlPatterns:
type: array
items:
type: string
description: A list of URL patterns that are allowed
blockedUrlPatterns:
type: array
items:
type: string
description: A list of URL patterns that are blocked
blockedUrlCategories:
type: array
items:
type: string
description: A list of URL categories to block
urlCategoryListSize:
type: string
enum:
- fullList
- topSites
description: URL category list size which is either 'topSites' or 'fullList'
example:
allowedUrlPatterns:
- http://www.example.org
- http://help.com.au
blockedUrlPatterns:
- http://www.example.com
- http://www.betting.com
blockedUrlCategories:
- meraki:contentFiltering/category/1
- meraki:contentFiltering/category/7
urlCategoryListSize: topSites
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
allowedUrlPatterns:
- http://www.example.org
- http://help.com.au
blockedUrlPatterns:
- http://www.example.com
- http://www.betting.com
blockedUrlCategories:
- id: meraki:contentFiltering/category/1
name: Real Estate
- id: meraki:contentFiltering/category/7
name: Shopping
urlCategoryListSize: topSites
summary: Update the content filtering settings for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/contentFiltering/categories:
get:
description: List all available content filtering categories for an MX network
operationId: getNetworkApplianceContentFilteringCategories
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
categories:
- id: meraki:contentFiltering/category/1
name: Real Estate
- id: meraki:contentFiltering/category/3
name: Financial Services
- ...
- id: meraki:contentFiltering/category/11
name: Adult and Pornography
summary: List all available content filtering categories for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/cellularFirewallRules:
get:
description: Return the cellular firewall rules for an MX network
operationId: getNetworkApplianceFirewallCellularFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
summary: Return the cellular firewall rules for an MX network
tags:
- appliance.configure
put:
description: Update the cellular firewall rules of an MX network
operationId: updateNetworkApplianceFirewallCellularFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
required:
- policy
- protocol
- srcCidr
- destCidr
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
summary: Update the cellular firewall rules of an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/firewalledServices:
get:
description: List the appliance services and their accessibility rules
operationId: getNetworkApplianceFirewallFirewalledServices
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
service:
type: string
description: Appliance service name
access:
type: string
description: A string indicating the rule for which IPs are allowed to use the specified service
allowedIps:
type: array
items:
type: string
description: An array of allowed IPs that can access the service
example:
- service: web
access: restricted
allowedIps:
- 123.123.123.1
summary: List the appliance services and their accessibility rules
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/firewalledServices/{service}:
get:
description: Return the accessibility settings of the given service ('ICMP', 'web', or 'SNMP')
operationId: getNetworkApplianceFirewallFirewalledService
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: service
in: path
description: Service
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
service:
type: string
description: Appliance service name
access:
type: string
description: A string indicating the rule for which IPs are allowed to use the specified service
allowedIps:
type: array
items:
type: string
description: An array of allowed IPs that can access the service
example:
service: web
access: restricted
allowedIps:
- 123.123.123.1
summary: Return the accessibility settings of the given service ('ICMP', 'web', or 'SNMP')
tags:
- appliance.configure
put:
description: Updates the accessibility settings for the given service ('ICMP', 'web', or 'SNMP')
operationId: updateNetworkApplianceFirewallFirewalledService
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: service
in: path
description: Service
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
access:
type: string
enum:
- blocked
- restricted
- unrestricted
description: A string indicating the rule for which IPs are allowed to use the specified service. Acceptable values are "blocked" (no remote IPs can access the service), "restricted" (only allowed IPs can access the service), and "unrestriced" (any remote IP can access the service). This field is required
allowedIps:
type: array
items:
type: string
description: An array of allowed IPs that can access the service. This field is required if "access" is set to "restricted". Otherwise this field is ignored
example:
access: restricted
allowedIps:
- 123.123.123.1
required:
- access
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
service:
type: string
description: Appliance service name
access:
type: string
description: A string indicating the rule for which IPs are allowed to use the specified service
allowedIps:
type: array
items:
type: string
description: An array of allowed IPs that can access the service
example:
service: web
access: restricted
allowedIps:
- 123.123.123.1
summary: Updates the accessibility settings for the given service ('ICMP', 'web', or 'SNMP')
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/inboundCellularFirewallRules:
get:
description: Return the inbound cellular firewall rules for an MX network
operationId: getNetworkApplianceFirewallInboundCellularFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
summary: Return the inbound cellular firewall rules for an MX network
tags:
- appliance.configure
put:
description: Update the inbound cellular firewall rules of an MX network
operationId: updateNetworkApplianceFirewallInboundCellularFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
required:
- policy
- protocol
- srcCidr
- destCidr
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
summary: Update the inbound cellular firewall rules of an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/inboundFirewallRules:
get:
description: Return the inbound firewall rules for an MX network
operationId: getNetworkApplianceFirewallInboundFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
syslogDefaultRule:
type: boolean
description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
syslogDefaultRule: false
summary: Return the inbound firewall rules for an MX network
tags:
- appliance.configure
put:
description: Update the inbound firewall rules of an MX network
operationId: updateNetworkApplianceFirewallInboundFirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
required:
- policy
- protocol
- srcCidr
- destCidr
description: An ordered array of the firewall rules (not including the default rule)
syslogDefaultRule:
type: boolean
description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
syslogDefaultRule: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
syslogDefaultRule:
type: boolean
description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
syslogDefaultRule: false
summary: Update the inbound firewall rules of an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/l3FirewallRules:
get:
description: Return the L3 firewall rules for an MX network
operationId: getNetworkApplianceFirewallL3FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
summary: Return the L3 firewall rules for an MX network
tags:
- appliance.configure
put:
description: Update the L3 firewall rules of an MX network
operationId: updateNetworkApplianceFirewallL3FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
required:
- policy
- protocol
- srcCidr
- destCidr
description: An ordered array of the firewall rules (not including the default rule)
syslogDefaultRule:
type: boolean
description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
srcPort: Any
srcCidr: Any
syslogEnabled: false
summary: Update the L3 firewall rules of an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/l7FirewallRules:
get:
description: List the MX L7 firewall rules for an MX network
operationId: getNetworkApplianceFirewallL7FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- policy: deny
type: host
value: google.com
- policy: deny
type: port
value: '23'
- policy: deny
type: ipRange
value: 10.11.12.00/24
- policy: deny
type: ipRange
value: 10.11.12.00/24:5555
summary: List the MX L7 firewall rules for an MX network
tags:
- appliance.configure
put:
description: Update the MX L7 firewall rules for an MX network
operationId: updateNetworkApplianceFirewallL7FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
policy:
type: string
enum:
- deny
description: '''Deny'' traffic specified by this rule'
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- port
description: 'Type of the L7 rule. One of: ''application'', ''applicationCategory'', ''host'', ''port'', ''ipRange'''
value:
type: string
description: The 'value' of what you want to block. Format of 'value' varies depending on type of the rule. The application categories and application ids can be retrieved from the the 'MX L7 application categories' endpoint. The countries follow the two-letter ISO 3166-1 alpha-2 format.
description: An ordered array of the MX L7 firewall rules
example:
rules:
- policy: deny
type: host
value: google.com
- policy: deny
type: port
value: '23'
- policy: deny
type: ipRange
value: 10.11.12.00/24
- policy: deny
type: ipRange
value: 10.11.12.00/24:5555
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- policy: deny
type: host
value: google.com
- policy: deny
type: port
value: '23'
- policy: deny
type: ipRange
value: 10.11.12.00/24
- policy: deny
type: ipRange
value: 10.11.12.00/24:5555
summary: Update the MX L7 firewall rules for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/l7FirewallRules/applicationCategories:
get:
description: Return the L7 firewall application categories and their associated applications for an MX network
operationId: getNetworkApplianceFirewallL7FirewallRulesApplicationCategories
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
applicationCategories:
type: array
items:
type: object
properties:
id:
type: string
description: The id of the category
name:
type: string
description: The name of the category
applications:
type: array
items:
type: object
properties:
id:
type: string
description: The id of the application
name:
type: string
description: The name of the application
description: Details of the associated applications
description: ' The L7 firewall application categories and their associated applications for an MX network'
example:
applicationCategories:
- id: meraki:layer7/category/24
name: Advertising
applications:
- id: meraki:layer7/application/5
name: Advertising.com
summary: Return the L7 firewall application categories and their associated applications for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/oneToManyNatRules:
get:
description: Return the 1:Many NAT mapping rules for an MX network
operationId: getNetworkApplianceFirewallOneToManyNatRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- publicIp: 146.11.11.13
uplink: internet1
portRules:
- name: Rule 1
protocol: tcp
publicPort: '9443'
localIp: 192.168.128.1
localPort: '443'
allowedIps:
- any
- name: Rule 2
protocol: tcp
publicPort: '8080'
localIp: 192.168.128.1
localPort: '80'
allowedIps:
- 10.82.110.0/24
- 10.82.111.0/24
summary: Return the 1:Many NAT mapping rules for an MX network
tags:
- appliance.configure
put:
description: Set the 1:Many NAT mapping rules for an MX network
operationId: updateNetworkApplianceFirewallOneToManyNatRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
publicIp:
type: string
description: The IP address that will be used to access the internal resource from the WAN
uplink:
type: string
description: The physical WAN interface on which the traffic will arrive, formatted as 'internetN' where N is an integer representing a valid uplink for the network's appliance
portRules:
type: array
items:
type: object
properties:
name:
type: string
description: A description of the rule
protocol:
type: string
enum:
- tcp
- udp
description: '''tcp'' or ''udp'''
publicPort:
type: string
description: Destination port of the traffic that is arriving on the WAN
localIp:
type: string
description: Local IP address to which traffic will be forwarded
localPort:
type: string
description: Destination port of the forwarded traffic that will be sent from the MX to the specified host on the LAN. If you simply wish to forward the traffic without translating the port, this should be the same as the Public port
allowedIps:
type: array
items:
type: string
description: Remote IP addresses or ranges that are permitted to access the internal resource via this port forwarding rule, or 'any'
description: An array of associated forwarding rules
required:
- publicIp
- uplink
- portRules
description: An array of 1:Many nat rules
example:
rules:
- publicIp: 146.11.11.13
uplink: internet1
portRules:
- name: Rule 1
protocol: tcp
publicPort: '9443'
localIp: 192.168.128.1
localPort: '443'
allowedIps:
- any
- name: Rule 2
protocol: tcp
publicPort: '8080'
localIp: 192.168.128.1
localPort: '80'
allowedIps:
- 10.82.110.0/24
- 10.82.111.0/24
required:
- rules
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- publicIp: 146.11.11.13
uplink: internet1
portRules:
- name: Rule 1
protocol: tcp
publicPort: '9443'
localIp: 192.168.128.1
localPort: '443'
allowedIps:
- any
- name: Rule 2
protocol: tcp
publicPort: '8080'
localIp: 192.168.128.1
localPort: '80'
allowedIps:
- 10.82.110.0/24
- 10.82.111.0/24
summary: Set the 1:Many NAT mapping rules for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/oneToOneNatRules:
get:
description: Return the 1:1 NAT mapping rules for an MX network
operationId: getNetworkApplianceFirewallOneToOneNatRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- name: Service behind NAT
lanIp: 192.168.128.22
publicIp: 146.12.3.33
uplink: internet1
allowedInbound:
- protocol: tcp
destinationPorts:
- '80'
allowedIps:
- 10.82.112.0/24
- 10.82.0.0/16
- protocol: udp
destinationPorts:
- '8080'
allowedIps:
- 10.81.110.5
- 10.81.0.0/16
summary: Return the 1:1 NAT mapping rules for an MX network
tags:
- appliance.configure
put:
description: Set the 1:1 NAT mapping rules for an MX network
operationId: updateNetworkApplianceFirewallOneToOneNatRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name for the rule
publicIp:
type: string
description: The IP address that will be used to access the internal resource from the WAN
lanIp:
type: string
description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
uplink:
type: string
description: The physical WAN interface on which the traffic will arrive, formatted as 'internetN' where N is an integer representing a valid uplink for the network's appliance
allowedInbound:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp-ping
- tcp
- udp
description: 'Either of the following: ''tcp'', ''udp'', ''icmp-ping'' or ''any'''
destinationPorts:
type: array
items:
type: string
description: An array of ports or port ranges that will be forwarded to the host on the LAN
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges, or 'any'
description: The ports this mapping will provide access on, and the remote IPs that will be allowed access to the resource
required:
- lanIp
description: An array of 1:1 nat rules
example:
rules:
- name: Service behind NAT
lanIp: 192.168.128.22
publicIp: 146.12.3.33
uplink: internet1
allowedInbound:
- protocol: tcp
destinationPorts:
- '80'
allowedIps:
- 10.82.112.0/24
- 10.82.0.0/16
- protocol: udp
destinationPorts:
- '8080'
allowedIps:
- 10.81.110.5
- 10.81.0.0/16
required:
- rules
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
rules:
- name: Service behind NAT
lanIp: 192.168.128.22
publicIp: 146.12.3.33
uplink: internet1
allowedInbound:
- protocol: tcp
destinationPorts:
- '80'
allowedIps:
- 10.82.112.0/24
- 10.82.0.0/16
- protocol: udp
destinationPorts:
- '8080'
allowedIps:
- 10.81.110.5
- 10.81.0.0/16
summary: Set the 1:1 NAT mapping rules for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/portForwardingRules:
get:
description: Return the port forwarding rules for an MX network
operationId: getNetworkApplianceFirewallPortForwardingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
lanIp:
type: string
description: IP address of the device subject to port forwarding
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges (or any)
name:
type: string
description: Name of the rule
protocol:
type: string
enum:
- tcp
- udp
description: Protocol the rule applies to
publicPort:
type: string
description: The port or port range forwarded to the host on the LAN
localPort:
type: string
description: The port or port range that receives forwarded traffic from the WAN
uplink:
type: string
enum:
- both
- internet1
- internet2
- internet3
description: The physical WAN interface on which the traffic arrives; allowed values vary by appliance model and configuration
description: An array of port forwarding rules
example:
rules:
- lanIp: 192.168.128.1
allowedIps:
- any
name: Description of Port Forwarding Rule
protocol: tcp
publicPort: 8100-8101
localPort: 442-443
uplink: both
summary: Return the port forwarding rules for an MX network
tags:
- appliance.configure
put:
description: Update the port forwarding rules for an MX network
operationId: updateNetworkApplianceFirewallPortForwardingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
name:
type: string
description: A descriptive name for the rule
lanIp:
type: string
description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
uplink:
type: string
enum:
- both
- internet1
- internet2
- internet3
description: The physical WAN interface on which the traffic will arrive ('internet1' or, if available, 'internet2' or 'both')
publicPort:
type: string
description: A port or port ranges that will be forwarded to the host on the LAN
localPort:
type: string
description: A port or port ranges that will receive the forwarded traffic from the WAN
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges (or any)
protocol:
type: string
enum:
- tcp
- udp
description: TCP or UDP
required:
- lanIp
- publicPort
- localPort
- allowedIps
- protocol
description: An array of port forwarding params
example:
rules:
- name: Description of Port Forwarding Rule
lanIp: 192.168.128.1
uplink: both
publicPort: 8100-8101
localPort: 442-443
allowedIps:
- any
protocol: tcp
required:
- rules
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
lanIp:
type: string
description: IP address of the device subject to port forwarding
allowedIps:
type: array
items:
type: string
description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges (or any)
name:
type: string
description: Name of the rule
protocol:
type: string
enum:
- tcp
- udp
description: Protocol the rule applies to
publicPort:
type: string
description: The port or port range forwarded to the host on the LAN
localPort:
type: string
description: The port or port range that receives forwarded traffic from the WAN
uplink:
type: string
enum:
- both
- internet1
- internet2
- internet3
description: The physical WAN interface on which the traffic arrives; allowed values vary by appliance model and configuration
description: An array of port forwarding rules
example:
rules:
- lanIp: 192.168.128.1
allowedIps:
- any
name: Description of Port Forwarding Rule
protocol: tcp
publicPort: 8100-8101
localPort: 442-443
uplink: both
summary: Update the port forwarding rules for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/firewall/settings:
get:
description: Return the firewall settings for this network
operationId: getNetworkApplianceFirewallSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
spoofingProtection:
ipSourceGuard:
mode: block
summary: Return the firewall settings for this network
tags:
- appliance.configure
put:
description: Update the firewall settings for this network
operationId: updateNetworkApplianceFirewallSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
spoofingProtection:
type: object
properties:
ipSourceGuard:
type: object
properties:
mode:
type: string
enum:
- block
- log
description: Mode of protection
description: IP source address spoofing settings
description: Spoofing protection settings
example:
spoofingProtection:
ipSourceGuard:
mode: block
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
spoofingProtection:
ipSourceGuard:
mode: block
summary: Update the firewall settings for this network
tags:
- appliance.configure
/networks/{networkId}/appliance/ports:
get:
description: List per-port VLAN settings for all ports of a MX.
operationId: getNetworkAppliancePorts
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
number:
type: integer
description: Number of the port
enabled:
type: boolean
description: The status of the port
type:
type: string
description: 'The type of the port: ''access'' or ''trunk''.'
dropUntaggedTraffic:
type: boolean
description: Whether the trunk port can drop all untagged traffic.
vlan:
type: integer
description: Native VLAN when the port is in Trunk mode. Access VLAN when the port is in Access mode.
allowedVlans:
type: string
description: Comma-delimited list of the VLAN ID's allowed on the port, or 'all' to permit all VLAN's on the port.
accessPolicy:
type: string
description: The name of the policy. Only applicable to Access ports.
example:
- number: 1
enabled: true
type: access
dropUntaggedTraffic: false
vlan: 3
allowedVlans: all
accessPolicy: open
summary: List per-port VLAN settings for all ports of a MX.
tags:
- appliance.configure
/networks/{networkId}/appliance/ports/{portId}:
get:
description: Return per-port VLAN settings for a single MX port.
operationId: getNetworkAppliancePort
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: Number of the port
enabled:
type: boolean
description: The status of the port
type:
type: string
description: 'The type of the port: ''access'' or ''trunk''.'
dropUntaggedTraffic:
type: boolean
description: Whether the trunk port can drop all untagged traffic.
vlan:
type: integer
description: Native VLAN when the port is in Trunk mode. Access VLAN when the port is in Access mode.
allowedVlans:
type: string
description: Comma-delimited list of the VLAN ID's allowed on the port, or 'all' to permit all VLAN's on the port.
accessPolicy:
type: string
description: The name of the policy. Only applicable to Access ports.
example:
number: 1
enabled: true
type: access
dropUntaggedTraffic: false
vlan: 3
allowedVlans: all
accessPolicy: open
summary: Return per-port VLAN settings for a single MX port.
tags:
- appliance.configure
put:
description: Update the per-port VLAN settings for a single MX port.
operationId: updateNetworkAppliancePort
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: The status of the port
dropUntaggedTraffic:
type: boolean
description: Trunk port can Drop all Untagged traffic. When true, no VLAN is required. Access ports cannot have dropUntaggedTraffic set to true.
type:
type: string
description: 'The type of the port: ''access'' or ''trunk''.'
vlan:
type: integer
description: Native VLAN when the port is in Trunk mode. Access VLAN when the port is in Access mode.
allowedVlans:
type: string
description: Comma-delimited list of the VLAN ID's allowed on the port, or 'all' to permit all VLAN's on the port.
accessPolicy:
type: string
description: 'The name of the policy. Only applicable to Access ports. Valid values are: ''open'', ''8021x-radius'', ''mac-radius'', ''hybris-radius'' for MX64 or Z3 or any MX supporting the per port authentication feature. Otherwise, ''open'' is the only valid value and ''open'' is the default value if the field is missing.'
example:
enabled: true
dropUntaggedTraffic: false
type: access
vlan: 3
allowedVlans: all
accessPolicy: open
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: Number of the port
enabled:
type: boolean
description: The status of the port
type:
type: string
description: 'The type of the port: ''access'' or ''trunk''.'
dropUntaggedTraffic:
type: boolean
description: Whether the trunk port can drop all untagged traffic.
vlan:
type: integer
description: Native VLAN when the port is in Trunk mode. Access VLAN when the port is in Access mode.
allowedVlans:
type: string
description: Comma-delimited list of the VLAN ID's allowed on the port, or 'all' to permit all VLAN's on the port.
accessPolicy:
type: string
description: The name of the policy. Only applicable to Access ports.
example:
number: 1
enabled: true
type: access
dropUntaggedTraffic: false
vlan: 3
allowedVlans: all
accessPolicy: open
summary: Update the per-port VLAN settings for a single MX port.
tags:
- appliance.configure
/networks/{networkId}/appliance/prefixes/delegated/statics:
get:
description: List static delegated prefixes for a network
operationId: getNetworkAppliancePrefixesDelegatedStatics
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
staticDelegatedPrefixId:
type: string
description: Static delegated prefix id.
prefix:
type: string
description: IPv6 prefix/prefix length.
origin:
type: object
properties:
type:
type: string
description: Origin type
interfaces:
type: array
items:
type: string
description: Uplink provided or independent
description: WAN1/WAN2/Independent prefix.
description:
type: string
description: Identifying description for the prefix.
createdAt:
type: string
format: date-time
description: Prefix creation time.
updatedAt:
type: string
format: date-time
description: Prefix Updated time.
example:
- staticDelegatedPrefixId: '1284392014819'
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
createdAt: '2018-05-12T00:00:00Z'
updatedAt: '2018-05-12T00:00:00Z'
summary: List static delegated prefixes for a network
tags:
- appliance.configure
post:
description: Add a static delegated prefix from a network
operationId: createNetworkAppliancePrefixesDelegatedStatic
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
prefix:
type: string
description: A static IPv6 prefix
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description:
type: string
description: A name or description for the prefix
example:
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
required:
- prefix
- origin
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
example:
staticDelegatedPrefixId: '1284392014819'
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
createdAt: '2018-05-12T00:00:00Z'
updatedAt: '2018-05-12T00:00:00Z'
summary: Add a static delegated prefix from a network
tags:
- appliance.configure
/networks/{networkId}/appliance/prefixes/delegated/statics/{staticDelegatedPrefixId}:
get:
description: Return a static delegated prefix from a network
operationId: getNetworkAppliancePrefixesDelegatedStatic
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticDelegatedPrefixId
in: path
description: Static delegated prefix ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticDelegatedPrefixId:
type: string
description: Static delegated prefix id.
prefix:
type: string
description: IPv6 prefix/prefix length.
origin:
type: object
properties:
type:
type: string
description: Origin type
interfaces:
type: array
items:
type: string
description: Uplink provided or independent
description: WAN1/WAN2/Independent prefix.
description:
type: string
description: Identifying description for the prefix.
createdAt:
type: string
format: date-time
description: Prefix creation time.
updatedAt:
type: string
format: date-time
description: Prefix Updated time.
example:
staticDelegatedPrefixId: '1284392014819'
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
createdAt: '2018-05-12T00:00:00Z'
updatedAt: '2018-05-12T00:00:00Z'
summary: Return a static delegated prefix from a network
tags:
- appliance.configure
put:
description: Update a static delegated prefix from a network
operationId: updateNetworkAppliancePrefixesDelegatedStatic
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticDelegatedPrefixId
in: path
description: Static delegated prefix ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
prefix:
type: string
description: A static IPv6 prefix
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description:
type: string
description: A name or description for the prefix
example:
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
staticDelegatedPrefixId: '1284392014819'
prefix: 2001:db8:3c4d:15::/64
origin:
type: internet
interfaces:
- wan1
description: Prefix on WAN 1 of Long Island Office network
createdAt: '2018-05-12T00:00:00Z'
updatedAt: '2018-05-12T00:00:00Z'
summary: Update a static delegated prefix from a network
tags:
- appliance.configure
delete:
description: Delete a static delegated prefix from a network
operationId: deleteNetworkAppliancePrefixesDelegatedStatic
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticDelegatedPrefixId
in: path
description: Static delegated prefix ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a static delegated prefix from a network
tags:
- appliance.configure
/networks/{networkId}/appliance/rfProfiles:
get:
description: List the RF profiles for this network
operationId: getNetworkApplianceRfProfiles
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
assigned:
type: array
items:
type: object
properties:
id:
type: string
description: ID of the RF Profile.
networkId:
type: string
description: ID of network this RF Profile belongs in.
name:
type: string
description: The name of the profile.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 2.4Ghz band is on or off.
description: Settings related to 2.4Ghz band.
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 5Ghz band is on or off.
description: Settings related to 5Ghz band.
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 1.
'2':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 2.
'3':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 3.
'4':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 4.
description: Per-SSID radio settings by number.
description: RF Profiles
example:
assigned:
- id: '1234'
networkId: N_24329156
name: Some Custom RF Profile
twoFourGhzSettings:
minBitrate: 11
axEnabled: true
fiveGhzSettings:
minBitrate: 12
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
summary: List the RF profiles for this network
tags:
- appliance.configure
post:
description: Creates new RF profile for this network
operationId: createNetworkApplianceRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
axEnabled:
type: boolean
description: Determines whether ax radio on 5Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
description: Settings related to 5Ghz band
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
description: Per-SSID radio settings by number.
example:
name: MX RF Profile
twoFourGhzSettings:
minBitrate: 12
axEnabled: true
fiveGhzSettings:
minBitrate: 48
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
required:
- name
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the RF Profile.
networkId:
type: string
description: ID of network this RF Profile belongs in.
name:
type: string
description: The name of the profile.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 2.4Ghz band is on or off.
description: Settings related to 2.4Ghz band.
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 5Ghz band is on or off.
description: Settings related to 5Ghz band.
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 1.
'2':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 2.
'3':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 3.
'4':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 4.
description: Per-SSID radio settings by number.
example:
id: '1234'
networkId: N_24329156
name: Some Custom RF Profile
twoFourGhzSettings:
minBitrate: 11
axEnabled: true
fiveGhzSettings:
minBitrate: 12
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
summary: Creates new RF profile for this network
tags:
- appliance.configure
/networks/{networkId}/appliance/rfProfiles/{rfProfileId}:
put:
description: Updates specified RF profile for this network
operationId: updateNetworkApplianceRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the new profile. Must be unique.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'.
axEnabled:
type: boolean
description: Determines whether ax radio on 5Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering.
description: Settings related to 5Ghz band
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
description: Per-SSID radio settings by number.
example:
name: MX RF Profile
twoFourGhzSettings:
minBitrate: 12
axEnabled: true
fiveGhzSettings:
minBitrate: 48
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the RF Profile.
networkId:
type: string
description: ID of network this RF Profile belongs in.
name:
type: string
description: The name of the profile.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 2.4Ghz band is on or off.
description: Settings related to 2.4Ghz band.
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 5Ghz band is on or off.
description: Settings related to 5Ghz band.
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 1.
'2':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 2.
'3':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 3.
'4':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 4.
description: Per-SSID radio settings by number.
example:
id: '1234'
networkId: N_24329156
name: Some Custom RF Profile
twoFourGhzSettings:
minBitrate: 11
axEnabled: true
fiveGhzSettings:
minBitrate: 12
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
summary: Updates specified RF profile for this network
tags:
- appliance.configure
delete:
description: Delete a RF Profile
operationId: deleteNetworkApplianceRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a RF Profile
tags:
- appliance.configure
get:
description: Return a RF profile
operationId: getNetworkApplianceRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the RF Profile.
networkId:
type: string
description: ID of network this RF Profile belongs in.
name:
type: string
description: The name of the profile.
twoFourGhzSettings:
type: object
properties:
minBitrate:
type: number
format: float
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 2.4Ghz band is on or off.
description: Settings related to 2.4Ghz band.
fiveGhzSettings:
type: object
properties:
minBitrate:
type: integer
description: Min bitrate (Mbps) of 2.4Ghz band.
axEnabled:
type: boolean
description: Whether ax radio on 5Ghz band is on or off.
description: Settings related to 5Ghz band.
perSsidSettings:
type: object
properties:
'1':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 1.
'2':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 2.
'3':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 3.
'4':
type: object
properties:
bandOperationMode:
type: string
description: Band mode of this SSID
bandSteeringEnabled:
type: boolean
description: Whether this SSID steers clients to the most open band between 2.4 GHz and 5 GHz.
description: Settings for SSID 4.
description: Per-SSID radio settings by number.
example:
id: '1234'
networkId: N_24329156
name: Some Custom RF Profile
twoFourGhzSettings:
minBitrate: 11
axEnabled: true
fiveGhzSettings:
minBitrate: 12
axEnabled: true
perSsidSettings:
'1':
bandOperationMode: dual
bandSteeringEnabled: true
'2':
bandOperationMode: dual
bandSteeringEnabled: true
'3':
bandOperationMode: dual
bandSteeringEnabled: true
'4':
bandOperationMode: dual
bandSteeringEnabled: true
summary: Return a RF profile
tags:
- appliance.configure
/networks/{networkId}/appliance/sdwan/internetPolicies:
put:
description: Update SDWAN internet traffic preferences for an MX network
operationId: updateNetworkApplianceSdwanInternetPolicies
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
wanTrafficUplinkPreferences:
type: array
items:
type: object
properties:
preferredUplink:
type: string
enum:
- bestForVoIP
- defaultUplink
- loadBalancing
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'', ''wan2'', ''bestForVoIP'', ''loadBalancing'' or ''defaultUplink'''
failOverCriterion:
type: string
enum:
- poorPerformance
- uplinkDown
description: WAN failover and failback behavior
performanceClass:
type: object
properties:
type:
type: string
enum:
- builtin
- custom
description: 'Type of this performance class. Must be one of: ''builtin'' or ''custom'''
builtinPerformanceClassName:
type: string
enum:
- VoIP
description: 'Name of builtin performance class. Must be present when performanceClass type is ''builtin'' and value must be one of: ''VoIP'''
customPerformanceClassId:
type: string
description: ID of created custom performance class, must be present when performanceClass type is "custom"
description: Performance class setting for uplink preference rule
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- custom
- majorApplication
description: Traffic filter type. Must be 'custom', 'major_application', 'application (NBAR)', if type is 'application', you can pass either an NBAR App Category or Application
value:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp6
- tcp
- udp
description: 'Protocol of the traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any"
applications:
type: array
items:
type: object
properties:
id:
type: string
description: Id of the major application, or a list of NBAR Application Category or Application selections
name:
type: string
description: Name of the major application or application category selected
type:
type: string
description: app type (major or nbar)
description: list of application objects (either majorApplication or nbar)
description: Destination of 'custom' type traffic filter
required:
- source
- destination
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
required:
- preferredUplink
- trafficFilters
description: policies with respective traffic filters for an MX network
example:
wanTrafficUplinkPreferences:
- preferredUplink: wan1
failOverCriterion: poorPerformance
performanceClass:
type: custom
builtinPerformanceClassName: VoIP
customPerformanceClassId: '123456'
trafficFilters:
- type: custom
value:
protocol: tcp
source:
port: 1-1024
cidr: 192.168.1.0/24
vlan: 10
host: 254
destination:
port: any
cidr: any
applications:
- id: meraki:layer7/application/3
name: DNS
type: major
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
wanTrafficUplinkPreferences:
type: array
items:
type: object
properties:
preferredUplink:
type: string
enum:
- bestForVoIP
- defaultUplink
- loadBalancing
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'', ''wan2'', ''bestForVoIP'', ''loadBalancing'' or ''defaultUplink'''
failOverCriterion:
type: string
enum:
- poorPerformance
- uplinkDown
description: WAN failover and failback behavior
performanceClass:
type: object
properties:
type:
type: string
enum:
- builtin
- custom
description: 'Type of this performance class. Must be one of: ''builtin'' or ''custom'''
builtinPerformanceClassName:
type: string
enum:
- VoIP
description: 'Name of builtin performance class. Must be present when performanceClass type is ''builtin'' and value must be one of: ''VoIP'''
customPerformanceClassId:
type: string
description: ID of created custom performance class, must be present when performanceClass type is "custom"
description: Performance class setting for uplink preference rule
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- custom
- majorApplication
description: Traffic filter type. Must be 'custom', 'major_application', 'application (NBAR)', if type is 'application', you can pass either an NBAR App Category or Application
value:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp6
- tcp
- udp
description: 'Protocol of the traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any"
applications:
type: array
items:
type: object
properties:
id:
type: string
description: Id of the major application, or a list of NBAR Application Category or Application selections
name:
type: string
description: Name of the major application or application category selected
type:
type: string
description: app type (major or nbar)
description: list of application objects (either majorApplication or nbar)
description: Destination of 'custom' type traffic filter
required:
- source
- destination
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
required:
- preferredUplink
- trafficFilters
description: policies with respective traffic filters for an MX network
example:
wanTrafficUplinkPreferences:
- preferredUplink: wan1
failOverCriterion: poorPerformance
performanceClass:
type: custom
builtinPerformanceClassName: VoIP
customPerformanceClassId: '123456'
trafficFilters:
- type: custom
value:
protocol: tcp
source:
port: 1-1024
cidr: 192.168.1.0/24
vlan: 10
host: 254
destination:
port: any
cidr: any
applications:
- id: meraki:layer7/application/3
name: DNS
type: major
summary: Update SDWAN internet traffic preferences for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/security/events:
get:
description: List the security events for a network
operationId: getNetworkApplianceSecurityEvents
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. Data is gathered after the specified t0 value. The maximum lookback period is 365 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 365 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 less than or equal to 365 days. The default is 31 days.
schema:
type: number
format: float
maximum: 31536000
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: sortOrder
in: query
description: Sorted order of security events based on event detection time. Order options are 'ascending' or 'descending'. Default is ascending order.
schema:
type: string
enum:
- ascending
- descending
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
additionalProperties: true
example:
- ts: '2018-02-11T00:00:00.090210Z'
eventType: File Scanned
clientName: COMPUTER-M-V78J
clientMac: 10:dd:b1:eb:88:f8
clientIp: 192.168.128.2
srcIp: 192.168.128.2
destIp: 119.192.233.48
protocol: http
uri: http://www.favorite-icons.com/program/FavoriteIconsUninstall.exe
canonicalName: PUA.Win.Dropper.Kraddare::1201
destinationPort: 80
fileHash: 3ec1b9a95fe62aa25fc959643a0f227b76d253094681934daaf628d3574b3463
fileType: MS_EXE
fileSizeBytes: 193688
disposition: Malicious
action: Blocked
- ts: '2018-02-11T00:00:00.090210Z'
eventType: IDS Alert
deviceMac: 00:18:0a:01:02:03
clientMac: A1:B2:C3:D4:E5:F6
srcIp: 1.2.3.4:34195
destIp: 10.20.30.40:80
protocol: tcp/ip
priority: '2'
classification: '4'
blocked: true
message: SERVER-WEBAPP JBoss JMX console access attempt
signature: '1:21516:9'
sigSource: ''
ruleId: meraki:intrusion/snort/GID/1/SID/26267
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the security events for a network
tags:
- appliance.monitor
/networks/{networkId}/appliance/security/intrusion:
get:
description: Returns all supported intrusion settings for an MX network
operationId: getNetworkApplianceSecurityIntrusion
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: Intrusion detection mode
idsRulesets:
type: string
description: Intrusion detection ruleset
protectedNetworks:
type: object
properties:
useDefault:
type: boolean
description: 'Whether special IPv4 addresses should be used (see: https://tools.ietf.org/html/rfc5735)'
includedCidr:
type: array
items:
type: string
description: List of IP addresses or subnets being protected
excludedCidr:
type: array
items:
type: string
description: List of IP addresses or subnets being excluded from protection
description: Networks included in and excluded from the detection engine
example:
mode: prevention
idsRulesets: balanced
protectedNetworks:
useDefault: false
includedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
- 169.254.0.0/16
- 172.16.0.0/12
excludedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
summary: Returns all supported intrusion settings for an MX network
tags:
- appliance.configure
put:
description: Set the supported intrusion settings for an MX network
operationId: updateNetworkApplianceSecurityIntrusion
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mode:
type: string
enum:
- detection
- disabled
- prevention
description: Set mode to 'disabled'/'detection'/'prevention' (optional - omitting will leave current config unchanged)
idsRulesets:
type: string
enum:
- balanced
- connectivity
- security
description: Set the detection ruleset 'connectivity'/'balanced'/'security' (optional - omitting will leave current config unchanged). Default value is 'balanced' if none currently saved
protectedNetworks:
type: object
properties:
useDefault:
type: boolean
description: 'true/false whether to use special IPv4 addresses: https://tools.ietf.org/html/rfc5735 (required). Default value is true if none currently saved'
includedCidr:
type: array
items:
type: string
description: list of IP addresses or subnets being protected (required if 'useDefault' is false)
excludedCidr:
type: array
items:
type: string
description: list of IP addresses or subnets being excluded from protection (required if 'useDefault' is false)
description: Set the included/excluded networks from the intrusion engine (optional - omitting will leave current config unchanged). This is available only in 'passthrough' mode
example:
mode: prevention
idsRulesets: balanced
protectedNetworks:
useDefault: false
includedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
- 169.254.0.0/16
- 172.16.0.0/12
excludedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: Intrusion detection mode
idsRulesets:
type: string
description: Intrusion detection ruleset
protectedNetworks:
type: object
properties:
useDefault:
type: boolean
description: 'Whether special IPv4 addresses should be used (see: https://tools.ietf.org/html/rfc5735)'
includedCidr:
type: array
items:
type: string
description: List of IP addresses or subnets being protected
excludedCidr:
type: array
items:
type: string
description: List of IP addresses or subnets being excluded from protection
description: Networks included in and excluded from the detection engine
example:
mode: prevention
idsRulesets: balanced
protectedNetworks:
useDefault: false
includedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
- 169.254.0.0/16
- 172.16.0.0/12
excludedCidr:
- 10.0.0.0/8
- 127.0.0.0/8
summary: Set the supported intrusion settings for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/security/malware:
get:
description: Returns all supported malware settings for an MX network
operationId: getNetworkApplianceSecurityMalware
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: Current status of malware prevention
allowedUrls:
type: array
items:
type: object
properties:
url:
type: string
description: The allowed URL
comment:
type: string
description: Comment about the allowed URL
description: URLs permitted by the malware detection engine
allowedFiles:
type: array
items:
type: object
properties:
sha256:
type: string
description: The sha256 digest of allowed file
comment:
type: string
description: Comment about the allowed file
description: Sha256 digests of files permitted by the malware detection engine
example:
mode: enabled
allowedUrls:
- url: help.com.au
comment: allow help.com.au
allowedFiles:
- sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
comment: allow ZIP file
summary: Returns all supported malware settings for an MX network
tags:
- appliance.configure
put:
description: Set the supported malware settings for an MX network
operationId: updateNetworkApplianceSecurityMalware
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mode:
type: string
enum:
- disabled
- enabled
description: Set mode to 'enabled' to enable malware prevention, otherwise 'disabled'
allowedUrls:
type: array
items:
type: object
properties:
url:
type: string
description: The url to allow
comment:
type: string
description: Comment about the allowed entity
required:
- url
- comment
description: The urls that should be permitted by the malware detection engine. If omitted, the current config will remain unchanged. This is available only if your network supports AMP allow listing
allowedFiles:
type: array
items:
type: object
properties:
sha256:
type: string
description: The file sha256 hash to allow
comment:
type: string
description: Comment about the allowed entity
required:
- sha256
- comment
description: The sha256 digests of files that should be permitted by the malware detection engine. If omitted, the current config will remain unchanged. This is available only if your network supports AMP allow listing
example:
mode: enabled
allowedUrls:
- url: help.com.au
comment: allow help.com.au
allowedFiles:
- sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
comment: allow ZIP file
required:
- mode
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: Current status of malware prevention
allowedUrls:
type: array
items:
type: object
properties:
url:
type: string
description: The allowed URL
comment:
type: string
description: Comment about the allowed URL
description: URLs permitted by the malware detection engine
allowedFiles:
type: array
items:
type: object
properties:
sha256:
type: string
description: The sha256 digest of allowed file
comment:
type: string
description: Comment about the allowed file
description: Sha256 digests of files permitted by the malware detection engine
example:
mode: enabled
allowedUrls:
- url: help.com.au
comment: allow help.com.au
allowedFiles:
- sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
comment: allow ZIP file
summary: Set the supported malware settings for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/settings:
get:
description: Return the appliance settings for a network
operationId: getNetworkApplianceSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
clientTrackingMethod:
type: string
enum:
- IP address
- MAC address
- Unique client identifier
description: Client tracking method of a network
deploymentMode:
type: string
enum:
- passthrough
- routed
description: Deployment mode of a network
dynamicDns:
type: object
properties:
enabled:
type: boolean
description: Dynamic DNS enabled
prefix:
type: string
description: Dynamic DNS url prefix. DDNS must be enabled to update
url:
type: string
description: Dynamic DNS url. DDNS must be enabled to update
description: Dynamic DNS settings for a network
example:
clientTrackingMethod: MAC address
deploymentMode: routed
dynamicDns:
enabled: true
prefix: test
url: test-adfgnnhjea.meraki.com
summary: Return the appliance settings for a network
tags:
- appliance.configure
put:
description: Update the appliance settings for a network
operationId: updateNetworkApplianceSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
clientTrackingMethod:
type: string
enum:
- IP address
- MAC address
- Unique client identifier
description: Client tracking method of a network
deploymentMode:
type: string
enum:
- passthrough
- routed
description: Deployment mode of a network
dynamicDns:
type: object
properties:
prefix:
type: string
description: Dynamic DNS url prefix. DDNS must be enabled to update
enabled:
type: boolean
description: Dynamic DNS enabled
description: Dynamic DNS settings for a network
example:
clientTrackingMethod: MAC address
deploymentMode: routed
dynamicDns:
prefix: test
enabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
clientTrackingMethod:
type: string
enum:
- IP address
- MAC address
- Unique client identifier
description: Client tracking method of a network
deploymentMode:
type: string
enum:
- passthrough
- routed
description: Deployment mode of a network
dynamicDns:
type: object
properties:
enabled:
type: boolean
description: Dynamic DNS enabled
prefix:
type: string
description: Dynamic DNS url prefix. DDNS must be enabled to update
url:
type: string
description: Dynamic DNS url. DDNS must be enabled to update
description: Dynamic DNS settings for a network
example:
clientTrackingMethod: MAC address
deploymentMode: routed
dynamicDns:
enabled: true
prefix: test
url: test-adfgnnhjea.meraki.com
summary: Update the appliance settings for a network
tags:
- appliance.configure
/networks/{networkId}/appliance/singleLan:
get:
description: Return single LAN configuration
operationId: getNetworkApplianceSingleLan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
subnet:
type: string
description: The subnet of the single LAN
applianceIp:
type: string
description: The local IP of the appliance on the single LAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on single LAN.
description: Mandatory DHCP will enforce that clients connecting to this single LAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on single LAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the single LAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the single LAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the single LAN
description: IPv6 configuration on the single LAN
example:
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: Return single LAN configuration
tags:
- appliance.configure
put:
description: Update single LAN configuration
operationId: updateNetworkApplianceSingleLan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
subnet:
type: string
description: The subnet of the single LAN configuration
applianceIp:
type: string
description: The appliance IP address of the single LAN
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN.
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
required:
- type
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on LAN.
description: Mandatory DHCP will enforce that clients connecting to this LAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
example: {}
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
subnet:
type: string
description: The subnet of the single LAN
applianceIp:
type: string
description: The local IP of the appliance on the single LAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on single LAN.
description: Mandatory DHCP will enforce that clients connecting to this single LAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on single LAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the single LAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the single LAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the single LAN
description: IPv6 configuration on the single LAN
example:
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: Update single LAN configuration
tags:
- appliance.configure
/networks/{networkId}/appliance/ssids:
get:
description: List the MX SSIDs in a network
operationId: getNetworkApplianceSsids
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
number:
type: integer
description: The number of the SSID.
name:
type: string
description: The name of the SSID.
enabled:
type: boolean
description: Whether or not the SSID is enabled.
defaultVlanId:
type: integer
description: The VLAN ID of the VLAN associated to this SSID.
authMode:
type: string
description: The association control method for the SSID.
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: The IP address of your RADIUS server.
port:
type: integer
description: The UDP port your RADIUS servers listens on for Access-requests.
description: The RADIUS 802.1x servers to be used for authentication.
encryptionMode:
type: string
description: The psk encryption mode for the SSID.
wpaEncryptionMode:
type: string
description: WPA encryption mode for the SSID.
visible:
type: boolean
description: Boolean indicating whether the MX should advertise or hide this SSID.
example:
- number: 1
name: My SSID
enabled: true
defaultVlanId: 1
authMode: 8021x-radius
radiusServers:
- host: 0.0.0.0
port: 1000
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
visible: true
summary: List the MX SSIDs in a network
tags:
- appliance.configure
/networks/{networkId}/appliance/ssids/{number}:
get:
description: Return a single MX SSID
operationId: getNetworkApplianceSsid
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: The number of the SSID.
name:
type: string
description: The name of the SSID.
enabled:
type: boolean
description: Whether or not the SSID is enabled.
defaultVlanId:
type: integer
description: The VLAN ID of the VLAN associated to this SSID.
authMode:
type: string
description: The association control method for the SSID.
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: The IP address of your RADIUS server.
port:
type: integer
description: The UDP port your RADIUS servers listens on for Access-requests.
description: The RADIUS 802.1x servers to be used for authentication.
encryptionMode:
type: string
description: The psk encryption mode for the SSID.
wpaEncryptionMode:
type: string
description: WPA encryption mode for the SSID.
visible:
type: boolean
description: Boolean indicating whether the MX should advertise or hide this SSID.
example:
number: 1
name: My SSID
enabled: true
defaultVlanId: 1
authMode: 8021x-radius
radiusServers:
- host: 0.0.0.0
port: 1000
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
visible: true
summary: Return a single MX SSID
tags:
- appliance.configure
put:
description: Update the attributes of an MX SSID
operationId: updateNetworkApplianceSsid
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the SSID.
enabled:
type: boolean
description: Whether or not the SSID is enabled.
defaultVlanId:
type: integer
description: The VLAN ID of the VLAN associated to this SSID. This parameter is only valid if the network is in routed mode.
authMode:
type: string
enum:
- 8021x-meraki
- 8021x-radius
- open
- psk
description: The association control method for the SSID ('open', 'psk', '8021x-meraki' or '8021x-radius').
psk:
type: string
description: The passkey for the SSID. This param is only valid if the authMode is 'psk'.
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: The IP address of your RADIUS server.
port:
type: integer
description: The UDP port your RADIUS servers listens on for Access-requests.
secret:
type: string
description: The RADIUS client shared secret.
description: The RADIUS 802.1x servers to be used for authentication. This param is only valid if the authMode is '8021x-radius'.
encryptionMode:
type: string
enum:
- wep
- wpa
description: The psk encryption mode for the SSID ('wep' or 'wpa'). This param is only valid if the authMode is 'psk'.
wpaEncryptionMode:
type: string
enum:
- WPA1 and WPA2
- WPA2 only
- WPA3 Transition Mode
- WPA3 only
description: The types of WPA encryption. ('WPA1 and WPA2', 'WPA2 only', 'WPA3 Transition Mode' or 'WPA3 only'). This param is only valid if (1) the authMode is 'psk' & the encryptionMode is 'wpa' OR (2) the authMode is '8021x-meraki' OR (3) the authMode is '8021x-radius'
visible:
type: boolean
description: Boolean indicating whether the MX should advertise or hide this SSID.
dhcpEnforcedDeauthentication:
type: object
properties:
enabled:
type: boolean
description: Enable DCHP Enforced Deauthentication on the SSID.
description: 'DHCP Enforced Deauthentication enables the disassociation of wireless clients in addition to Mandatory DHCP. This param is only valid on firmware versions >= MX 17.0 where the associated LAN has Mandatory DHCP Enabled '
dot11w:
type: object
properties:
enabled:
type: boolean
description: Whether 802.11w is enabled or not.
required:
type: boolean
description: (Optional) Whether 802.11w is required or not.
description: The current setting for Protected Management Frames (802.11w).
example:
name: My SSID
enabled: true
defaultVlanId: 1
authMode: 8021x-radius
psk: psk
radiusServers:
- host: 0.0.0.0
port: 1000
secret: secret
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
visible: true
dhcpEnforcedDeauthentication:
enabled: true
dot11w:
enabled: true
required: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: The number of the SSID.
name:
type: string
description: The name of the SSID.
enabled:
type: boolean
description: Whether or not the SSID is enabled.
defaultVlanId:
type: integer
description: The VLAN ID of the VLAN associated to this SSID.
authMode:
type: string
description: The association control method for the SSID.
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: The IP address of your RADIUS server.
port:
type: integer
description: The UDP port your RADIUS servers listens on for Access-requests.
description: The RADIUS 802.1x servers to be used for authentication.
encryptionMode:
type: string
description: The psk encryption mode for the SSID.
wpaEncryptionMode:
type: string
description: WPA encryption mode for the SSID.
visible:
type: boolean
description: Boolean indicating whether the MX should advertise or hide this SSID.
example:
number: 1
name: My SSID
enabled: true
defaultVlanId: 1
authMode: 8021x-radius
radiusServers:
- host: 0.0.0.0
port: 1000
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
visible: true
summary: Update the attributes of an MX SSID
tags:
- appliance.configure
/networks/{networkId}/appliance/staticRoutes:
get:
description: List the static routes for an MX or teleworker network
operationId: getNetworkApplianceStaticRoutes
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: Route ID
ipVersion:
type: integer
description: IP protocol version
networkId:
type: string
description: Network ID
enabled:
type: boolean
description: Whether the route is enabled or not
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: Assigned IP address
name:
type: string
description: Client name
description: An object mapping MAC addresses to IP addresses and client names
description: Fixed DHCP IP assignments on the route
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: First address in the reserved range
end:
type: string
description: Last address in the reserved range
comment:
type: string
description: Description of the range
description: DHCP reserved IP ranges
gatewayVlanId:
type: integer
description: Gateway VLAN ID
example:
- id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
ipVersion: 4
networkId: N_24329156
enabled: true
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
gatewayVlanId: 100
summary: List the static routes for an MX or teleworker network
tags:
- appliance.configure
post:
description: Add a static route for an MX or teleworker network
operationId: createNetworkApplianceStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
gatewayVlanId:
type: string
description: Gateway VLAN ID
example:
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
gatewayVlanId: '100'
required:
- name
- subnet
- gatewayIp
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Route ID
ipVersion:
type: integer
description: IP protocol version
networkId:
type: string
description: Network ID
enabled:
type: boolean
description: Whether the route is enabled or not
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: Assigned IP address
name:
type: string
description: Client name
description: An object mapping MAC addresses to IP addresses and client names
description: Fixed DHCP IP assignments on the route
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: First address in the reserved range
end:
type: string
description: Last address in the reserved range
comment:
type: string
description: Description of the range
description: DHCP reserved IP ranges
gatewayVlanId:
type: integer
description: Gateway VLAN ID
example:
id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
ipVersion: 4
networkId: N_24329156
enabled: true
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
gatewayVlanId: 100
summary: Add a static route for an MX or teleworker network
tags:
- appliance.configure
/networks/{networkId}/appliance/staticRoutes/{staticRouteId}:
get:
description: Return a static route for an MX or teleworker network
operationId: getNetworkApplianceStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Route ID
ipVersion:
type: integer
description: IP protocol version
networkId:
type: string
description: Network ID
enabled:
type: boolean
description: Whether the route is enabled or not
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: Assigned IP address
name:
type: string
description: Client name
description: An object mapping MAC addresses to IP addresses and client names
description: Fixed DHCP IP assignments on the route
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: First address in the reserved range
end:
type: string
description: Last address in the reserved range
comment:
type: string
description: Description of the range
description: DHCP reserved IP ranges
gatewayVlanId:
type: integer
description: Gateway VLAN ID
example:
id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
ipVersion: 4
networkId: N_24329156
enabled: true
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
gatewayVlanId: 100
summary: Return a static route for an MX or teleworker network
tags:
- appliance.configure
put:
description: Update a static route for an MX or teleworker network
operationId: updateNetworkApplianceStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
gatewayVlanId:
type: string
description: Gateway VLAN ID
enabled:
type: boolean
description: Whether the route should be enabled or not
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: Assigned IP address
name:
type: string
description: Client name
description: An object mapping MAC addresses to IP addresses and client names
description: Fixed DHCP IP assignments on the route
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: First address in the reserved range
end:
type: string
description: Last address in the reserved range
comment:
type: string
description: Description of the range
required:
- start
- end
- comment
description: DHCP reserved IP ranges
example:
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
gatewayVlanId: '100'
enabled: true
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Route ID
ipVersion:
type: integer
description: IP protocol version
networkId:
type: string
description: Network ID
enabled:
type: boolean
description: Whether the route is enabled or not
name:
type: string
description: Name of the route
subnet:
type: string
description: Subnet of the route
gatewayIp:
type: string
description: Gateway IP address (next hop)
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: Assigned IP address
name:
type: string
description: Client name
description: An object mapping MAC addresses to IP addresses and client names
description: Fixed DHCP IP assignments on the route
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: First address in the reserved range
end:
type: string
description: Last address in the reserved range
comment:
type: string
description: Description of the range
description: DHCP reserved IP ranges
gatewayVlanId:
type: integer
description: Gateway VLAN ID
example:
id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
ipVersion: 4
networkId: N_24329156
enabled: true
name: My route
subnet: 192.168.1.0/24
gatewayIp: 1.2.3.5
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
gatewayVlanId: 100
summary: Update a static route for an MX or teleworker network
tags:
- appliance.configure
delete:
description: Delete a static route from an MX or teleworker network
operationId: deleteNetworkApplianceStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a static route from an MX or teleworker network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping:
get:
description: Display the traffic shaping settings for an MX network
operationId: getNetworkApplianceTrafficShaping
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
globalBandwidthLimits:
limitUp: 2048
limitDown: 5120
summary: Display the traffic shaping settings for an MX network
tags:
- appliance.configure
put:
description: Update the traffic shaping settings for an MX network
operationId: updateNetworkApplianceTrafficShaping
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
globalBandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The upload bandwidth limit in Kbps. (0 represents no limit.)
limitDown:
type: integer
description: The download bandwidth limit in Kbps. (0 represents no limit.)
description: Global per-client bandwidth limit
example:
globalBandwidthLimits:
limitUp: 2048
limitDown: 5120
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
globalBandwidthLimits:
limitUp: 2048
limitDown: 5120
summary: Update the traffic shaping settings for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/customPerformanceClasses:
get:
description: List all custom performance classes for an MX network
operationId: getNetworkApplianceTrafficShapingCustomPerformanceClasses
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
name:
type: string
description: Name of the custom performance class
customPerformanceClassId:
type: string
description: ID of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
- name: myCustomPerformanceClass
customPerformanceClassId: '123'
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
summary: List all custom performance classes for an MX network
tags:
- appliance.configure
post:
description: Add a custom performance class for an MX network
operationId: createNetworkApplianceTrafficShapingCustomPerformanceClass
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
name: myCustomPerformanceClass
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
required:
- name
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the custom performance class
customPerformanceClassId:
type: string
description: ID of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
name: myCustomPerformanceClass
customPerformanceClassId: '123'
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
summary: Add a custom performance class for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/customPerformanceClasses/{customPerformanceClassId}:
get:
description: Return a custom performance class for an MX network
operationId: getNetworkApplianceTrafficShapingCustomPerformanceClass
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: customPerformanceClassId
in: path
description: Custom performance class ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the custom performance class
customPerformanceClassId:
type: string
description: ID of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
name: myCustomPerformanceClass
customPerformanceClassId: '123'
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
summary: Return a custom performance class for an MX network
tags:
- appliance.configure
put:
description: Update a custom performance class for an MX network
operationId: updateNetworkApplianceTrafficShapingCustomPerformanceClass
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: customPerformanceClassId
in: path
description: Custom performance class ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
name: myCustomPerformanceClass
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the custom performance class
customPerformanceClassId:
type: string
description: ID of the custom performance class
maxLatency:
type: integer
description: Maximum latency in milliseconds
maxJitter:
type: integer
description: Maximum jitter in milliseconds
maxLossPercentage:
type: integer
description: Maximum percentage of packet loss
example:
name: myCustomPerformanceClass
customPerformanceClassId: '123'
maxLatency: 100
maxJitter: 100
maxLossPercentage: 5
summary: Update a custom performance class for an MX network
tags:
- appliance.configure
delete:
description: Delete a custom performance class from an MX network
operationId: deleteNetworkApplianceTrafficShapingCustomPerformanceClass
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: customPerformanceClassId
in: path
description: Custom performance class ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a custom performance class from an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/rules:
put:
description: Update the traffic shaping settings rules for an MX network
operationId: updateNetworkApplianceTrafficShapingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
defaultRulesEnabled:
type: boolean
description: Whether default traffic shaping rules are enabled (true) or disabled (false). There are 4 default rules, which can be seen on your network's traffic shaping page. Note that default rules count against the rule limit of 8.
rules:
type: array
items:
type: object
properties:
definitions:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- localNet
- port
description: The type of definition. Can be one of 'application', 'applicationCategory', 'host', 'port', 'ipRange' or 'localNet'.
value:
type: string
description: |2
If "type" is 'host', 'port', 'ipRange' or 'localNet', then "value" must be a string, matching either
a hostname (e.g. "somesite.com"), a port (e.g. 8080), or an IP range ("192.1.0.0",
"192.1.0.0/16", or "10.1.0.0/16:80"). 'localNet' also supports CIDR notation, excluding
custom ports.
If "type" is 'application' or 'applicationCategory', then "value" must be an object
with the structure { "id": "meraki:layer7/..." }, where "id" is the application category or
application ID (for a list of IDs for your network, use the trafficShaping/applicationCategories
endpoint).
required:
- type
- value
description: |2
A list of objects describing the definitions of your traffic shaping rule. At least one definition is required.
perClientBandwidthLimits:
type: object
properties:
settings:
type: string
description: How bandwidth limits are applied by your rule. Can be one of 'network default', 'ignore' or 'custom'.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The bandwidth limits object, specifying the upload ('limitUp') and download ('limitDown') speed in Kbps. These are only enforced if 'settings' is set to 'custom'.
description: |2
An object describing the bandwidth settings for your rule.
dscpTagValue:
type: integer
description: |2
The DSCP tag applied by your rule. null means 'Do not change DSCP tag'.
For a list of possible tag values, use the trafficShaping/dscpTaggingOptions endpoint.
priority:
type: string
description: |2
A string, indicating the priority level for packets bound to your rule.
Can be 'low', 'normal' or 'high'.
required:
- definitions
description: |2
An array of traffic shaping rules. Rules are applied in the order that
they are specified in. An empty list (or null) means no rules. Note that
you are allowed a maximum of 8 rules.
example:
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
- type: port
value: '9090'
- type: ipRange
value: 192.1.0.0
- type: ipRange
value: 192.1.0.0/16
- type: ipRange
value: 10.1.0.0/16:80
- type: localNet
value: 192.168.0.0/16
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
priority: normal
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
- type: port
value: '9090'
- type: ipRange
value: 192.1.0.0
- type: ipRange
value: 192.1.0.0/16
- type: ipRange
value: 10.1.0.0/16:80
- type: localNet
value: 192.168.0.0/16
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
priority: normal
summary: Update the traffic shaping settings rules for an MX network
tags:
- appliance.configure
get:
description: Display the traffic shaping settings rules for an MX network
operationId: getNetworkApplianceTrafficShapingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
- type: port
value: '9090'
- type: ipRange
value: 192.1.0.0
- type: ipRange
value: 192.1.0.0/16
- type: ipRange
value: 10.1.0.0/16:80
- type: localNet
value: 192.168.0.0/16
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
priority: normal
summary: Display the traffic shaping settings rules for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/uplinkBandwidth:
get:
description: Returns the uplink bandwidth limits for your MX network. This may not reflect the affected device's hardware capabilities. For more information on your device's hardware capabilities, please consult our MX Family Datasheet - [https://meraki.cisco.com/product-collateral/mx-family-datasheet/?file]
operationId: getNetworkApplianceTrafficShapingUplinkBandwidth
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
bandwidthLimits:
type: object
properties:
wan1:
type: object
properties:
limitUp:
type: integer
description: configured UP limit for the uplink (in Kbps). Null indicated unlimited
limitDown:
type: integer
description: configured DOWN limit for the uplink (in Kbps). Null indicated unlimited
description: uplink wan1 configured limits [optional]
wan2:
type: object
properties:
limitUp:
type: integer
description: configured UP limit for the uplink (in Kbps). Null indicated unlimited
limitDown:
type: integer
description: configured DOWN limit for the uplink (in Kbps). Null indicated unlimited
description: uplink wan2 configured limits [optional]
cellular:
type: object
properties:
limitUp:
type: integer
description: configured UP limit for the uplink (in Kbps). Null indicated unlimited
limitDown:
type: integer
description: configured DOWN limit for the uplink (in Kbps). Null indicated unlimited
description: uplink cellular configured limits [optional]
description: A hash uplink keys and their configured settings for the Appliance
example:
bandwidthLimits:
wan1:
limitUp: 1000000
limitDown: 1000000
wan2:
limitUp: 1000000
limitDown: 1000000
cellular:
limitUp: 51200
limitDown: 51200
summary: Returns the uplink bandwidth limits for your MX network
tags:
- appliance.configure
put:
description: Updates the uplink bandwidth settings for your MX network.
operationId: updateNetworkApplianceTrafficShapingUplinkBandwidth
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
bandwidthLimits:
type: object
properties:
wan1:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). null indicates no limit
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). null indicates no limit
description: The bandwidth settings for the 'wan1' uplink
wan2:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). null indicates no limit
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). null indicates no limit
description: The bandwidth settings for the 'wan2' uplink
cellular:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). null indicates no limit
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). null indicates no limit
description: The bandwidth settings for the 'cellular' uplink
description: A mapping of uplinks to their bandwidth settings (be sure to check which uplinks are supported for your network)
example:
bandwidthLimits:
wan1:
limitUp: 1000000
limitDown: 1000000
wan2:
limitUp: 1000000
limitDown: 1000000
cellular:
limitUp: 1000000
limitDown: 1000000
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
bandwidthLimits:
wan1:
limitUp: 1000000
limitDown: 1000000
wan2:
limitUp: 1000000
limitDown: 1000000
cellular:
limitUp: 51200
limitDown: 51200
summary: Updates the uplink bandwidth settings for your MX network.
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/uplinkSelection:
get:
description: Show uplink selection settings for an MX network
operationId: getNetworkApplianceTrafficShapingUplinkSelection
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
activeActiveAutoVpnEnabled:
type: boolean
description: Whether active-active AutoVPN is enabled
defaultUplink:
type: string
enum:
- wan1
- wan2
description: 'The default uplink. Must be one of: ''wan1'' or ''wan2'''
loadBalancingEnabled:
type: boolean
description: Whether load balancing is enabled
failoverAndFailback:
type: object
properties:
immediate:
type: object
properties:
enabled:
type: boolean
description: Whether immediate WAN failover and failback is enabled
required:
- enabled
description: Immediate WAN failover and failback
description: WAN failover and failback
wanTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- custom
description: Traffic filter type. Must be "custom"
value:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp6
- tcp
- udp
description: 'Protocol of ''custom'' type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of 'custom' type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any"
applications:
type: array
items:
type: object
properties:
id:
type: string
description: Id of the major application, or a list of NBAR Application Category or Application selections
name:
type: string
description: Name of the major application or application category selected
type:
type: string
description: app type (major or nbar)
description: list of application objects (either majorApplication or nbar)
description: Destination of 'custom' type traffic filter
required:
- source
- destination
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
preferredUplink:
type: string
enum:
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'' or ''wan2'''
required:
- trafficFilters
- preferredUplink
description: Uplink preference rules for WAN traffic
vpnTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- custom
description: 'Traffic filter type. Must be one of: ''applicationCategory'', ''application'' or ''custom'''
value:
type: object
properties:
id:
type: string
description: ID of 'applicationCategory' or 'application' type traffic filter
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: 'Protocol of ''custom'' type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of 'custom' type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" or "fqdn" property
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" or "fqdn" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
fqdn:
type: string
description: 'FQDN format address. Cannot be used in combination with the "cidr" or "fqdn" property and is currently only available in the "destination" object of the "vpnTrafficUplinkPreference" object. E.g.: "www.google.com"'
description: Destination of 'custom' type traffic filter
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
preferredUplink:
type: string
enum:
- bestForVoIP
- defaultUplink
- loadBalancing
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'', ''wan2'', ''bestForVoIP'', ''loadBalancing'' or ''defaultUplink'''
failOverCriterion:
type: string
enum:
- poorPerformance
- uplinkDown
description: 'Fail over criterion for uplink preference rule. Must be one of: ''poorPerformance'' or ''uplinkDown'''
performanceClass:
type: object
properties:
type:
type: string
enum:
- builtin
- custom
description: 'Type of this performance class. Must be one of: ''builtin'' or ''custom'''
builtinPerformanceClassName:
type: string
enum:
- VoIP
description: 'Name of builtin performance class. Must be present when performanceClass type is ''builtin'' and value must be one of: ''VoIP'''
customPerformanceClassId:
type: string
description: ID of created custom performance class, must be present when performanceClass type is "custom"
required:
- type
description: Performance class setting for uplink preference rule
required:
- trafficFilters
- preferredUplink
description: Uplink preference rules for VPN traffic
example:
activeActiveAutoVpnEnabled: true
defaultUplink: wan1
loadBalancingEnabled: true
failoverAndFailback:
immediate:
enabled: true
wanTrafficUplinkPreferences:
- trafficFilters:
- type: custom
value:
protocol: tcp
source:
port: 1-1024
cidr: 192.168.1.0/24
vlan: 10
host: 254
destination:
port: any
cidr: any
applications:
- id: meraki:layer7/application/3
name: DNS
type: major
preferredUplink: wan1
vpnTrafficUplinkPreferences:
- trafficFilters:
- type: applicationCategory
value:
id: meraki:layer7/category/1
protocol: tcp
source:
port: any
cidr: 192.168.1.0/24
network: L_23456789
vlan: 20
host: 200
destination:
port: 1-1024
cidr: any
network: L_12345678
vlan: 10
host: 254
fqdn: www.google.com
preferredUplink: bestForVoIP
failOverCriterion: poorPerformance
performanceClass:
type: custom
builtinPerformanceClassName: VoIP
customPerformanceClassId: '123456'
summary: Show uplink selection settings for an MX network
tags:
- appliance.configure
put:
description: Update uplink selection settings for an MX network
operationId: updateNetworkApplianceTrafficShapingUplinkSelection
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
activeActiveAutoVpnEnabled:
type: boolean
description: Toggle for enabling or disabling active-active AutoVPN
defaultUplink:
type: string
enum:
- wan1
- wan2
description: 'The default uplink. Must be one of: ''wan1'' or ''wan2'''
loadBalancingEnabled:
type: boolean
description: Toggle for enabling or disabling load balancing
failoverAndFailback:
type: object
properties:
immediate:
type: object
properties:
enabled:
type: boolean
description: Toggle for enabling or disabling immediate WAN failover and failback
required:
- enabled
description: Immediate WAN transition terminates all flows (new and existing) on current WAN when it is deemed unreliable.
description: WAN failover and failback behavior
wanTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- custom
description: 'Type of this traffic filter. Must be one of: ''custom'''
value:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp6
- tcp
- udp
description: 'Protocol of this custom type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: 'CIDR format address, or "any". E.g.: "192.168.10.0/24", "192.168.10.1" (same as "192.168.10.1/32"), "0.0.0.0/0" (same as "any")'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN, should be used along with 'vlan', and not exceed the vlan subnet capacity. Currently only available under a template network.
description: Source of this custom type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: 'CIDR format address, or "any". E.g.: "192.168.10.0/24", "192.168.10.1" (same as "192.168.10.1/32"), "0.0.0.0/0" (same as "any")'
description: Destination of this custom type traffic filter
required:
- source
- destination
description: Value object of this traffic filter
required:
- type
- value
description: Array of traffic filters for this uplink preference rule
preferredUplink:
type: string
enum:
- wan1
- wan2
description: 'Preferred uplink for this uplink preference rule. Must be one of: ''wan1'' or ''wan2'''
required:
- trafficFilters
- preferredUplink
description: Array of uplink preference rules for WAN traffic
vpnTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- custom
description: 'Type of this traffic filter. Must be one of: ''applicationCategory'', ''application'' or ''custom'''
value:
type: object
properties:
id:
type: string
description: 'ID of this applicationCategory or application type traffic filter. E.g.: "meraki:layer7/category/1", "meraki:layer7/application/4"'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: 'Protocol of this custom type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: 'CIDR format address, or "any". E.g.: "192.168.10.0/24", "192.168.10.1" (same as "192.168.10.1/32"), "0.0.0.0/0" (same as "any")'
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN, should be used along with 'vlan', and not exceed the vlan subnet capacity. Currently only available under a template network.
description: Source of this custom type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: 'CIDR format address, or "any". E.g.: "192.168.10.0/24", "192.168.10.1" (same as "192.168.10.1/32"), "0.0.0.0/0" (same as "any")'
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN, should be used along with 'vlan', and not exceed the vlan subnet capacity. Currently only available under a template network.
fqdn:
type: string
description: 'FQDN format address. Currently only availabe in ''destination'' of ''vpnTrafficUplinkPreference'' object. E.g.: ''www.google.com'''
description: Destination of this custom type traffic filter
description: Value object of this traffic filter
required:
- type
- value
description: Array of traffic filters for this uplink preference rule
preferredUplink:
type: string
enum:
- bestForVoIP
- defaultUplink
- loadBalancing
- wan1
- wan2
description: 'Preferred uplink for this uplink preference rule. Must be one of: ''wan1'', ''wan2'', ''bestForVoIP'', ''loadBalancing'' or ''defaultUplink'''
failOverCriterion:
type: string
enum:
- poorPerformance
- uplinkDown
description: 'Fail over criterion for this uplink preference rule. Must be one of: ''poorPerformance'' or ''uplinkDown'''
performanceClass:
type: object
properties:
type:
type: string
enum:
- builtin
- custom
description: 'Type of this performance class. Must be one of: ''builtin'' or ''custom'''
builtinPerformanceClassName:
type: string
enum:
- VoIP
description: 'Name of builtin performance class, must be present when performanceClass type is ''builtin'', and value must be one of: ''VoIP'''
customPerformanceClassId:
type: string
description: ID of created custom performance class, must be present when performanceClass type is 'custom'
required:
- type
description: Performance class setting for this uplink preference rule
required:
- trafficFilters
- preferredUplink
description: Array of uplink preference rules for VPN traffic
example:
activeActiveAutoVpnEnabled: true
defaultUplink: wan1
loadBalancingEnabled: true
failoverAndFailback:
immediate:
enabled: true
wanTrafficUplinkPreferences:
- trafficFilters:
- type: custom
value:
protocol: tcp
source:
port: 1-1024
cidr: 192.168.1.0/24
vlan: 10
host: 254
destination:
port: any
cidr: any
preferredUplink: wan1
vpnTrafficUplinkPreferences:
- trafficFilters:
- type: applicationCategory
value:
id: meraki:layer7/category/1
protocol: tcp
source:
port: any
cidr: 192.168.1.0/24
network: L_23456789
vlan: 20
host: 200
destination:
port: 1-1024
cidr: any
network: L_12345678
vlan: 10
host: 254
fqdn: www.google.com
preferredUplink: bestForVoIP
failOverCriterion: poorPerformance
performanceClass:
type: custom
builtinPerformanceClassName: VoIP
customPerformanceClassId: '123456'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
activeActiveAutoVpnEnabled:
type: boolean
description: Whether active-active AutoVPN is enabled
defaultUplink:
type: string
enum:
- wan1
- wan2
description: 'The default uplink. Must be one of: ''wan1'' or ''wan2'''
loadBalancingEnabled:
type: boolean
description: Whether load balancing is enabled
failoverAndFailback:
type: object
properties:
immediate:
type: object
properties:
enabled:
type: boolean
description: Whether immediate WAN failover and failback is enabled
required:
- enabled
description: Immediate WAN failover and failback
description: WAN failover and failback
wanTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- custom
description: Traffic filter type. Must be "custom"
value:
type: object
properties:
protocol:
type: string
enum:
- any
- icmp6
- tcp
- udp
description: 'Protocol of ''custom'' type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of 'custom' type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any"
applications:
type: array
items:
type: object
properties:
id:
type: string
description: Id of the major application, or a list of NBAR Application Category or Application selections
name:
type: string
description: Name of the major application or application category selected
type:
type: string
description: app type (major or nbar)
description: list of application objects (either majorApplication or nbar)
description: Destination of 'custom' type traffic filter
required:
- source
- destination
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
preferredUplink:
type: string
enum:
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'' or ''wan2'''
required:
- trafficFilters
- preferredUplink
description: Uplink preference rules for WAN traffic
vpnTrafficUplinkPreferences:
type: array
items:
type: object
properties:
trafficFilters:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- custom
description: 'Traffic filter type. Must be one of: ''applicationCategory'', ''application'' or ''custom'''
value:
type: object
properties:
id:
type: string
description: ID of 'applicationCategory' or 'application' type traffic filter
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: 'Protocol of ''custom'' type traffic filter. Must be one of: ''tcp'', ''udp'', ''icmp'', ''icmp6'' or ''any'''
source:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" property
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
description: Source of 'custom' type traffic filter
destination:
type: object
properties:
port:
type: string
description: 'E.g.: "any", "0" (also means "any"), "8080", "1-1024"'
cidr:
type: string
description: CIDR format address (e.g."192.168.10.1", which is the same as "192.168.10.1/32"), or "any". Cannot be used in combination with the "vlan" or "fqdn" property
network:
type: string
description: 'Meraki network ID. Currently only available under a template network, and the value should be ID of either same template network, or another template network currently. E.g.: "L_12345678".'
vlan:
type: integer
description: VLAN ID of the configured VLAN in the Meraki network. Cannot be used in combination with the "cidr" or "fqdn" property and is currently only available under a template network.
host:
type: integer
description: Host ID in the VLAN. Should not exceed the VLAN subnet capacity. Must be used along with the "vlan" property and is currently only available under a template network.
fqdn:
type: string
description: 'FQDN format address. Cannot be used in combination with the "cidr" or "fqdn" property and is currently only available in the "destination" object of the "vpnTrafficUplinkPreference" object. E.g.: "www.google.com"'
description: Destination of 'custom' type traffic filter
description: Value of traffic filter
required:
- type
- value
description: Traffic filters
preferredUplink:
type: string
enum:
- bestForVoIP
- defaultUplink
- loadBalancing
- wan1
- wan2
description: 'Preferred uplink for uplink preference rule. Must be one of: ''wan1'', ''wan2'', ''bestForVoIP'', ''loadBalancing'' or ''defaultUplink'''
failOverCriterion:
type: string
enum:
- poorPerformance
- uplinkDown
description: 'Fail over criterion for uplink preference rule. Must be one of: ''poorPerformance'' or ''uplinkDown'''
performanceClass:
type: object
properties:
type:
type: string
enum:
- builtin
- custom
description: 'Type of this performance class. Must be one of: ''builtin'' or ''custom'''
builtinPerformanceClassName:
type: string
enum:
- VoIP
description: 'Name of builtin performance class. Must be present when performanceClass type is ''builtin'' and value must be one of: ''VoIP'''
customPerformanceClassId:
type: string
description: ID of created custom performance class, must be present when performanceClass type is "custom"
required:
- type
description: Performance class setting for uplink preference rule
required:
- trafficFilters
- preferredUplink
description: Uplink preference rules for VPN traffic
example:
activeActiveAutoVpnEnabled: true
defaultUplink: wan1
loadBalancingEnabled: true
failoverAndFailback:
immediate:
enabled: true
wanTrafficUplinkPreferences:
- trafficFilters:
- type: custom
value:
protocol: tcp
source:
port: 1-1024
cidr: 192.168.1.0/24
vlan: 10
host: 254
destination:
port: any
cidr: any
applications:
- id: meraki:layer7/application/3
name: DNS
type: major
preferredUplink: wan1
vpnTrafficUplinkPreferences:
- trafficFilters:
- type: applicationCategory
value:
id: meraki:layer7/category/1
protocol: tcp
source:
port: any
cidr: 192.168.1.0/24
network: L_23456789
vlan: 20
host: 200
destination:
port: 1-1024
cidr: any
network: L_12345678
vlan: 10
host: 254
fqdn: www.google.com
preferredUplink: bestForVoIP
failOverCriterion: poorPerformance
performanceClass:
type: custom
builtinPerformanceClassName: VoIP
customPerformanceClassId: '123456'
summary: Update uplink selection settings for an MX network
tags:
- appliance.configure
/networks/{networkId}/appliance/trafficShaping/vpnExclusions:
put:
description: Update VPN exclusion rules for an MX network.
operationId: updateNetworkApplianceTrafficShapingVpnExclusions
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
custom:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- any
- dns
- icmp
- tcp
- udp
description: Protocol.
destination:
type: string
description: Destination address; hostname required for DNS, IPv4 otherwise.
port:
type: string
description: Destination port.
required:
- protocol
description: Custom VPN exclusion rules. Pass an empty array to clear existing rules.
majorApplications:
type: array
items:
type: object
properties:
id:
type: string
description: Application's Meraki ID.
name:
type: string
enum:
- AWS
- Box
- Office 365 Sharepoint
- Office 365 Suite
- Oracle
- SAP
- Salesforce
- Skype & Teams
- Slack
- Webex
- Webex Calling
- Webex Meetings
- Zoom
description: Application's name.
required:
- id
description: Major Application based VPN exclusion rules. Pass an empty array to clear existing rules.
example:
custom:
- protocol: tcp
destination: 192.168.3.0/24
port: '8000'
majorApplications:
- id: meraki:vpnExclusion/application/2
name: Office 365 Sharepoint
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
networkId:
type: string
description: ID of the network whose VPN exclusion rules are returned.
networkName:
type: string
description: Name of the network whose VPN exclusion rules are returned.
custom:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- any
- dns
- icmp
- tcp
- udp
description: Protocol.
destination:
type: string
description: Destination address; hostname required for DNS, IPv4 otherwise.
port:
type: string
description: Destination port.
required:
- protocol
- destination
- port
description: Custom VPN exclusion rules.
majorApplications:
type: array
items:
type: object
properties:
id:
type: string
description: Application's Meraki ID.
name:
type: string
enum:
- AWS
- Box
- Office 365 Sharepoint
- Office 365 Suite
- Oracle
- SAP
- Salesforce
- Skype & Teams
- Slack
- Webex
- Webex Calling
- Webex Meetings
- Zoom
description: Application's name.
required:
- id
- name
description: Major Application based VPN exclusion rules.
required:
- networkId
- networkName
- custom
- majorApplications
example:
networkId: N_24329156
networkName: Main Office
custom:
- protocol: tcp
destination: 192.168.3.0/24
port: '8000'
majorApplications:
- id: meraki:vpnExclusion/application/2
name: Office 365 Sharepoint
summary: Update VPN exclusion rules for an MX network.
tags:
- appliance.configure
/networks/{networkId}/appliance/uplinks/usageHistory:
get:
description: Get the sent and received bytes for each uplink of a network.
operationId: getNetworkApplianceUplinksUsageHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 365 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 31 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 less than or equal to 31 days. The default is 10 minutes.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 60, 300, 600, 1800, 3600, 86400. The default is 60.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- startTime: '2021-07-22T02:00:00Z'
endTime: '2021-07-22T03:00:00Z'
byInterface:
- interface: wan1
sent: 1562063
received: 9528787
- interface: wan2
sent: 396646
received: 2747782
- startTime: '2021-07-22T03:00:00Z'
endTime: '2021-07-22T04:00:00Z'
byInterface:
- interface: wan1
sent: 6326222
received: 12253346
- interface: wan2
sent: 402850
received: 2981021
summary: Get the sent and received bytes for each uplink of a network.
tags:
- appliance.monitor
/networks/{networkId}/appliance/vlans:
get:
description: List the VLANs for an MX network
operationId: getNetworkApplianceVlans
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: The VLAN ID of the VLAN
interfaceId:
type: string
description: The interface ID of the VLAN
name:
type: string
description: The name of the VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
default: same
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
dhcpRelayServerIps:
type: array
items:
type: string
description: The IPs of the DHCP servers that DHCP requests should be relayed to
dhcpHandling:
type: string
enum:
- Do not respond to DHCP requests
- Relay DHCP to another server
- Run a DHCP server
description: 'The appliance''s handling of DHCP requests on this VLAN. One of: ''Run a DHCP server'', ''Relay DHCP to another server'' or ''Do not respond to DHCP requests'''
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: 'The term of DHCP leases if the appliance is running a DHCP server on this VLAN. One of: ''30 minutes'', ''1 hour'', ''4 hours'', ''12 hours'', ''1 day'' or ''1 week'''
dhcpBootOptionsEnabled:
type: boolean
description: Use DHCP boot options specified in other properties
dhcpBootNextServer:
type: string
description: DHCP boot option to direct boot clients to the server to load the boot file from
dhcpBootFilename:
type: string
description: DHCP boot option for boot filename
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: IP address of the assignment
name:
type: string
description: Name of the IP assignment
description: IP assignment information, keyed by MAC address of the device
description: The DHCP fixed IP assignments on the VLAN. This should be an object that contains mappings from MAC addresses to objects that themselves each contain "ip" and "name" string fields. See the sample request/response for more details.
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The first IP in the reserved range
end:
type: string
description: The last IP in the reserved range
comment:
type: string
description: A text comment for the reserved range
description: The DHCP reserved IP ranges on the VLAN
dnsNameservers:
type: string
description: The DNS nameservers used for DHCP responses, either "upstream_dns", "google_dns", "opendns", or a newline seperated string of IP addresses or domain names
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for the DHCP option. This should be an integer between 2 and 254.
type:
type: string
enum:
- hex
- integer
- ip
- text
description: 'The type for the DHCP option. One of: ''text'', ''ip'', ''hex'' or ''integer'''
value:
type: string
description: The value for the DHCP option
required:
- code
- type
- value
description: The list of DHCP options that will be included in DHCP responses. Each object in the list should have "code", "type", and "value" properties.
vpnNatSubnet:
type: string
description: The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
example:
- id: '1234'
interfaceId: '1284392014819'
name: My VLAN
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
dhcpRelayServerIps:
- 192.168.1.0/24
- 192.168.128.0/24
dhcpHandling: Run a DHCP server
dhcpLeaseTime: 1 day
dhcpBootOptionsEnabled: false
dhcpBootNextServer: 1.2.3.4
dhcpBootFilename: sample.file
fixedIpAssignments:
'00:11:22:33:44:55':
ip: 1.2.3.4
name: My favorite IP
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
dnsNameservers: google_dns
dhcpOptions:
- code: '5'
type: text
value: five
vpnNatSubnet: 192.168.1.0/24
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: List the VLANs for an MX network
tags:
- appliance.configure
post:
description: Add a VLAN
operationId: createNetworkApplianceVlan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The VLAN ID of the new VLAN (must be between 1 and 4094)
name:
type: string
description: The name of the new VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
default: same
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN.
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
required:
- type
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
dhcpHandling:
type: string
enum:
- Do not respond to DHCP requests
- Relay DHCP to another server
- Run a DHCP server
description: 'The appliance''s handling of DHCP requests on this VLAN. One of: ''Run a DHCP server'', ''Relay DHCP to another server'' or ''Do not respond to DHCP requests'''
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: 'The term of DHCP leases if the appliance is running a DHCP server on this VLAN. One of: ''30 minutes'', ''1 hour'', ''4 hours'', ''12 hours'', ''1 day'' or ''1 week'''
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
dhcpBootOptionsEnabled:
type: boolean
description: Use DHCP boot options specified in other properties
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for the DHCP option. This should be an integer between 2 and 254.
type:
type: string
enum:
- hex
- integer
- ip
- text
description: 'The type for the DHCP option. One of: ''text'', ''ip'', ''hex'' or ''integer'''
value:
type: string
description: The value for the DHCP option
required:
- code
- type
- value
description: The list of DHCP options that will be included in DHCP responses. Each object in the list should have "code", "type", and "value" properties.
example:
id: '1234'
name: My VLAN
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
dhcpHandling: Run a DHCP server
dhcpLeaseTime: 30 minutes
mandatoryDhcp:
enabled: true
dhcpBootOptionsEnabled: true
dhcpOptions:
- code: '3'
type: text
value: five
required:
- id
- name
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The VLAN ID of the VLAN
interfaceId:
type: string
description: The interface ID of the VLAN
name:
type: string
description: The name of the VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
default: same
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
example:
id: '1234'
interfaceId: '1284392014819'
name: My VLAN
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: Add a VLAN
tags:
- appliance.configure
/networks/{networkId}/appliance/vlans/settings:
get:
description: Returns the enabled status of VLANs for the network
operationId: getNetworkApplianceVlansSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
vlansEnabled:
type: boolean
description: Boolean indicating whether VLANs are enabled (true) or disabled (false) for the network
example:
vlansEnabled: true
summary: Returns the enabled status of VLANs for the network
tags:
- appliance.configure
put:
description: Enable/Disable VLANs for the given network
operationId: updateNetworkApplianceVlansSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
vlansEnabled:
type: boolean
description: Boolean indicating whether to enable (true) or disable (false) VLANs for the network
example:
vlansEnabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
vlansEnabled:
type: boolean
description: Boolean indicating whether VLANs are enabled (true) or disabled (false) for the network
example:
vlansEnabled: true
summary: Enable/Disable VLANs for the given network
tags:
- appliance.configure
/networks/{networkId}/appliance/vlans/{vlanId}:
get:
description: Return a VLAN
operationId: getNetworkApplianceVlan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: vlanId
in: path
description: Vlan ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The VLAN ID of the VLAN
interfaceId:
type: string
description: The interface ID of the VLAN
name:
type: string
description: The name of the VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
default: same
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
dhcpRelayServerIps:
type: array
items:
type: string
description: The IPs of the DHCP servers that DHCP requests should be relayed to
dhcpHandling:
type: string
enum:
- Do not respond to DHCP requests
- Relay DHCP to another server
- Run a DHCP server
description: 'The appliance''s handling of DHCP requests on this VLAN. One of: ''Run a DHCP server'', ''Relay DHCP to another server'' or ''Do not respond to DHCP requests'''
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: 'The term of DHCP leases if the appliance is running a DHCP server on this VLAN. One of: ''30 minutes'', ''1 hour'', ''4 hours'', ''12 hours'', ''1 day'' or ''1 week'''
dhcpBootOptionsEnabled:
type: boolean
description: Use DHCP boot options specified in other properties
dhcpBootNextServer:
type: string
description: DHCP boot option to direct boot clients to the server to load the boot file from
dhcpBootFilename:
type: string
description: DHCP boot option for boot filename
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: IP address of the assignment
name:
type: string
description: Name of the IP assignment
description: IP assignment information, keyed by MAC address of the device
description: The DHCP fixed IP assignments on the VLAN. This should be an object that contains mappings from MAC addresses to objects that themselves each contain "ip" and "name" string fields. See the sample request/response for more details.
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The first IP in the reserved range
end:
type: string
description: The last IP in the reserved range
comment:
type: string
description: A text comment for the reserved range
description: The DHCP reserved IP ranges on the VLAN
dnsNameservers:
type: string
description: The DNS nameservers used for DHCP responses, either "upstream_dns", "google_dns", "opendns", or a newline seperated string of IP addresses or domain names
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for the DHCP option. This should be an integer between 2 and 254.
type:
type: string
enum:
- hex
- integer
- ip
- text
description: 'The type for the DHCP option. One of: ''text'', ''ip'', ''hex'' or ''integer'''
value:
type: string
description: The value for the DHCP option
required:
- code
- type
- value
description: The list of DHCP options that will be included in DHCP responses. Each object in the list should have "code", "type", and "value" properties.
vpnNatSubnet:
type: string
description: The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
example:
id: '1234'
interfaceId: '1284392014819'
name: My VLAN
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
dhcpRelayServerIps:
- 192.168.1.0/24
- 192.168.128.0/24
dhcpHandling: Run a DHCP server
dhcpLeaseTime: 1 day
dhcpBootOptionsEnabled: false
dhcpBootNextServer: 1.2.3.4
dhcpBootFilename: sample.file
fixedIpAssignments:
'00:11:22:33:44:55':
ip: 1.2.3.4
name: My favorite IP
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
dnsNameservers: google_dns
dhcpOptions:
- code: '5'
type: text
value: five
vpnNatSubnet: 192.168.1.0/24
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: Return a VLAN
tags:
- appliance.configure
put:
description: Update a VLAN
operationId: updateNetworkApplianceVlan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: vlanId
in: path
description: Vlan ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
vpnNatSubnet:
type: string
description: The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN
dhcpHandling:
type: string
enum:
- Do not respond to DHCP requests
- Relay DHCP to another server
- Run a DHCP server
description: 'The appliance''s handling of DHCP requests on this VLAN. One of: ''Run a DHCP server'', ''Relay DHCP to another server'' or ''Do not respond to DHCP requests'''
dhcpRelayServerIps:
type: array
items:
type: string
description: The IPs of the DHCP servers that DHCP requests should be relayed to
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: 'The term of DHCP leases if the appliance is running a DHCP server on this VLAN. One of: ''30 minutes'', ''1 hour'', ''4 hours'', ''12 hours'', ''1 day'' or ''1 week'''
dhcpBootOptionsEnabled:
type: boolean
description: Use DHCP boot options specified in other properties
dhcpBootNextServer:
type: string
description: DHCP boot option to direct boot clients to the server to load the boot file from
dhcpBootFilename:
type: string
description: DHCP boot option for boot filename
fixedIpAssignments:
type: object
description: The DHCP fixed IP assignments on the VLAN. This should be an object that contains mappings from MAC addresses to objects that themselves each contain "ip" and "name" string fields. See the sample request/response for more details.
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The first IP in the reserved range
end:
type: string
description: The last IP in the reserved range
comment:
type: string
description: A text comment for the reserved range
required:
- start
- end
- comment
description: The DHCP reserved IP ranges on the VLAN
dnsNameservers:
type: string
description: The DNS nameservers used for DHCP responses, either "upstream_dns", "google_dns", "opendns", or a newline seperated string of IP addresses or domain names
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for the DHCP option. This should be an integer between 2 and 254.
type:
type: string
enum:
- hex
- integer
- ip
- text
description: 'The type for the DHCP option. One of: ''text'', ''ip'', ''hex'' or ''integer'''
value:
type: string
description: The value for the DHCP option
required:
- code
- type
- value
description: The list of DHCP options that will be included in DHCP responses. Each object in the list should have "code", "type", and "value" properties.
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN.
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
required:
- type
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
example:
name: My VLAN
applianceIp: 192.168.1.2
subnet: 192.168.1.0/24
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
fixedIpAssignments:
'22:33:44:55:66:77':
ip: 1.2.3.4
name: Some client name
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
dnsNameservers: google_dns
dhcpHandling: Run a DHCP server
dhcpLeaseTime: 1 day
dhcpBootOptionsEnabled: false
dhcpBootNextServer: 1.2.3.4
dhcpBootFilename: sample.file
dhcpOptions:
- code: '5'
type: text
value: five
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
mandatoryDhcp:
enabled: true
adaptivePolicyGroupId: '1234'
dhcpRelayServerIps:
- 192.168.1.0/24
- 192.168.128.0/24
vpnNatSubnet: 192.168.1.0/24
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The VLAN ID of the VLAN
interfaceId:
type: string
description: The interface ID of the VLAN
name:
type: string
description: The name of the VLAN
subnet:
type: string
description: The subnet of the VLAN
applianceIp:
type: string
description: The local IP of the appliance on the VLAN
groupPolicyId:
type: string
description: The id of the desired group policy to apply to the VLAN
templateVlanType:
type: string
enum:
- same
- unique
description: Type of subnetting of the VLAN. Applicable only for template network.
default: same
cidr:
type: string
description: CIDR of the pool of subnets. Applicable only for template network. Each network bound to the template will automatically pick a subnet from this pool to build its own VLAN.
mask:
type: integer
description: Mask used for the subnet of all bound to the template networks. Applicable only for template network.
dhcpRelayServerIps:
type: array
items:
type: string
description: The IPs of the DHCP servers that DHCP requests should be relayed to
dhcpHandling:
type: string
enum:
- Do not respond to DHCP requests
- Relay DHCP to another server
- Run a DHCP server
description: 'The appliance''s handling of DHCP requests on this VLAN. One of: ''Run a DHCP server'', ''Relay DHCP to another server'' or ''Do not respond to DHCP requests'''
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: 'The term of DHCP leases if the appliance is running a DHCP server on this VLAN. One of: ''30 minutes'', ''1 hour'', ''4 hours'', ''12 hours'', ''1 day'' or ''1 week'''
dhcpBootOptionsEnabled:
type: boolean
description: Use DHCP boot options specified in other properties
dhcpBootNextServer:
type: string
description: DHCP boot option to direct boot clients to the server to load the boot file from
dhcpBootFilename:
type: string
description: DHCP boot option for boot filename
fixedIpAssignments:
type: object
additionalProperties:
type: object
properties:
ip:
type: string
description: IP address of the assignment
name:
type: string
description: Name of the IP assignment
description: IP assignment information, keyed by MAC address of the device
description: The DHCP fixed IP assignments on the VLAN. This should be an object that contains mappings from MAC addresses to objects that themselves each contain "ip" and "name" string fields. See the sample request/response for more details.
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The first IP in the reserved range
end:
type: string
description: The last IP in the reserved range
comment:
type: string
description: A text comment for the reserved range
description: The DHCP reserved IP ranges on the VLAN
dnsNameservers:
type: string
description: The DNS nameservers used for DHCP responses, either "upstream_dns", "google_dns", "opendns", or a newline seperated string of IP addresses or domain names
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for the DHCP option. This should be an integer between 2 and 254.
type:
type: string
enum:
- hex
- integer
- ip
- text
description: 'The type for the DHCP option. One of: ''text'', ''ip'', ''hex'' or ''integer'''
value:
type: string
description: The value for the DHCP option
required:
- code
- type
- value
description: The list of DHCP options that will be included in DHCP responses. Each object in the list should have "code", "type", and "value" properties.
vpnNatSubnet:
type: string
description: The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN
mandatoryDhcp:
type: object
properties:
enabled:
type: boolean
description: Enable Mandatory DHCP on VLAN.
description: Mandatory DHCP will enforce that clients connecting to this VLAN must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate. Only available on firmware versions 17.0 and above
ipv6:
type: object
properties:
enabled:
type: boolean
description: Enable IPv6 on VLAN
prefixAssignments:
type: array
items:
type: object
properties:
autonomous:
type: boolean
description: Auto assign a /64 prefix from the origin to the VLAN
staticPrefix:
type: string
description: Manual configuration of a /64 prefix on the VLAN
staticApplianceIp6:
type: string
description: Manual configuration of the IPv6 Appliance IP
origin:
type: object
properties:
type:
type: string
enum:
- independent
- internet
description: Type of the origin
interfaces:
type: array
items:
type: string
description: Interfaces associated with the prefix
description: The origin of the prefix
description: Prefix assignments on the VLAN
description: IPv6 configuration on the VLAN
example:
id: '1234'
interfaceId: '1284392014819'
name: My VLAN
subnet: 192.168.1.0/24
applianceIp: 192.168.1.2
groupPolicyId: '101'
templateVlanType: same
cidr: 192.168.1.0/24
mask: 28
dhcpRelayServerIps:
- 192.168.1.0/24
- 192.168.128.0/24
dhcpHandling: Run a DHCP server
dhcpLeaseTime: 1 day
dhcpBootOptionsEnabled: false
dhcpBootNextServer: 1.2.3.4
dhcpBootFilename: sample.file
fixedIpAssignments:
'00:11:22:33:44:55':
ip: 1.2.3.4
name: My favorite IP
reservedIpRanges:
- start: 192.168.1.0
end: 192.168.1.1
comment: A reserved IP range
dnsNameservers: google_dns
dhcpOptions:
- code: '5'
type: text
value: five
vpnNatSubnet: 192.168.1.0/24
mandatoryDhcp:
enabled: true
ipv6:
enabled: true
prefixAssignments:
- autonomous: false
staticPrefix: 2001:db8:3c4d:15::/64
staticApplianceIp6: 2001:db8:3c4d:15::1
origin:
type: internet
interfaces:
- wan0
summary: Update a VLAN
tags:
- appliance.configure
delete:
description: Delete a VLAN from a network
operationId: deleteNetworkApplianceVlan
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: vlanId
in: path
description: Vlan ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a VLAN from a network
tags:
- appliance.configure
/networks/{networkId}/appliance/vpn/bgp:
get:
description: Return a Hub BGP Configuration
operationId: getNetworkApplianceVpnBgp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Whether BGP is enabled on the appliance
asNumber:
type: integer
description: The number of the Autonomous System to which the appliance belongs
ibgpHoldTimer:
type: integer
description: The iBGP hold time in seconds
neighbors:
type: array
items:
type: object
properties:
ip:
type: string
description: The IPv4 address of the neighbor
ipv6:
type: object
properties:
address:
type: string
description: The IPv6 address of the neighbor
description: Information regarding IPv6 address of the neighbor
remoteAsNumber:
type: integer
description: Remote AS number of the neighbor
receiveLimit:
type: integer
description: The maximum number of routes that the appliance can receive from the neighbor
allowTransit:
type: boolean
description: Whether the appliance will advertise routes learned from other Autonomous Systems
ebgpHoldTimer:
type: integer
description: The eBGP hold time in seconds for the neighbor
ebgpMultihop:
type: integer
description: The number of hops the appliance must traverse to establish a peering relationship with the neighbor
sourceInterface:
type: string
description: The output interface the appliance uses to establish a peering relationship with the neighbor
nextHopIp:
type: string
description: The IPv4 address of the neighbor that will establish a TCP session with the appliance
ttlSecurity:
type: object
properties:
enabled:
type: boolean
description: Whether BGP TTL security is enabled
description: Settings for BGP TTL security to protect BGP peering sessions from forged IP attacks
authentication:
type: object
properties:
password:
type: string
description: Password to configure MD5 authentication between BGP peers
description: Authentication settings between BGP peers
description: List of eBGP neighbor configurations
example:
enabled: true
asNumber: 64515
ibgpHoldTimer: 120
neighbors:
- ip: 10.10.10.22
ipv6:
address: 2002::1234:abcd:ffff:c0a8:101
remoteAsNumber: 64343
receiveLimit: 120
allowTransit: true
ebgpHoldTimer: 180
ebgpMultihop: 2
sourceInterface: wan1
nextHopIp: 1.2.3.4
ttlSecurity:
enabled: false
authentication:
password: abc123
summary: Return a Hub BGP Configuration
tags:
- appliance.configure
put:
description: Update a Hub BGP Configuration
operationId: updateNetworkApplianceVpnBgp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable the BGP configuration. When BGP is enabled, the asNumber (ASN) will be autopopulated with the preconfigured ASN at other Hubs or a default value if there is no ASN configured.
asNumber:
type: integer
description: An Autonomous System Number (ASN) is required if you are to run BGP and peer with another BGP Speaker outside of the Auto VPN domain. This ASN will be applied to the entire Auto VPN domain. The entire 4-byte ASN range is supported. So, the ASN must be an integer between 1 and 4294967295. When absent, this field is not updated. If no value exists then it defaults to 64512.
ibgpHoldTimer:
type: integer
description: The iBGP holdtimer in seconds. The iBGP holdtimer must be an integer between 12 and 240. When absent, this field is not updated. If no value exists then it defaults to 240.
neighbors:
type: array
items:
type: object
properties:
ip:
type: string
description: The IPv4 address of the neighbor
ipv6:
type: object
properties:
address:
type: string
description: The IPv6 address of the neighbor.
required:
- address
description: Information regarding IPv6 address of the neighbor, Required if `ip` is not present.
remoteAsNumber:
type: integer
description: Remote ASN of the neighbor. The remote ASN must be an integer between 1 and 4294967295.
receiveLimit:
type: integer
description: The receive limit is the maximum number of routes that can be received from any BGP peer. The receive limit must be an integer between 0 and 2147483647. When absent, it defaults to 0.
allowTransit:
type: boolean
description: When this feature is on, the Meraki device will advertise routes learned from other Autonomous Systems, thereby allowing traffic between Autonomous Systems to transit this AS. When absent, it defaults to false.
ebgpHoldTimer:
type: integer
description: The eBGP hold timer in seconds for each neighbor. The eBGP hold timer must be an integer between 12 and 240.
ebgpMultihop:
type: integer
description: Configure this if the neighbor is not adjacent. The eBGP multi-hop must be an integer between 1 and 255.
sourceInterface:
type: string
description: 'The output interface for peering with the remote BGP peer. Valid values are: ''wan1'', ''wan2'' or ''vlan{VLAN ID}''(e.g. ''vlan123'').'
nextHopIp:
type: string
description: The IPv4 address of the remote BGP peer that will establish a TCP session with the local MX.
ttlSecurity:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable BGP TTL security.
description: Settings for BGP TTL security to protect BGP peering sessions from forged IP attacks.
authentication:
type: object
properties:
password:
type: string
description: Password to configure MD5 authentication between BGP peers.
description: Authentication settings between BGP peers.
required:
- remoteAsNumber
- ebgpHoldTimer
- ebgpMultihop
description: List of BGP neighbors. This list replaces the existing set of neighbors. When absent, this field is not updated.
example:
enabled: true
asNumber: 64515
ibgpHoldTimer: 120
neighbors:
- ip: 10.10.10.22
ipv6:
address: 2002::1234:abcd:ffff:c0a8:101
remoteAsNumber: 64343
receiveLimit: 120
allowTransit: true
ebgpHoldTimer: 180
ebgpMultihop: 2
sourceInterface: wan1
nextHopIp: 1.2.3.4
ttlSecurity:
enabled: false
authentication:
password: abc123
required:
- enabled
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Whether BGP is enabled on the appliance
asNumber:
type: integer
description: The number of the Autonomous System to which the appliance belongs
ibgpHoldTimer:
type: integer
description: The iBGP hold time in seconds
neighbors:
type: array
items:
type: object
properties:
ip:
type: string
description: The IPv4 address of the neighbor
ipv6:
type: object
properties:
address:
type: string
description: The IPv6 address of the neighbor
description: Information regarding IPv6 address of the neighbor
remoteAsNumber:
type: integer
description: Remote AS number of the neighbor
receiveLimit:
type: integer
description: The maximum number of routes that the appliance can receive from the neighbor
allowTransit:
type: boolean
description: Whether the appliance will advertise routes learned from other Autonomous Systems
ebgpHoldTimer:
type: integer
description: The eBGP hold time in seconds for the neighbor
ebgpMultihop:
type: integer
description: The number of hops the appliance must traverse to establish a peering relationship with the neighbor
sourceInterface:
type: string
description: The output interface the appliance uses to establish a peering relationship with the neighbor
nextHopIp:
type: string
description: The IPv4 address of the neighbor that will establish a TCP session with the appliance
ttlSecurity:
type: object
properties:
enabled:
type: boolean
description: Whether BGP TTL security is enabled
description: Settings for BGP TTL security to protect BGP peering sessions from forged IP attacks
authentication:
type: object
properties:
password:
type: string
description: Password to configure MD5 authentication between BGP peers
description: Authentication settings between BGP peers
description: List of eBGP neighbor configurations
example:
enabled: true
asNumber: 64515
ibgpHoldTimer: 120
neighbors:
- ip: 10.10.10.22
ipv6:
address: 2002::1234:abcd:ffff:c0a8:101
remoteAsNumber: 64343
receiveLimit: 120
allowTransit: true
ebgpHoldTimer: 180
ebgpMultihop: 2
sourceInterface: wan1
nextHopIp: 1.2.3.4
ttlSecurity:
enabled: false
authentication:
password: abc123
summary: Update a Hub BGP Configuration
tags:
- appliance.configure
/networks/{networkId}/appliance/vpn/siteToSiteVpn:
get:
description: Return the site-to-site VPN settings of a network. Only valid for MX networks.
operationId: getNetworkApplianceVpnSiteToSiteVpn
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: The site-to-site VPN mode.
hubs:
type: array
items:
type: object
properties:
hubId:
type: string
description: The network ID of the hub.
useDefaultRoute:
type: boolean
description: Indicates whether default route traffic should be sent to this hub.
description: The list of VPN hubs, in order of preference.
subnets:
type: array
items:
type: object
properties:
localSubnet:
type: string
description: The CIDR notation subnet used within the VPN
useVpn:
type: boolean
description: Indicates the presence of the subnet in the VPN
description: The list of subnets and their VPN presence.
example:
mode: spoke
hubs:
- hubId: N_4901849
useDefaultRoute: true
subnets:
- localSubnet: 192.168.1.0/24
useVpn: true
summary: Return the site-to-site VPN settings of a network
tags:
- appliance.configure
put:
description: Update the site-to-site VPN settings of a network. Only valid for MX networks in NAT mode.
operationId: updateNetworkApplianceVpnSiteToSiteVpn
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mode:
type: string
enum:
- hub
- none
- spoke
description: The site-to-site VPN mode. Can be one of 'none', 'spoke' or 'hub'
hubs:
type: array
items:
type: object
properties:
hubId:
type: string
description: The network ID of the hub.
useDefaultRoute:
type: boolean
description: Only valid in 'spoke' mode. Indicates whether default route traffic should be sent to this hub.
required:
- hubId
description: The list of VPN hubs, in order of preference. In spoke mode, at least 1 hub is required.
subnets:
type: array
items:
type: object
properties:
localSubnet:
type: string
description: The CIDR notation subnet used within the VPN
useVpn:
type: boolean
description: Indicates the presence of the subnet in the VPN
required:
- localSubnet
description: The list of subnets and their VPN presence.
example:
mode: spoke
hubs:
- hubId: N_4901849
useDefaultRoute: true
subnets:
- localSubnet: 192.168.1.0/24
useVpn: true
required:
- mode
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mode:
type: string
description: The site-to-site VPN mode.
hubs:
type: array
items:
type: object
properties:
hubId:
type: string
description: The network ID of the hub.
useDefaultRoute:
type: boolean
description: Indicates whether default route traffic should be sent to this hub.
description: The list of VPN hubs, in order of preference.
subnets:
type: array
items:
type: object
properties:
localSubnet:
type: string
description: The CIDR notation subnet used within the VPN
useVpn:
type: boolean
description: Indicates the presence of the subnet in the VPN
description: The list of subnets and their VPN presence.
example:
mode: spoke
hubs:
- hubId: N_4901849
useDefaultRoute: true
subnets:
- localSubnet: 192.168.1.0/24
useVpn: true
summary: Update the site-to-site VPN settings of a network
tags:
- appliance.configure
/networks/{networkId}/appliance/warmSpare:
get:
description: Return MX warm spare settings
operationId: getNetworkApplianceWarmSpare
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Is the warm spare enabled
primarySerial:
type: string
description: Serial number of the primary appliance
spareSerial:
type: string
description: Serial number of the warm spare appliance
uplinkMode:
type: string
description: Uplink mode, either virtual or public
wan1:
type: object
properties:
ip:
type: string
description: IP address used for WAN 1
subnet:
type: string
description: Subnet used for WAN 1
description: WAN 1 IP and subnet
wan2:
type: object
properties:
ip:
type: string
description: IP address used for WAN 2
subnet:
type: string
description: Subnet used for WAN 2
description: WAN 2 IP and subnet
example:
enabled: true
primarySerial: Q234-ABCD-5678
spareSerial: Q234-ABCD-5678
uplinkMode: virtual
wan1:
ip: 1.2.3.4
subnet: 192.168.1.0/24
wan2:
ip: 1.2.3.4
subnet: 192.168.1.0/24
summary: Return MX warm spare settings
tags:
- appliance.configure
put:
description: Update MX warm spare settings
operationId: updateNetworkApplianceWarmSpare
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Enable warm spare
spareSerial:
type: string
description: Serial number of the warm spare appliance
uplinkMode:
type: string
description: Uplink mode, either virtual or public
virtualIp1:
type: string
description: The WAN 1 shared IP
virtualIp2:
type: string
description: The WAN 2 shared IP
example:
enabled: true
spareSerial: Q234-ABCD-5678
uplinkMode: virtual
virtualIp1: 1.2.3.4
virtualIp2: 1.2.3.4
required:
- enabled
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Is the warm spare enabled
primarySerial:
type: string
description: Serial number of the primary appliance
spareSerial:
type: string
description: Serial number of the warm spare appliance
uplinkMode:
type: string
description: Uplink mode, either virtual or public
wan1:
type: object
properties:
ip:
type: string
description: IP address used for WAN 1
subnet:
type: string
description: Subnet used for WAN 1
description: WAN 1 IP and subnet
wan2:
type: object
properties:
ip:
type: string
description: IP address used for WAN 2
subnet:
type: string
description: Subnet used for WAN 2
description: WAN 2 IP and subnet
example:
enabled: true
primarySerial: Q234-ABCD-5678
spareSerial: Q234-ABCD-5678
uplinkMode: virtual
wan1:
ip: 1.2.3.4
subnet: 192.168.1.0/24
wan2:
ip: 1.2.3.4
subnet: 192.168.1.0/24
summary: Update MX warm spare settings
tags:
- appliance.configure
/networks/{networkId}/appliance/warmSpare/swap:
post:
description: Swap MX primary and warm spare appliances
operationId: swapNetworkApplianceWarmSpare
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Is the warm spare enabled
primarySerial:
type: string
description: Serial number of the primary appliance
spareSerial:
type: string
description: Serial number of the warm spare appliance
uplinkMode:
type: string
description: Uplink mode, either virtual or public
wan1:
type: object
properties:
ip:
type: string
description: IP address used for WAN 1
subnet:
type: string
description: Subnet used for WAN 1
description: WAN 1 IP and subnet
wan2:
type: object
properties:
ip:
type: string
description: IP address used for WAN 2
subnet:
type: string
description: Subnet used for WAN 2
description: WAN 2 IP and subnet
example:
enabled: true
primarySerial: Q234-ABCD-5678
spareSerial: Q234-ABCD-5678
uplinkMode: virtual
wan1:
ip: 1.2.3.4
subnet: 192.168.1.0/24
wan2:
ip: 1.2.3.4
subnet: 192.168.1.0/24
summary: Swap MX primary and warm spare appliances
tags:
- appliance.configure
/networks/{networkId}/cellularGateway/connectivityMonitoringDestinations:
get:
description: Return the connectivity testing destinations for an MG network
operationId: getNetworkCellularGatewayConnectivityMonitoringDestinations
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to an empty string
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
summary: Return the connectivity testing destinations for an MG network
tags:
- cellularGateway.configure
put:
description: Update the connectivity testing destinations for an MG network
operationId: updateNetworkCellularGatewayConnectivityMonitoringDestinations
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to an empty string
default: ''
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
default: false
required:
- ip
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
destinations:
type: array
items:
type: object
properties:
ip:
type: string
description: The IP address to test connectivity with
description:
type: string
description: Description of the testing destination. Optional, defaults to an empty string
default:
type: boolean
description: Boolean indicating whether this is the default testing destination (true) or not (false). Defaults to false. Only one default is allowed
description: The list of connectivity monitoring destinations
example:
destinations:
- ip: 1.2.3.4
description: Google
default: false
summary: Update the connectivity testing destinations for an MG network
tags:
- cellularGateway.configure
/networks/{networkId}/cellularGateway/dhcp:
get:
description: List common DHCP settings of MGs
operationId: getNetworkCellularGatewayDhcp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: DHCP Lease time for all MG in the network.
dnsNameservers:
type: string
enum:
- custom
- google_dns
- opendns
- upstream_dns
description: DNS name servers mode for all MG in the network.
dnsCustomNameservers:
type: array
items:
type: string
description: List of fixed IPs representing the the DNS Name servers when the mode is 'custom'.
example:
dhcpLeaseTime: 1 hour
dnsNameservers: custom
dnsCustomNameservers:
- 172.16.2.111
- 172.16.2.30
summary: List common DHCP settings of MGs
tags:
- cellularGateway.configure
put:
description: Update common DHCP settings of MGs
operationId: updateNetworkCellularGatewayDhcp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
dhcpLeaseTime:
type: string
description: DHCP Lease time for all MG of the network. Possible values are '30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week'.
dnsNameservers:
type: string
description: 'DNS name servers mode for all MG of the network. Possible values are: ''upstream_dns'', ''google_dns'', ''opendns'', ''custom''.'
dnsCustomNameservers:
type: array
items:
type: string
description: list of fixed IPs representing the the DNS Name servers when the mode is 'custom'
example:
dhcpLeaseTime: 1 hour
dnsNameservers: custom
dnsCustomNameservers:
- 172.16.2.111
- 172.16.2.30
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: DHCP Lease time for all MG in the network.
dnsNameservers:
type: string
enum:
- custom
- google_dns
- opendns
- upstream_dns
description: DNS name servers mode for all MG in the network.
dnsCustomNameservers:
type: array
items:
type: string
description: List of fixed IPs representing the the DNS Name servers when the mode is 'custom'.
example:
dhcpLeaseTime: 1 hour
dnsNameservers: custom
dnsCustomNameservers:
- 172.16.2.111
- 172.16.2.30
summary: Update common DHCP settings of MGs
tags:
- cellularGateway.configure
/networks/{networkId}/cellularGateway/subnetPool:
get:
description: Return the subnet pool and mask configured for MGs in the network.
operationId: getNetworkCellularGatewaySubnetPool
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
deploymentMode:
type: string
description: Deployment mode for the cellular gateways in the network. (Passthrough/Routed)
cidr:
type: string
description: CIDR of the pool of subnets. Each MG in this network will automatically pick a subnet from this pool.
mask:
type: integer
description: Mask used for the subnet of all MGs in this network.
subnets:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial Number of the MG.
name:
type: string
description: Name of the MG.
applianceIp:
type: string
description: Appliance IP of the MG device.
subnet:
type: string
description: Subnet of MG device.
description: List of subnets of all MGs in this network.
example:
deploymentMode: routed
cidr: 192.168.0.0/16
mask: 24
subnets:
- serial: AAAA-AAAA-AAAA
name: my first MG
applianceIp: 192.168.0.1
subnet: 192.168.0.0/24
summary: Return the subnet pool and mask configured for MGs in the network.
tags:
- cellularGateway.configure
put:
description: Update the subnet pool and mask configuration for MGs in the network.
operationId: updateNetworkCellularGatewaySubnetPool
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mask:
type: integer
description: Mask used for the subnet of all MGs in this network.
cidr:
type: string
description: CIDR of the pool of subnets. Each MG in this network will automatically pick a subnet from this pool.
example:
mask: 24
cidr: 192.168.0.0/16
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
deploymentMode:
type: string
description: Deployment mode for the cellular gateways in the network. (Passthrough/Routed)
cidr:
type: string
description: CIDR of the pool of subnets. Each MG in this network will automatically pick a subnet from this pool.
mask:
type: integer
description: Mask used for the subnet of all MGs in this network.
subnets:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial Number of the MG.
name:
type: string
description: Name of the MG.
applianceIp:
type: string
description: Appliance IP of the MG device.
subnet:
type: string
description: Subnet of MG device.
description: List of subnets of all MGs in this network.
example:
deploymentMode: routed
cidr: 192.168.0.0/16
mask: 24
subnets:
- serial: AAAA-AAAA-AAAA
name: my first MG
applianceIp: 192.168.0.1
subnet: 192.168.0.0/24
summary: Update the subnet pool and mask configuration for MGs in the network.
tags:
- cellularGateway.configure
/networks/{networkId}/cellularGateway/uplink:
get:
description: Returns the uplink settings for your MG network.
operationId: getNetworkCellularGatewayUplink
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). 'null' indicates no limit.
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). 'null' indicates no limit.
description: The bandwidth settings for the 'cellular' uplink
example:
bandwidthLimits:
limitUp: 51200
limitDown: 51200
summary: Returns the uplink settings for your MG network.
tags:
- cellularGateway.configure
put:
description: Updates the uplink settings for your MG network.
operationId: updateNetworkCellularGatewayUplink
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). null indicates no limit
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). null indicates no limit
description: The bandwidth settings for the 'cellular' uplink
example:
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). 'null' indicates no limit.
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). 'null' indicates no limit.
description: The bandwidth settings for the 'cellular' uplink
example:
bandwidthLimits:
limitUp: 51200
limitDown: 51200
summary: Updates the uplink settings for your MG network.
tags:
- cellularGateway.configure
/networks/{networkId}/insight/applications/{applicationId}/healthByTime:
get:
description: Get application health by time
operationId: getNetworkInsightApplicationHealthByTime
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: applicationId
in: path
description: Application ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 7 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 7 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 less than or equal to 7 days. The default is 2 hours.
schema:
type: number
format: float
maximum: 604800
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 60, 300, 3600, 86400. The default is 300.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
wanGoodput:
type: integer
description: WAN goodput (Number of useful information bits delivered over a WAN per unit of time)
lanGoodput:
type: integer
description: LAN goodput (Number of useful information bits delivered over a LAN per unit of time)
wanLatencyMs:
type: number
format: float
description: WAN latency in milliseconds
lanLatencyMs:
type: number
format: float
description: LAN latency in milliseconds
wanLossPercent:
type: number
format: float
description: WAN loss percentage
lanLossPercent:
type: number
format: float
description: LAN loss percentage
responseDuration:
type: integer
description: Duration of the response, in milliseconds
sent:
type: integer
description: Sent kilobytes-per-second
recv:
type: integer
description: Received kilobytes-per-second
numClients:
type: integer
description: Number of clients
example:
- startTs: '2018-02-11T00:00:00Z'
endTs: '2018-05-12T00:00:00Z'
wanGoodput: 20000000
lanGoodput: 100000000
wanLatencyMs: 10.1
lanLatencyMs: 3.2
wanLossPercent: 0.2
lanLossPercent: 0
responseDuration: 210
sent: 1000
recv: 5000
numClients: 2
summary: Get application health by time
tags:
- insight.monitor
/networks/{networkId}/switch/accessControlLists:
get:
description: Return the access control lists for a MS network
operationId: getNetworkSwitchAccessControlLists
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
ipVersion:
type: string
enum:
- any
- ipv4
- ipv6
description: IP address version
protocol:
type: string
enum:
- any
- tcp
- udp
description: The type of protocol
srcCidr:
type: string
description: Source IP address (in IP or CIDR notation)
srcPort:
type: string
description: Source port
dstCidr:
type: string
description: Destination IP address (in IP or CIDR notation)
dstPort:
type: string
description: Destination port
vlan:
type: string
description: ncoming traffic VLAN
description: An ordered array of the access control list rules
example:
rules:
- comment: Deny SSH
policy: deny
ipVersion: ipv4
protocol: tcp
srcCidr: 10.1.10.0/24
srcPort: any
dstCidr: 172.16.30/24
dstPort: '22'
vlan: '10'
summary: Return the access control lists for a MS network
tags:
- switch.configure
put:
description: Update the access control lists for a MS network
operationId: updateNetworkSwitchAccessControlLists
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional).
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule.'
ipVersion:
type: string
enum:
- any
- ipv4
- ipv6
description: IP address version (must be 'any', 'ipv4' or 'ipv6'). Applicable only if network supports IPv6. Default value is 'ipv4'.
protocol:
type: string
enum:
- any
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', or 'any').
srcCidr:
type: string
description: Source IP address (in IP or CIDR notation) or 'any'.
srcPort:
type: string
description: Source port. Must be in the range of 1-65535 or 'any'. Default is 'any'.
dstCidr:
type: string
description: Destination IP address (in IP or CIDR notation) or 'any'.
dstPort:
type: string
description: Destination port. Must be in the range of 1-65535 or 'any'. Default is 'any'.
vlan:
type: string
description: Incoming traffic VLAN. Must be in the range of 1-4095 or 'any'. Default is 'any'.
required:
- policy
- protocol
- srcCidr
- dstCidr
description: An ordered array of the access control list rules (not including the default rule). An empty array will clear the rules.
example:
rules:
- comment: Deny SSH
policy: deny
ipVersion: ipv4
protocol: tcp
srcCidr: 10.1.10.0/24
srcPort: any
dstCidr: 172.16.30/24
dstPort: '22'
vlan: '10'
required:
- rules
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
ipVersion:
type: string
enum:
- any
- ipv4
- ipv6
description: IP address version
protocol:
type: string
enum:
- any
- tcp
- udp
description: The type of protocol
srcCidr:
type: string
description: Source IP address (in IP or CIDR notation)
srcPort:
type: string
description: Source port
dstCidr:
type: string
description: Destination IP address (in IP or CIDR notation)
dstPort:
type: string
description: Destination port
vlan:
type: string
description: ncoming traffic VLAN
description: An ordered array of the access control list rules
example:
rules:
- comment: Deny SSH
policy: deny
ipVersion: ipv4
protocol: tcp
srcCidr: 10.1.10.0/24
srcPort: any
dstCidr: 172.16.30/24
dstPort: '22'
vlan: '10'
summary: Update the access control lists for a MS network
tags:
- switch.configure
/networks/{networkId}/switch/accessPolicies:
get:
description: List the access policies for a switch network. Only returns access policies with 'my RADIUS server' as authentication method
operationId: getNetworkSwitchAccessPolicies
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS accounting server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a response_objectific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
counts:
type: object
properties:
ports:
type: object
properties:
withThisPolicy:
type: integer
description: Number of ports in the network with this policy. For template networks, this is the number of template ports (not child ports) with this policy.
description: Counts associated with ports
description: Counts associated with the access policy
example:
- name: 'Access policy #1'
radiusServers:
- serverId: '1'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- serverId: '2'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
counts:
ports:
withThisPolicy: 12
summary: List the access policies for a switch network
tags:
- switch.configure
post:
description: Create an access policy for a switch network. If you would like to enable Meraki Authentication, set radiusServers to empty array.
operationId: createNetworkSwitchAccessPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. If this field is provided, the host, port and secret field will be ignored
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
secret:
type: string
description: RADIUS client shared secret
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. If this field is provided, the host, port and secret field will be ignored
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
secret:
type: string
description: RADIUS client shared secret
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
example:
name: 'Access policy #1'
radiusServers:
- organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
secret: secret
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
secret: secret
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
required:
- name
- radiusServers
- radiusTestingEnabled
- radiusCoaSupportEnabled
- radiusAccountingEnabled
- hostMode
- urlRedirectWalledGardenEnabled
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS accounting server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a response_objectific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
counts:
type: object
properties:
ports:
type: object
properties:
withThisPolicy:
type: integer
description: Number of ports in the network with this policy. For template networks, this is the number of template ports (not child ports) with this policy.
description: Counts associated with ports
description: Counts associated with the access policy
example:
name: 'Access policy #1'
radiusServers:
- serverId: '1'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- serverId: '2'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
counts:
ports:
withThisPolicy: 12
summary: Create an access policy for a switch network
tags:
- switch.configure
/networks/{networkId}/switch/accessPolicies/{accessPolicyNumber}:
get:
description: Return a specific access policy for a switch network
operationId: getNetworkSwitchAccessPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: accessPolicyNumber
in: path
description: Access policy number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS accounting server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a response_objectific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
counts:
type: object
properties:
ports:
type: object
properties:
withThisPolicy:
type: integer
description: Number of ports in the network with this policy. For template networks, this is the number of template ports (not child ports) with this policy.
description: Counts associated with ports
description: Counts associated with the access policy
example:
name: 'Access policy #1'
radiusServers:
- serverId: '1'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- serverId: '2'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
counts:
ports:
withThisPolicy: 12
summary: Return a specific access policy for a switch network
tags:
- switch.configure
put:
description: Update an access policy for a switch network. If you would like to enable Meraki Authentication, set radiusServers to empty array.
operationId: updateNetworkSwitchAccessPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: accessPolicyNumber
in: path
description: Access policy number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS server. When provided, the existing RADIUS server will be updated instead of creating a new one
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. If this field is provided, the host, port and secret field will be ignored
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
secret:
type: string
description: RADIUS client shared secret
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS accounting server. When provided, the existing RADIUS server will be updated instead of creating a new one
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. If this field is provided, the host, port and secret field will be ignored
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
secret:
type: string
description: RADIUS client shared secret
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
example:
name: 'Access policy #1'
radiusServers:
- serverId: '1'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
secret: secret
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- serverId: '2'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
secret: secret
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name of the access policy
radiusServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS server
port:
type: integer
description: UDP port that the RADIUS server listens on for access requests
description: List of RADIUS servers to require connecting devices to authenticate against before granting network access
radius:
type: object
properties:
criticalAuth:
type: object
properties:
dataVlanId:
type: integer
description: VLAN that clients who use data will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
voiceVlanId:
type: integer
description: VLAN that clients who use voice will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
suspendPortBounce:
type: boolean
description: Enable to suspend port bounce when RADIUS servers are unreachable
description: Critical auth settings for when authentication is rejected by the RADIUS server
failedAuthVlanId:
type: integer
description: VLAN that clients will be placed on when RADIUS authentication fails. Will be null if hostMode is Multi-Auth
reAuthenticationInterval:
type: integer
description: Re-authentication period in seconds. Will be null if hostMode is Multi-Auth
cache:
type: object
properties:
enabled:
type: boolean
description: Enable to cache authorization and authentication responses on the RADIUS server
timeout:
type: integer
description: If RADIUS caching is enabled, this value dictates how long the cache will remain in the RADIUS server, in hours, to allow network access without authentication
description: Object for RADIUS Cache Settings
description: Object for RADIUS Settings
guestPortBouncing:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusTestingEnabled:
type: boolean
description: If enabled, Meraki devices will periodically send access-request messages to these RADIUS servers
radiusCoaSupportEnabled:
type: boolean
description: Change of authentication for RADIUS re-authentication and disconnection
radiusAccountingEnabled:
type: boolean
description: Enable to send start, interim-update and stop messages to a configured RADIUS accounting server for tracking connected clients
radiusAccountingServers:
type: array
items:
type: object
properties:
serverId:
type: string
description: Unique ID of the RADIUS accounting server
organizationRadiusServerId:
type: string
description: Organization wide RADIUS server ID. This value will be empty if this RADIUS server is not an organization wide RADIUS server
host:
type: string
description: Public IP address of the RADIUS accounting server
port:
type: integer
description: UDP port that the RADIUS Accounting server listens on for access requests
description: List of RADIUS accounting servers to require connecting devices to authenticate against before granting network access
radiusGroupAttribute:
type: string
description: Acceptable values are `""` for None, or `"11"` for Group Policies ACL
hostMode:
type: string
enum:
- Multi-Auth
- Multi-Domain
- Multi-Host
- Single-Host
description: Choose the Host Mode for the access policy.
accessPolicyType:
type: string
enum:
- 802.1x
- Hybrid authentication
- MAC authentication bypass
description: Access Type of the policy. Automatically 'Hybrid authentication' when hostMode is 'Multi-Domain'.
increaseAccessSpeed:
type: boolean
description: Enabling this option will make switches execute 802.1X and MAC-bypass authentication simultaneously so that clients authenticate faster. Only required when accessPolicyType is 'Hybrid Authentication.
guestVlanId:
type: integer
description: ID for the guest VLAN allow unauthorized devices access to limited network resources
dot1x:
type: object
properties:
controlDirection:
type: string
enum:
- both
- inbound
description: Supports either 'both' or 'inbound'. Set to 'inbound' to allow unauthorized egress on the switchport. Set to 'both' to control both traffic directions with authorization. Defaults to 'both'
description: 802.1x Settings
voiceVlanClients:
type: boolean
description: CDP/LLDP capable voice clients will be able to use this VLAN. Automatically true when hostMode is 'Multi-Domain'.
urlRedirectWalledGardenEnabled:
type: boolean
description: Enable to restrict access for clients to a response_objectific set of IP addresses or hostnames prior to authentication
urlRedirectWalledGardenRanges:
type: array
items:
type: string
description: IP address ranges, in CIDR notation, to restrict access for clients to a specific set of IP addresses or hostnames prior to authentication
counts:
type: object
properties:
ports:
type: object
properties:
withThisPolicy:
type: integer
description: Number of ports in the network with this policy. For template networks, this is the number of template ports (not child ports) with this policy.
description: Counts associated with ports
description: Counts associated with the access policy
example:
name: 'Access policy #1'
radiusServers:
- serverId: '1'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radius:
criticalAuth:
dataVlanId: 100
voiceVlanId: 100
suspendPortBounce: true
failedAuthVlanId: 100
reAuthenticationInterval: 120
cache:
enabled: false
timeout: 24
guestPortBouncing: false
radiusTestingEnabled: false
radiusCoaSupportEnabled: false
radiusAccountingEnabled: true
radiusAccountingServers:
- serverId: '2'
organizationRadiusServerId: '42'
host: 1.2.3.4
port: 22
radiusGroupAttribute: '11'
hostMode: Single-Host
accessPolicyType: Hybrid authentication
increaseAccessSpeed: false
guestVlanId: 100
dot1x:
controlDirection: inbound
voiceVlanClients: true
urlRedirectWalledGardenEnabled: true
urlRedirectWalledGardenRanges:
- 192.168.1.0/24
counts:
ports:
withThisPolicy: 12
summary: Update an access policy for a switch network
tags:
- switch.configure
delete:
description: Delete an access policy for a switch network
operationId: deleteNetworkSwitchAccessPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: accessPolicyNumber
in: path
description: Access policy number
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete an access policy for a switch network
tags:
- switch.configure
/networks/{networkId}/switch/alternateManagementInterface:
get:
description: Return the switch alternate management interface for the network
operationId: getNetworkSwitchAlternateManagementInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable AMI configuration. If enabled, VLAN and protocols must be set
vlanId:
type: integer
description: Alternate management VLAN, must be between 1 and 4094
protocols:
type: array
items:
type: string
description: 'Can be one or more of the following values: ''radius'', ''snmp'' or ''syslog'''
switches:
type: array
items:
type: object
properties:
serial:
type: string
description: Switch serial number
alternateManagementIp:
type: string
description: Switch alternative management IP. To remove a prior IP setting, provide an empty string
subnetMask:
type: string
description: Switch subnet mask must be in IP format. Only and must be specified for Polaris switches
gateway:
type: string
description: Switch gateway must be in IP format. Only and must be specified for Polaris switches
description: 'Array of switch serial number and IP assignment. If parameter is present, it cannot have empty body. Note: switches parameter is not applicable for template networks, in other words, do not put ''switches'' in the body when updating template networks. Also, an empty ''switches'' array will remove all previous assignments'
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
switches:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
summary: Return the switch alternate management interface for the network
tags:
- switch.configure
put:
description: Update the switch alternate management interface for the network
operationId: updateNetworkSwitchAlternateManagementInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable AMI configuration. If enabled, VLAN and protocols must be set
vlanId:
type: integer
description: Alternate management VLAN, must be between 1 and 4094
protocols:
type: array
items:
type: string
enum:
- radius
- snmp
- syslog
description: 'Can be one or more of the following values: ''radius'', ''snmp'' or ''syslog'''
switches:
type: array
items:
type: object
properties:
serial:
type: string
description: Switch serial number
alternateManagementIp:
type: string
description: Switch alternative management IP. To remove a prior IP setting, provide an empty string
subnetMask:
type: string
description: Switch subnet mask must be in IP format. Only and must be specified for Polaris switches
gateway:
type: string
description: Switch gateway must be in IP format. Only and must be specified for Polaris switches
required:
- serial
- alternateManagementIp
description: 'Array of switch serial number and IP assignment. If parameter is present, it cannot have empty body. Note: switches parameter is not applicable for template networks, in other words, do not put ''switches'' in the body when updating template networks. Also, an empty ''switches'' array will remove all previous assignments'
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
switches:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable AMI configuration. If enabled, VLAN and protocols must be set
vlanId:
type: integer
description: Alternate management VLAN, must be between 1 and 4094
protocols:
type: array
items:
type: string
description: 'Can be one or more of the following values: ''radius'', ''snmp'' or ''syslog'''
switches:
type: array
items:
type: object
properties:
serial:
type: string
description: Switch serial number
alternateManagementIp:
type: string
description: Switch alternative management IP. To remove a prior IP setting, provide an empty string
subnetMask:
type: string
description: Switch subnet mask must be in IP format. Only and must be specified for Polaris switches
gateway:
type: string
description: Switch gateway must be in IP format. Only and must be specified for Polaris switches
description: 'Array of switch serial number and IP assignment. If parameter is present, it cannot have empty body. Note: switches parameter is not applicable for template networks, in other words, do not put ''switches'' in the body when updating template networks. Also, an empty ''switches'' array will remove all previous assignments'
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
switches:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
summary: Update the switch alternate management interface for the network
tags:
- switch.configure
/networks/{networkId}/switch/dhcp/v4/servers/seen:
get:
description: Return the network's DHCPv4 servers seen within the selected timeframe (default 1 day)
operationId: getNetworkSwitchDhcpV4ServersSeen
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
mac:
type: string
description: Mac address of the server.
vlan:
type: integer
description: Vlan id of the server.
clientId:
type: string
description: Client id of the server if available.
isAllowed:
type: boolean
description: Whether the server is allowed or blocked. Always true for configured servers.
lastSeenAt:
type: string
format: date-time
description: Last time the server was seen.
seenBy:
type: array
items:
type: object
properties:
serial:
type: string
description: Device serial.
name:
type: string
description: Device name.
url:
type: string
description: Url link to device.
description: Devices that saw the server.
type:
type: string
enum:
- device
- discovered
- stack
description: server type. Can be a 'device', 'stack', or 'discovered' (i.e client).
device:
type: object
properties:
serial:
type: string
description: Device serial.
name:
type: string
description: Device name.
url:
type: string
description: Url link to device.
interface:
type: object
properties:
name:
type: string
description: Interface name.
url:
type: string
description: Url link to interface.
description: Interface attributes of the server. Only for configured servers.
description: Attributes of the server when it's a device.
ipv4:
type: object
properties:
address:
type: string
description: IPv4 address of the server.
subnet:
type: string
description: Subnet of the server.
gateway:
type: string
description: IPv4 gateway address of the server.
description: IPv4 attributes of the server.
isConfigured:
type: boolean
description: Whether the server is configured.
lastAck:
type: object
properties:
ts:
type: string
format: date-time
description: Last time the server was acked.
ipv4:
type: object
properties:
address:
type: string
description: IPv4 address of the last ack.
description: IPv4 attributes of the last ack.
description: Attributes of the server's last ack.
lastPacket:
type: object
properties:
source:
type: object
properties:
mac:
type: string
description: Source mac address of the packet.
ipv4:
type: object
properties:
address:
type: string
description: Source ipv4 address of the packet.
description: Source ipv4 attributes of the packet.
port:
type: integer
description: Source port of the packet.
description: Source of the packet.
destination:
type: object
properties:
mac:
type: string
description: Destination mac address of the packet.
ipv4:
type: object
properties:
address:
type: string
description: Destination ipv4 address of the packet.
description: Destination ipv4 attributes of the packet.
port:
type: integer
description: Destination port of the packet.
description: Destination of the packet.
type:
type: string
description: Packet type.
ethernet:
type: object
properties:
type:
type: string
description: Ethernet type of the packet.
description: Additional ethernet attributes of the packet.
ip:
type: object
properties:
id:
type: string
description: IP ID of the packet.
version:
type: integer
enum:
- 4
- 6
description: IP version of the packet.
length:
type: integer
description: IP length of the packet.
headerLength:
type: integer
description: IP header length of the packet.
protocol:
type: integer
description: IP protocol number of the packet.
ttl:
type: integer
description: Time to live of the packet.
dscp:
type: object
properties:
tag:
type: integer
description: DSCP tag number of the packet.
ecn:
type: integer
description: ECN number of the packet.
description: DSCP attributes of the packet.
description: Additional IP attributes of the packet.
udp:
type: object
properties:
length:
type: integer
description: UDP length of the packet.
checksum:
type: string
description: UDP checksum of the packet.
description: UDP attributes of the packet.
fields:
type: object
properties:
op:
type: integer
description: Operation code of the packet.
htype:
type: integer
description: Hardware type code of the packet.
hlen:
type: integer
description: Hardware length of the packet.
hops:
type: integer
description: Number of hops the packet took.
xid:
type: string
description: Transaction id of the packet.
secs:
type: integer
description: Number of seconds since receiving the packet.
flags:
type: string
description: Packet flags.
ciaddr:
type: string
description: Client IP address of the packet.
yiaddr:
type: string
description: Assigned IP address of the packet.
siaddr:
type: string
description: Server IP address of the packet.
giaddr:
type: string
description: Gateway IP address of the packet.
chaddr:
type: string
description: Client hardware address of the packet.
sname:
type: string
description: Server identifier address of the packet.
magicCookie:
type: string
description: Magic cookie of the packet.
options:
type: array
items:
type: object
properties:
name:
type: string
description: Option name.
value:
type: string
description: Option value.
description: Additional DHCP options of the packet.
description: DHCP-specific fields of the packet.
description: Last packet the server received.
example:
- mac: '00:11:22:33:44:55'
vlan: 100
clientId: k74272e
isAllowed: true
lastSeenAt: '2018-02-11T00:00:00.090210Z'
seenBy:
- serial: Q234-ABCD-0001
name: My switch2
url: https://n1.meraki.com//n//manage/nodes/new_list/0000000000001
type: device
device:
serial: Q234-ABCD-0002
name: My AP
url: https://n1.meraki.com//n//manage/nodes/new_list/000000000000
interface:
name: My L3 Interface
url: https://n1.meraki.com//n//manage/configure/switch_l3/l3_interface/00000
ipv4:
address: 10.0.0.0/24
subnet: 192.168.1.0/24
gateway: 1.2.3.5
isConfigured: true
lastAck:
ts: '2018-02-11T00:00:00.090210Z'
ipv4:
address: 123.123.123.1
lastPacket:
source:
mac: '00:11:22:33:44:55'
ipv4:
address: 1.2.3.4
port: 443
destination:
mac: '22:33:44:55:66:77'
ipv4:
address: 123.123.123.1
port: 444
type: ACK
ethernet:
type: '0x1212'
ip:
id: '0x1313'
version: 4
length: 24929
headerLength: 1
protocol: 1
ttl: 50
dscp:
tag: 24
ecn: 1
udp:
length: 24929
checksum: '0x1414'
fields:
op: 1
htype: 1
hlen: 6
hops: 0
xid: '0x11111111'
secs: 1526087474
flags: '0x0000'
ciaddr: 1.2.3.4
yiaddr: 123.123.123.1
siaddr: 1.2.3.4
giaddr: 1.2.3.5
chaddr: abcdefghijkl
sname: 1.2.3.4
magicCookie: '0x22222222'
options:
- name: Lease time
value: 86400 seconds
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Return the network's DHCPv4 servers seen within the selected timeframe (default 1 day)
tags:
- switch.configure
/networks/{networkId}/switch/dhcpServerPolicy:
get:
description: Return the DHCP server settings. Blocked/allowed servers are only applied when default policy is allow/block, respectively
operationId: getNetworkSwitchDhcpServerPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
alerts:
type: object
properties:
email:
type: object
properties:
enabled:
type: boolean
description: When enabled, send an email if a new DHCP server is seen. Default value is false.
description: Alert settings for DHCP servers
description: Email alert settings for DHCP servers
defaultPolicy:
type: string
enum:
- allow
- block
description: '''allow'' or ''block'' new DHCP servers. Default value is ''allow''.'
blockedServers:
type: array
items:
type: string
description: |-
List the MAC addresses of DHCP servers to block on the network when defaultPolicy is set
to allow.An empty array will clear the entries.
allowedServers:
type: array
items:
type: string
description: |-
List the MAC addresses of DHCP servers to permit on the network when defaultPolicy is set
to block.An empty array will clear the entries.
arpInspection:
type: object
properties:
enabled:
type: boolean
description: Enable or disable Dynamic ARP Inspection on the network. Default value is false.
unsupportedModels:
type: array
items:
type: string
description: List of switch models that does not support dynamic ARP inspection
description: Dynamic ARP Inspection settings
example:
alerts:
email:
enabled: true
defaultPolicy: block
blockedServers:
- '00:50:56:00:00:03'
- '00:50:56:00:00:04'
allowedServers:
- '00:50:56:00:00:01'
- '00:50:56:00:00:02'
arpInspection:
enabled: true
unsupportedModels:
- MS120-8
- MS125-24
summary: Return the DHCP server settings
tags:
- switch.configure
put:
description: Update the DHCP server settings. Blocked/allowed servers are only applied when default policy is allow/block, respectively
operationId: updateNetworkSwitchDhcpServerPolicy
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
alerts:
type: object
properties:
email:
type: object
properties:
enabled:
type: boolean
description: When enabled, send an email if a new DHCP server is seen. Default value is false.
description: Email alert settings for DHCP servers
description: Alert settings for DHCP servers
defaultPolicy:
type: string
enum:
- allow
- block
description: '''allow'' or ''block'' new DHCP servers. Default value is ''allow''.'
allowedServers:
type: array
items:
type: string
description: List the MAC addresses of DHCP servers to permit on the network when defaultPolicy is set to block. An empty array will clear the entries.
blockedServers:
type: array
items:
type: string
description: List the MAC addresses of DHCP servers to block on the network when defaultPolicy is set to allow. An empty array will clear the entries.
arpInspection:
type: object
properties:
enabled:
type: boolean
description: Enable or disable Dynamic ARP Inspection on the network. Default value is false.
description: Dynamic ARP Inspection settings
example:
alerts:
email:
enabled: true
defaultPolicy: block
blockedServers:
- '00:50:56:00:00:03'
- '00:50:56:00:00:04'
allowedServers:
- '00:50:56:00:00:01'
- '00:50:56:00:00:02'
arpInspection:
enabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
alerts:
type: object
properties:
email:
type: object
properties:
enabled:
type: boolean
description: When enabled, send an email if a new DHCP server is seen. Default value is false.
description: Alert settings for DHCP servers
description: Email alert settings for DHCP servers
defaultPolicy:
type: string
enum:
- allow
- block
description: '''allow'' or ''block'' new DHCP servers. Default value is ''allow''.'
blockedServers:
type: array
items:
type: string
description: |-
List the MAC addresses of DHCP servers to block on the network when defaultPolicy is set
to allow.An empty array will clear the entries.
allowedServers:
type: array
items:
type: string
description: |-
List the MAC addresses of DHCP servers to permit on the network when defaultPolicy is set
to block.An empty array will clear the entries.
arpInspection:
type: object
properties:
enabled:
type: boolean
description: Enable or disable Dynamic ARP Inspection on the network. Default value is false.
unsupportedModels:
type: array
items:
type: string
description: List of switch models that does not support dynamic ARP inspection
description: Dynamic ARP Inspection settings
example:
alerts:
email:
enabled: true
defaultPolicy: block
blockedServers:
- '00:50:56:00:00:03'
- '00:50:56:00:00:04'
allowedServers:
- '00:50:56:00:00:01'
- '00:50:56:00:00:02'
arpInspection:
enabled: true
unsupportedModels:
- MS120-8
- MS125-24
summary: Update the DHCP server settings
tags:
- switch.configure
/networks/{networkId}/switch/dhcpServerPolicy/arpInspection/trustedServers:
get:
description: Return the list of servers trusted by Dynamic ARP Inspection on this network. These are also known as allow listed snoop entries
operationId: getNetworkSwitchDhcpServerPolicyArpInspectionTrustedServers
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
trustedServerId:
type: string
description: ID of the trusted server.
mac:
type: string
description: Mac address of the trusted server.
vlan:
type: integer
description: Vlan ID of the trusted server.
ipv4:
type: object
properties:
address:
type: string
description: IPv4 address of the trusted server.
description: IPv4 attributes of the trusted server.
example:
- trustedServerId: '123'
mac: '00:11:22:33:44:55'
vlan: 100
ipv4:
address: 1.2.3.4
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Return the list of servers trusted by Dynamic ARP Inspection on this network
tags:
- switch.configure
post:
description: Add a server to be trusted by Dynamic ARP Inspection on this network
operationId: createNetworkSwitchDhcpServerPolicyArpInspectionTrustedServer
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mac:
type: string
description: The mac address of the trusted server being added
vlan:
type: integer
description: The VLAN of the trusted server being added. It must be between 1 and 4094
ipv4:
type: object
properties:
address:
type: string
description: The IPv4 address of the trusted server being added
description: The IPv4 attributes of the trusted server being added
example:
mac: '00:11:22:33:44:55'
vlan: 100
ipv4:
address: 1.2.3.4
required:
- mac
- vlan
- ipv4
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
trustedServerId:
type: string
description: ID of the trusted server.
mac:
type: string
description: Mac address of the trusted server.
vlan:
type: integer
description: Vlan ID of the trusted server.
ipv4:
type: object
properties:
address:
type: string
description: IPv4 address of the trusted server.
description: IPv4 attributes of the trusted server.
example:
trustedServerId: '123'
mac: '00:11:22:33:44:55'
vlan: 100
ipv4:
address: 1.2.3.4
summary: Add a server to be trusted by Dynamic ARP Inspection on this network
tags:
- switch.configure
/networks/{networkId}/switch/dhcpServerPolicy/arpInspection/trustedServers/{trustedServerId}:
put:
description: Update a server that is trusted by Dynamic ARP Inspection on this network
operationId: updateNetworkSwitchDhcpServerPolicyArpInspectionTrustedServer
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: trustedServerId
in: path
description: Trusted server ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mac:
type: string
description: The updated mac address of the trusted server
vlan:
type: integer
description: The updated VLAN of the trusted server. It must be between 1 and 4094
ipv4:
type: object
properties:
address:
type: string
description: The updated IPv4 address of the trusted server
description: The updated IPv4 attributes of the trusted server
example:
mac: '00:11:22:33:44:55'
vlan: 100
ipv4:
address: 1.2.3.4
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
trustedServerId:
type: string
description: ID of the trusted server.
mac:
type: string
description: Mac address of the trusted server.
vlan:
type: integer
description: Vlan ID of the trusted server.
ipv4:
type: object
properties:
address:
type: string
description: IPv4 address of the trusted server.
description: IPv4 attributes of the trusted server.
example:
trustedServerId: '123'
mac: '00:11:22:33:44:55'
vlan: 100
ipv4:
address: 1.2.3.4
summary: Update a server that is trusted by Dynamic ARP Inspection on this network
tags:
- switch.configure
delete:
description: Remove a server from being trusted by Dynamic ARP Inspection on this network
operationId: deleteNetworkSwitchDhcpServerPolicyArpInspectionTrustedServer
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: trustedServerId
in: path
description: Trusted server ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Remove a server from being trusted by Dynamic ARP Inspection on this network
tags:
- switch.configure
/networks/{networkId}/switch/dhcpServerPolicy/arpInspection/warnings/byDevice:
get:
description: Return the devices that have a Dynamic ARP Inspection warning and their warnings
operationId: getNetworkSwitchDhcpServerPolicyArpInspectionWarningsByDevice
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
description: Switch serial.
name:
type: string
description: Switch name.
url:
type: string
description: Url link to switch.
supportsInspection:
type: boolean
description: Whether this switch supports Dynamic ARP Inspection.
hasTrustedPort:
type: boolean
description: Whether this switch has a trusted DAI port. Always false if supportsInspection is false.
example:
- serial: Q234-ABCD-0001
name: My switch
url: https://n1.meraki.com//n//manage/nodes/new_list/000000000000
supportsInspection: false
hasTrustedPort: false
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Return the devices that have a Dynamic ARP Inspection warning and their warnings
tags:
- switch.configure
/networks/{networkId}/switch/dscpToCosMappings:
get:
description: Return the DSCP to CoS mappings
operationId: getNetworkSwitchDscpToCosMappings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mappings:
type: array
items:
type: object
properties:
dscp:
type: integer
description: The Differentiated Services Code Point (DSCP) tag in the IP header that will be mapped to a particular Class-of-Service (CoS) queue. Value can be in the range of 0 to 63 inclusive.
cos:
type: integer
description: The actual layer-2 CoS queue the DSCP value is mapped to. These are not bits set on outgoing frames. Value can be in the range of 0 to 5 inclusive.
title:
type: string
description: Label for the mapping (optional).
description: An array of DSCP to CoS mappings. An empty array will reset the mappings to default.
example:
mappings:
- dscp: 1
cos: 1
title: Video
summary: Return the DSCP to CoS mappings
tags:
- switch.configure
put:
description: Update the DSCP to CoS mappings
operationId: updateNetworkSwitchDscpToCosMappings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
mappings:
type: array
items:
type: object
properties:
dscp:
type: integer
description: The Differentiated Services Code Point (DSCP) tag in the IP header that will be mapped to a particular Class-of-Service (CoS) queue. Value can be in the range of 0 to 63 inclusive.
cos:
type: integer
description: The actual layer-2 CoS queue the DSCP value is mapped to. These are not bits set on outgoing frames. Value can be in the range of 0 to 5 inclusive.
title:
type: string
description: Label for the mapping (optional).
required:
- dscp
- cos
description: An array of DSCP to CoS mappings. An empty array will reset the mappings to default.
example:
mappings:
- dscp: 1
cos: 1
title: Video
required:
- mappings
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mappings:
type: array
items:
type: object
properties:
dscp:
type: integer
description: The Differentiated Services Code Point (DSCP) tag in the IP header that will be mapped to a particular Class-of-Service (CoS) queue. Value can be in the range of 0 to 63 inclusive.
cos:
type: integer
description: The actual layer-2 CoS queue the DSCP value is mapped to. These are not bits set on outgoing frames. Value can be in the range of 0 to 5 inclusive.
title:
type: string
description: Label for the mapping (optional).
description: An array of DSCP to CoS mappings. An empty array will reset the mappings to default.
example:
mappings:
- dscp: 1
cos: 1
title: Video
summary: Update the DSCP to CoS mappings
tags:
- switch.configure
/networks/{networkId}/switch/linkAggregations:
get:
description: List link aggregation groups
operationId: getNetworkSwitchLinkAggregations
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: The ID for the link aggregation.
switchPorts:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the switch port.
portId:
type: string
description: The ID for the switch port.
description: The ID for the link aggregation.
example:
- id: NDU2N18yXzM=
switchPorts:
- serial: Q234-ABCD-0001
portId: '1'
summary: List link aggregation groups
tags:
- switch.configure
post:
description: Create a link aggregation group
operationId: createNetworkSwitchLinkAggregation
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
switchPorts:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the switch.
portId:
type: string
description: 'Port identifier of switch port. For modules, the identifier is "SlotNumber_ModuleType_PortNumber" (Ex: "1_8X10G_1"), otherwise it is just the port number (Ex: "8").'
required:
- serial
- portId
description: Array of switch or stack ports for creating aggregation group. Minimum 2 and maximum 8 ports are supported.
switchProfilePorts:
type: array
items:
type: object
properties:
profile:
type: string
description: Profile identifier.
portId:
type: string
description: 'Port identifier of switch port. For modules, the identifier is "SlotNumber_ModuleType_PortNumber" (Ex: "1_8X10G_1"), otherwise it is just the port number (Ex: "8").'
required:
- profile
- portId
description: Array of switch profile ports for creating aggregation group. Minimum 2 and maximum 8 ports are supported.
example:
switchPorts:
- serial: Q234-ABCD-0001
portId: '1'
switchProfilePorts:
- profile: '1234'
portId: '2'
required: false
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The ID for the link aggregation.
switchPorts:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the switch port.
portId:
type: string
description: The ID for the switch port.
description: The ID for the link aggregation.
example:
id: NDU2N18yXzM=
switchPorts:
- serial: Q234-ABCD-0001
portId: '1'
summary: Create a link aggregation group
tags:
- switch.configure
/networks/{networkId}/switch/linkAggregations/{linkAggregationId}:
put:
description: Update a link aggregation group
operationId: updateNetworkSwitchLinkAggregation
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: linkAggregationId
in: path
description: Link aggregation ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
switchPorts:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the switch.
portId:
type: string
description: 'Port identifier of switch port. For modules, the identifier is "SlotNumber_ModuleType_PortNumber" (Ex: "1_8X10G_1"), otherwise it is just the port number (Ex: "8").'
required:
- serial
- portId
description: Array of switch or stack ports for updating aggregation group. Minimum 2 and maximum 8 ports are supported.
switchProfilePorts:
type: array
items:
type: object
properties:
profile:
type: string
description: Profile identifier.
portId:
type: string
description: 'Port identifier of switch port. For modules, the identifier is "SlotNumber_ModuleType_PortNumber" (Ex: "1_8X10G_1"), otherwise it is just the port number (Ex: "8").'
required:
- profile
- portId
description: Array of switch profile ports for updating aggregation group. Minimum 2 and maximum 8 ports are supported.
example:
switchPorts:
- serial: Q234-ABCD-0001
portId: '1'
switchProfilePorts:
- profile: '1234'
portId: '2'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The ID for the link aggregation.
switchPorts:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the switch port.
portId:
type: string
description: The ID for the switch port.
description: The ID for the link aggregation.
example:
id: NDU2N18yXzM=
switchPorts:
- serial: Q234-ABCD-0001
portId: '1'
summary: Update a link aggregation group
tags:
- switch.configure
delete:
description: Split a link aggregation group into separate ports
operationId: deleteNetworkSwitchLinkAggregation
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: linkAggregationId
in: path
description: Link aggregation ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Split a link aggregation group into separate ports
tags:
- switch.configure
/networks/{networkId}/switch/mtu:
get:
description: Return the MTU configuration
operationId: getNetworkSwitchMtu
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
defaultMtuSize:
type: integer
description: MTU size for the entire network. Default value is 9578.
overrides:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: List of switch serials. Applicable only for switch network.
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs. Applicable only for template network.
mtuSize:
type: integer
description: MTU size for the switches or switch templates.
required:
- mtuSize
description: |-
Override MTU size for individual switches or switch templates.
An empty array will clear overrides.
example:
defaultMtuSize: 9578
overrides:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
switchProfiles:
- '1284392014819'
- '2983092129865'
mtuSize: 1500
summary: Return the MTU configuration
tags:
- switch.configure
put:
description: Update the MTU configuration
operationId: updateNetworkSwitchMtu
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
defaultMtuSize:
type: integer
description: MTU size for the entire network. Default value is 9578.
overrides:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: List of switch serials. Applicable only for switch network.
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs. Applicable only for template network.
mtuSize:
type: integer
description: MTU size for the switches or switch templates.
required:
- mtuSize
description: Override MTU size for individual switches or switch templates. An empty array will clear overrides.
example:
defaultMtuSize: 9578
overrides:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
switchProfiles:
- '1284392014819'
- '2983092129865'
mtuSize: 1500
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
defaultMtuSize:
type: integer
description: MTU size for the entire network. Default value is 9578.
overrides:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: List of switch serials. Applicable only for switch network.
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs. Applicable only for template network.
mtuSize:
type: integer
description: MTU size for the switches or switch templates.
required:
- mtuSize
description: |-
Override MTU size for individual switches or switch templates.
An empty array will clear overrides.
example:
defaultMtuSize: 9578
overrides:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
switchProfiles:
- '1284392014819'
- '2983092129865'
mtuSize: 1500
summary: Update the MTU configuration
tags:
- switch.configure
/networks/{networkId}/switch/portSchedules:
get:
description: List switch port schedules
operationId: getNetworkSwitchPortSchedules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: Switch port schedule ID
networkId:
type: string
description: Network ID
name:
type: string
description: Switch port schedule name
portSchedule:
type: object
properties:
monday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Monday schedule
tuesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Tuesday schedule
wednesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Wednesday schedule
thursday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Thursday schedule
friday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Friday schedule
saturday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Saturday schedule
sunday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Sunday schedule
description: Port schedule
example:
- id: '1234'
networkId: N_24329156
name: Weekdays schedule
portSchedule:
monday:
active: true
from: '9:00'
to: '17:00'
tuesday:
active: true
from: '9:00'
to: '17:00'
wednesday:
active: true
from: '9:00'
to: '17:00'
thursday:
active: true
from: '9:00'
to: '17:00'
friday:
active: true
from: '9:00'
to: '17:00'
saturday:
active: false
from: '0:00'
to: '24:00'
sunday:
active: false
from: '0:00'
to: '24:00'
summary: List switch port schedules
tags:
- switch.configure
post:
description: Add a switch port schedule
operationId: createNetworkSwitchPortSchedule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name for your port schedule. Required
portSchedule:
type: object
properties:
monday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Monday.
tuesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Tuesday.
wednesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Wednesday.
thursday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Thursday.
friday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Friday.
saturday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Saturday.
sunday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Sunday.
description: |2
The schedule for switch port scheduling. Schedules are applied to days of the week.
When it's empty, default schedule with all days of a week are configured.
Any unspecified day in the schedule is added as a default schedule configuration of the day.
example:
name: Weekdays schedule
portSchedule:
monday:
active: true
from: '9:00'
to: '17:00'
tuesday:
active: true
from: '9:00'
to: '17:00'
wednesday:
active: true
from: '9:00'
to: '17:00'
thursday:
active: true
from: '9:00'
to: '17:00'
friday:
active: true
from: '9:00'
to: '17:00'
saturday:
active: false
from: '0:00'
to: '24:00'
sunday:
active: false
from: '0:00'
to: '24:00'
required:
- name
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Switch port schedule ID
networkId:
type: string
description: Network ID
name:
type: string
description: Switch port schedule name
portSchedule:
type: object
properties:
monday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Monday schedule
tuesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Tuesday schedule
wednesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Wednesday schedule
thursday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Thursday schedule
friday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Friday schedule
saturday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Saturday schedule
sunday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Sunday schedule
description: Port schedule
example:
id: '1234'
networkId: N_24329156
name: Weekdays schedule
portSchedule:
monday:
active: true
from: '9:00'
to: '17:00'
tuesday:
active: true
from: '9:00'
to: '17:00'
wednesday:
active: true
from: '9:00'
to: '17:00'
thursday:
active: true
from: '9:00'
to: '17:00'
friday:
active: true
from: '9:00'
to: '17:00'
saturday:
active: false
from: '0:00'
to: '24:00'
sunday:
active: false
from: '0:00'
to: '24:00'
summary: Add a switch port schedule
tags:
- switch.configure
/networks/{networkId}/switch/portSchedules/{portScheduleId}:
delete:
description: Delete a switch port schedule
operationId: deleteNetworkSwitchPortSchedule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: portScheduleId
in: path
description: Port schedule ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a switch port schedule
tags:
- switch.configure
put:
description: Update a switch port schedule
operationId: updateNetworkSwitchPortSchedule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: portScheduleId
in: path
description: Port schedule ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name for your port schedule.
portSchedule:
type: object
properties:
monday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Monday.
tuesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Tuesday.
wednesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Wednesday.
thursday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Thursday.
friday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Friday.
saturday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Saturday.
sunday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
from:
type: string
description: The time, from '00:00' to '24:00'. Must be less than the time specified in 'to'. Defaults to '00:00'. Only 30 minute increments are allowed.
to:
type: string
description: The time, from '00:00' to '24:00'. Must be greater than the time specified in 'from'. Defaults to '24:00'. Only 30 minute increments are allowed.
description: The schedule object for Sunday.
description: |2
The schedule for switch port scheduling. Schedules are applied to days of the week.
When it's empty, default schedule with all days of a week are configured.
Any unspecified day in the schedule is added as a default schedule configuration of the day.
example:
name: Weekdays schedule
portSchedule:
monday:
active: true
from: '9:00'
to: '17:00'
tuesday:
active: true
from: '9:00'
to: '17:00'
wednesday:
active: true
from: '9:00'
to: '17:00'
thursday:
active: true
from: '9:00'
to: '17:00'
friday:
active: true
from: '9:00'
to: '17:00'
saturday:
active: false
from: '0:00'
to: '24:00'
sunday:
active: false
from: '0:00'
to: '24:00'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Switch port schedule ID
networkId:
type: string
description: Network ID
name:
type: string
description: Switch port schedule name
portSchedule:
type: object
properties:
monday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Monday schedule
tuesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Tuesday schedule
wednesday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Wednesday schedule
thursday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Thursday schedule
friday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Friday schedule
saturday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Saturday schedule
sunday:
type: object
properties:
active:
type: boolean
description: Whether the schedule is active or inactive
from:
type: string
description: The time, from '00:00' to '24:00'
to:
type: string
description: The time, from '00:00' to '24:00'
description: Sunday schedule
description: Port schedule
example:
id: '1234'
networkId: N_24329156
name: Weekdays schedule
portSchedule:
monday:
active: true
from: '9:00'
to: '17:00'
tuesday:
active: true
from: '9:00'
to: '17:00'
wednesday:
active: true
from: '9:00'
to: '17:00'
thursday:
active: true
from: '9:00'
to: '17:00'
friday:
active: true
from: '9:00'
to: '17:00'
saturday:
active: false
from: '0:00'
to: '24:00'
sunday:
active: false
from: '0:00'
to: '24:00'
summary: Update a switch port schedule
tags:
- switch.configure
/networks/{networkId}/switch/qosRules:
get:
description: List quality of service rules
operationId: getNetworkSwitchQosRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: Qos Rule id
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: 'The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: 'The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dscp:
type: integer
description: DSCP tag for the incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
- id: '1284392014819'
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
summary: List quality of service rules
tags:
- switch.configure
post:
description: Add a quality of service rule
operationId: createNetworkSwitchQosRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
enum:
- ANY
- TCP
- UDP
description: The protocol of the incoming packet. Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP.
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP.
dscp:
type: integer
description: DSCP tag for the incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
required:
- vlan
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Qos Rule id
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: 'The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: 'The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dscp:
type: integer
description: DSCP tag for the incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
id: '1284392014819'
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
summary: Add a quality of service rule
tags:
- switch.configure
/networks/{networkId}/switch/qosRules/order:
get:
description: Return the quality of service rule IDs by order in which they will be processed by the switch
operationId: getNetworkSwitchQosRulesOrder
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
ruleIds:
type: array
items:
type: string
description: Qos Rule ids
example:
ruleIds:
- '1284392014819'
- '2983092129865'
summary: Return the quality of service rule IDs by order in which they will be processed by the switch
tags:
- switch.configure
put:
description: Update the order in which the rules should be processed by the switch
operationId: updateNetworkSwitchQosRulesOrder
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
ruleIds:
type: array
items:
type: string
description: A list of quality of service rule IDs arranged in order in which they should be processed by the switch.
example:
ruleIds:
- '1284392014819'
- '2983092129865'
required:
- ruleIds
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
ruleIds:
type: array
items:
type: string
description: Qos Rule ids
example:
ruleIds:
- '1284392014819'
- '2983092129865'
summary: Update the order in which the rules should be processed by the switch
tags:
- switch.configure
/networks/{networkId}/switch/qosRules/{qosRuleId}:
get:
description: Return a quality of service rule
operationId: getNetworkSwitchQosRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: qosRuleId
in: path
description: Qos rule ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Qos Rule id
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: 'The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: 'The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dscp:
type: integer
description: DSCP tag for the incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
id: '1284392014819'
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
summary: Return a quality of service rule
tags:
- switch.configure
delete:
description: Delete a quality of service rule
operationId: deleteNetworkSwitchQosRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: qosRuleId
in: path
description: Qos rule ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a quality of service rule
tags:
- switch.configure
put:
description: Update a quality of service rule
operationId: updateNetworkSwitchQosRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: qosRuleId
in: path
description: Qos rule ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
enum:
- ANY
- TCP
- UDP
description: The protocol of the incoming packet. Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP.
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP.
dscp:
type: integer
description: DSCP tag that should be assigned to incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Qos Rule id
vlan:
type: integer
description: The VLAN of the incoming packet. A null value will match any VLAN.
protocol:
type: string
description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY"
srcPort:
type: integer
description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
srcPortRange:
type: string
description: 'The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dstPort:
type: integer
description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
dstPortRange:
type: string
description: 'The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80'
dscp:
type: integer
description: DSCP tag for the incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0
example:
id: '1284392014819'
vlan: 100
protocol: TCP
srcPort: 2000
srcPortRange: 70-80
dstPort: 3000
dstPortRange: 3000-3100
dscp: 0
summary: Update a quality of service rule
tags:
- switch.configure
/networks/{networkId}/switch/routing/multicast:
get:
description: Return multicast settings for a network
operationId: getNetworkSwitchRoutingMulticast
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
defaultSettings:
type: object
properties:
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping enabled for the entire network
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic enabled for the entire network
description: |-
Default multicast setting for entire network. IGMP snooping and Flood unknown
multicast traffic settings are enabled by default.
overrides:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: (optional) List of switch serials for non-template network
stacks:
type: array
items:
type: string
description: (optional) List of switch stack ids for non-template network
switchProfiles:
type: array
items:
type: string
description: (optional) List of switch templates ids for template network
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping enabled for switches, switch stacks or switch templates
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic enabled for switches, switch stacks or switch templates
description: |-
Array of paired switches/stacks/profiles and corresponding multicast settings.
An empty array will clear the multicast settings.
example:
defaultSettings:
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
overrides:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
switchProfiles:
- '1234'
- '4567'
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
summary: Return multicast settings for a network
tags:
- switch.configure
put:
description: Update multicast settings for a network
operationId: updateNetworkSwitchRoutingMulticast
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
defaultSettings:
type: object
properties:
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping setting for entire network
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic setting for entire network
description: Default multicast setting for entire network. IGMP snooping and Flood unknown multicast traffic settings are enabled by default.
overrides:
type: array
items:
type: object
properties:
switchProfiles:
type: array
items:
type: string
description: List of switch templates ids for template network
switches:
type: array
items:
type: string
description: List of switch serials for non-template network
stacks:
type: array
items:
type: string
description: List of switch stack ids for non-template network
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping setting for switches, switch stacks or switch templates
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic setting for switches, switch stacks or switch templates
required:
- igmpSnoopingEnabled
- floodUnknownMulticastTrafficEnabled
description: Array of paired switches/stacks/profiles and corresponding multicast settings. An empty array will clear the multicast settings.
example:
defaultSettings:
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
overrides:
- switchProfiles:
- '1234'
- '4567'
switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
defaultSettings:
type: object
properties:
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping enabled for the entire network
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic enabled for the entire network
description: |-
Default multicast setting for entire network. IGMP snooping and Flood unknown
multicast traffic settings are enabled by default.
overrides:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: (optional) List of switch serials for non-template network
stacks:
type: array
items:
type: string
description: (optional) List of switch stack ids for non-template network
switchProfiles:
type: array
items:
type: string
description: (optional) List of switch templates ids for template network
igmpSnoopingEnabled:
type: boolean
description: IGMP snooping enabled for switches, switch stacks or switch templates
floodUnknownMulticastTrafficEnabled:
type: boolean
description: Flood unknown multicast traffic enabled for switches, switch stacks or switch templates
description: |-
Array of paired switches/stacks/profiles and corresponding multicast settings.
An empty array will clear the multicast settings.
example:
defaultSettings:
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
overrides:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
switchProfiles:
- '1234'
- '4567'
igmpSnoopingEnabled: true
floodUnknownMulticastTrafficEnabled: true
summary: Update multicast settings for a network
tags:
- switch.configure
/networks/{networkId}/switch/routing/multicast/rendezvousPoints:
get:
description: List multicast rendezvous points
operationId: getNetworkSwitchRoutingMulticastRendezvousPoints
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
rendezvousPointId:
type: string
description: The id.
serial:
type: string
description: The serial.
interfaceName:
type: string
description: The name of the interface to use.
interfaceIp:
type: string
description: The IP address of the interface to use.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group.'
example:
- rendezvousPointId: '1234'
serial: Q234-ABCD-5678
interfaceName: l3_interface_0
interfaceIp: 192.168.1.2
multicastGroup: Any
summary: List multicast rendezvous points
tags:
- switch.configure
post:
description: Create a multicast rendezvous point
operationId: createNetworkSwitchRoutingMulticastRendezvousPoint
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
interfaceIp:
type: string
description: The IP address of the interface where the RP needs to be created.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group'
example:
interfaceIp: 192.168.1.2
multicastGroup: Any
required:
- interfaceIp
- multicastGroup
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rendezvousPointId:
type: string
description: The id.
serial:
type: string
description: The serial.
interfaceName:
type: string
description: The name of the interface to use.
interfaceIp:
type: string
description: The IP address of the interface to use.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group.'
example:
rendezvousPointId: '1234'
serial: Q234-ABCD-5678
interfaceName: l3_interface_0
interfaceIp: 192.168.1.2
multicastGroup: Any
summary: Create a multicast rendezvous point
tags:
- switch.configure
/networks/{networkId}/switch/routing/multicast/rendezvousPoints/{rendezvousPointId}:
get:
description: Return a multicast rendezvous point
operationId: getNetworkSwitchRoutingMulticastRendezvousPoint
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rendezvousPointId
in: path
description: Rendezvous point ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rendezvousPointId:
type: string
description: The id.
serial:
type: string
description: The serial.
interfaceName:
type: string
description: The name of the interface to use.
interfaceIp:
type: string
description: The IP address of the interface to use.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group.'
example:
rendezvousPointId: '1234'
serial: Q234-ABCD-5678
interfaceName: l3_interface_0
interfaceIp: 192.168.1.2
multicastGroup: Any
summary: Return a multicast rendezvous point
tags:
- switch.configure
delete:
description: Delete a multicast rendezvous point
operationId: deleteNetworkSwitchRoutingMulticastRendezvousPoint
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rendezvousPointId
in: path
description: Rendezvous point ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a multicast rendezvous point
tags:
- switch.configure
put:
description: Update a multicast rendezvous point
operationId: updateNetworkSwitchRoutingMulticastRendezvousPoint
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rendezvousPointId
in: path
description: Rendezvous point ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
interfaceIp:
type: string
description: The IP address of the interface where the RP needs to be created.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group'
example:
interfaceIp: 192.168.1.2
multicastGroup: Any
required:
- interfaceIp
- multicastGroup
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rendezvousPointId:
type: string
description: The id.
serial:
type: string
description: The serial.
interfaceName:
type: string
description: The name of the interface to use.
interfaceIp:
type: string
description: The IP address of the interface to use.
multicastGroup:
type: string
description: '''Any'', or the IP address of a multicast group.'
example:
rendezvousPointId: '1234'
serial: Q234-ABCD-5678
interfaceName: l3_interface_0
interfaceIp: 192.168.1.2
multicastGroup: Any
summary: Update a multicast rendezvous point
tags:
- switch.configure
/networks/{networkId}/switch/routing/ospf:
get:
description: Return layer 3 OSPF routing configuration
operationId: getNetworkSwitchRoutingOspf
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable OSPF routing. OSPF routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
description: OSPF areas
v3:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable V3 OSPF routing. OSPF V3 routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
description: OSPF v3 areas
description: OSPF v3 configuration
md5AuthenticationEnabled:
type: boolean
description: Boolean value to enable or disable MD5 authentication. MD5 authentication is disabled by default.
md5AuthenticationKey:
type: object
properties:
id:
type: integer
description: MD5 authentication key index. Key index must be between 1 to 255
passphrase:
type: string
description: MD5 authentication passphrase
description: MD5 authentication credentials. This param is only relevant if md5AuthenticationEnabled is true
example:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: Backbone
areaType: normal
v3:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: V3 Backbone
areaType: normal
md5AuthenticationEnabled: true
md5AuthenticationKey:
id: 1234
passphrase: abc1234
summary: Return layer 3 OSPF routing configuration
tags:
- switch.configure
put:
description: Update layer 3 OSPF routing configuration
operationId: updateNetworkSwitchRoutingOspf
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable OSPF routing. OSPF routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
required:
- areaId
- areaName
- areaType
description: OSPF areas
v3:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable V3 OSPF routing. OSPF V3 routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
required:
- areaId
- areaName
- areaType
description: OSPF v3 areas
description: OSPF v3 configuration
md5AuthenticationEnabled:
type: boolean
description: Boolean value to enable or disable MD5 authentication. MD5 authentication is disabled by default.
md5AuthenticationKey:
type: object
properties:
id:
type: integer
description: MD5 authentication key index. Key index must be between 1 to 255
passphrase:
type: string
description: MD5 authentication passphrase
description: MD5 authentication credentials. This param is only relevant if md5AuthenticationEnabled is true
example:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: Backbone
areaType: normal
v3:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: V3 Backbone
areaType: normal
md5AuthenticationEnabled: true
md5AuthenticationKey:
id: 1234
passphrase: abc1234
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable OSPF routing. OSPF routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
description: OSPF areas
v3:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable V3 OSPF routing. OSPF V3 routing is disabled by default.
helloTimerInSeconds:
type: integer
description: Time interval in seconds at which hello packet will be sent to OSPF neighbors to maintain connectivity. Value must be between 1 and 255. Default is 10 seconds.
deadTimerInSeconds:
type: integer
description: Time interval to determine when the peer will be declared inactive/dead. Value must be between 1 and 65535
areas:
type: array
items:
type: object
properties:
areaId:
type: string
description: OSPF area ID
areaName:
type: string
description: Name of the OSPF area
areaType:
type: string
enum:
- normal
- nssa
- stub
description: 'Area types in OSPF. Must be one of: ["normal", "stub", "nssa"]'
description: OSPF v3 areas
description: OSPF v3 configuration
md5AuthenticationEnabled:
type: boolean
description: Boolean value to enable or disable MD5 authentication. MD5 authentication is disabled by default.
md5AuthenticationKey:
type: object
properties:
id:
type: integer
description: MD5 authentication key index. Key index must be between 1 to 255
passphrase:
type: string
description: MD5 authentication passphrase
description: MD5 authentication credentials. This param is only relevant if md5AuthenticationEnabled is true
example:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: Backbone
areaType: normal
v3:
enabled: true
helloTimerInSeconds: 10
deadTimerInSeconds: 40
areas:
- areaId: '1284392014819'
areaName: V3 Backbone
areaType: normal
md5AuthenticationEnabled: true
md5AuthenticationKey:
id: 1234
passphrase: abc1234
summary: Update layer 3 OSPF routing configuration
tags:
- switch.configure
/networks/{networkId}/switch/settings:
get:
description: Returns the switch network settings
operationId: getNetworkSwitchSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
vlan:
type: integer
description: Management VLAN
useCombinedPower:
type: boolean
description: The use Combined Power as the default behavior of secondary power supplies on supported devices.
powerExceptions:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the switch
powerType:
type: string
enum:
- combined
- redundant
- useNetworkSetting
description: Per switch exception (combined, redundant, useNetworkSetting)
description: Exceptions on a per switch basis to "useCombinedPower"
uplinkClientSampling:
type: object
properties:
enabled:
type: boolean
description: Enable client sampling on uplink
description: Uplink client sampling
macBlocklist:
type: object
properties:
enabled:
type: boolean
description: Enable MAC blocklist for switches in the network
description: MAC blocklist
example:
vlan: 100
useCombinedPower: false
powerExceptions:
- serial: Q234-ABCD-0001
powerType: redundant
uplinkClientSampling:
enabled: true
macBlocklist:
enabled: true
summary: Returns the switch network settings
tags:
- switch.configure
put:
description: Update switch network settings
operationId: updateNetworkSwitchSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
vlan:
type: integer
description: Management VLAN
useCombinedPower:
type: boolean
description: The use Combined Power as the default behavior of secondary power supplies on supported devices.
powerExceptions:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the switch
powerType:
type: string
enum:
- combined
- redundant
- useNetworkSetting
description: Per switch exception (combined, redundant, useNetworkSetting)
required:
- serial
- powerType
description: Exceptions on a per switch basis to "useCombinedPower"
uplinkClientSampling:
type: object
properties:
enabled:
type: boolean
description: Enable uplink client sampling
description: Uplink client sampling
macBlocklist:
type: object
properties:
enabled:
type: boolean
description: Enable MAC blocklist
description: MAC blocklist
example: {}
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
vlan:
type: integer
description: Management VLAN
useCombinedPower:
type: boolean
description: The use Combined Power as the default behavior of secondary power supplies on supported devices.
powerExceptions:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the switch
powerType:
type: string
enum:
- combined
- redundant
- useNetworkSetting
description: Per switch exception (combined, redundant, useNetworkSetting)
description: Exceptions on a per switch basis to "useCombinedPower"
uplinkClientSampling:
type: object
properties:
enabled:
type: boolean
description: Enable client sampling on uplink
description: Uplink client sampling
macBlocklist:
type: object
properties:
enabled:
type: boolean
description: Enable MAC blocklist for switches in the network
description: MAC blocklist
example:
vlan: 100
useCombinedPower: false
powerExceptions:
- serial: Q234-ABCD-0001
powerType: redundant
uplinkClientSampling:
enabled: true
macBlocklist:
enabled: true
summary: Update switch network settings
tags:
- switch.configure
/networks/{networkId}/switch/stacks:
get:
description: List the switch stacks in a network
operationId: getNetworkSwitchStacks
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: ID of the Switch stack
name:
type: string
description: Name of the Switch stack
serials:
type: array
items:
type: string
description: Serials of the switches in the switch stack
isMonitorOnly:
type: boolean
description: Tells if stack is Monitored Stack.
members:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the device
name:
type: string
description: Name of the device
model:
type: string
description: Model of the device
mac:
type: string
description: MAC address of the device
role:
type: string
enum:
- active
- member
- standby
description: Role of the device
description: Members of the Stack
example:
- id: '8473'
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
isMonitorOnly: false
members:
- serial: QBZY-XWVU-TSRQ
name: switch 1
model: MS350-24-HW
mac: 00:18:0a:00:00:09
role: active
summary: List the switch stacks in a network
tags:
- switch.configure
post:
description: Create a switch stack
operationId: createNetworkSwitchStack
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the new stack
serials:
type: array
items:
type: string
description: An array of switch serials to be added into the new stack
example:
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
required:
- name
- serials
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the Switch stack
name:
type: string
description: Name of the Switch stack
serials:
type: array
items:
type: string
description: Serials of the switches in the switch stack
isMonitorOnly:
type: boolean
description: Tells if stack is Monitored Stack.
members:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the device
name:
type: string
description: Name of the device
model:
type: string
description: Model of the device
mac:
type: string
description: MAC address of the device
role:
type: string
enum:
- active
- member
- standby
description: Role of the device
description: Members of the Stack
example:
id: '8473'
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
isMonitorOnly: false
members:
- serial: QBZY-XWVU-TSRQ
name: switch 1
model: MS350-24-HW
mac: 00:18:0a:00:00:09
role: active
summary: Create a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}:
get:
description: Show a switch stack
operationId: getNetworkSwitchStack
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the Switch stack
name:
type: string
description: Name of the Switch stack
serials:
type: array
items:
type: string
description: Serials of the switches in the switch stack
isMonitorOnly:
type: boolean
description: Tells if stack is Monitored Stack.
members:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the device
name:
type: string
description: Name of the device
model:
type: string
description: Model of the device
mac:
type: string
description: MAC address of the device
role:
type: string
enum:
- active
- member
- standby
description: Role of the device
description: Members of the Stack
example:
id: '8473'
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
isMonitorOnly: false
members:
- serial: QBZY-XWVU-TSRQ
name: switch 1
model: MS350-24-HW
mac: 00:18:0a:00:00:09
role: active
summary: Show a switch stack
tags:
- switch.configure
delete:
description: Delete a stack
operationId: deleteNetworkSwitchStack
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/add:
post:
description: Add a switch to a stack
operationId: addNetworkSwitchStack
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
serial:
type: string
description: The serial of the switch to be added
example:
serial: QBZY-XWVU-TSRQ
required:
- serial
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the Switch stack
name:
type: string
description: Name of the Switch stack
serials:
type: array
items:
type: string
description: Serials of the switches in the switch stack
isMonitorOnly:
type: boolean
description: Tells if stack is Monitored Stack.
members:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the device
name:
type: string
description: Name of the device
model:
type: string
description: Model of the device
mac:
type: string
description: MAC address of the device
role:
type: string
enum:
- active
- member
- standby
description: Role of the device
description: Members of the Stack
example:
id: '8473'
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
isMonitorOnly: false
members:
- serial: QBZY-XWVU-TSRQ
name: switch 1
model: MS350-24-HW
mac: 00:18:0a:00:00:09
role: active
summary: Add a switch to a stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/remove:
post:
description: Remove a switch from a stack
operationId: removeNetworkSwitchStack
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
serial:
type: string
description: The serial of the switch to be removed
example:
serial: QBZY-XWVU-TSRQ
required:
- serial
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: ID of the Switch stack
name:
type: string
description: Name of the Switch stack
serials:
type: array
items:
type: string
description: Serials of the switches in the switch stack
isMonitorOnly:
type: boolean
description: Tells if stack is Monitored Stack.
members:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of the device
name:
type: string
description: Name of the device
model:
type: string
description: Model of the device
mac:
type: string
description: MAC address of the device
role:
type: string
enum:
- active
- member
- standby
description: Role of the device
description: Members of the Stack
example:
id: '8473'
name: A cool stack
serials:
- QBZY-XWVU-TSRQ
- QBAB-CDEF-GHIJ
isMonitorOnly: false
members:
- serial: QBZY-XWVU-TSRQ
name: switch 1
model: MS350-24-HW
mac: 00:18:0a:00:00:09
role: active
summary: Remove a switch from a stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces:
get:
description: List layer 3 interfaces for a switch stack
operationId: getNetworkSwitchStackRoutingInterfaces
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
- interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: List layer 3 interfaces for a switch stack
tags:
- switch.configure
post:
description: Create a layer 3 interface for a switch stack
operationId: createNetworkSwitchStackRoutingInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: A friendly name or description for the interface or VLAN.
subnet:
type: string
description: The network that this routed interface is on, in CIDR notation (ex. 10.1.1.0/24).
interfaceIp:
type: string
description: The IP address this switch stack will use for layer 3 routing on this VLAN or subnet. This cannot be the same as the switch's management IP.
multicastRouting:
type: string
enum:
- IGMP snooping querier
- disabled
- enabled
description: Enable multicast support if, multicast routing between VLANs is required. Options are, 'disabled', 'enabled' or 'IGMP snooping querier'. Default is 'disabled'.
vlanId:
type: integer
description: The VLAN this routed interface is on. VLAN must be between 1 and 4094.
defaultGateway:
type: string
description: The next hop for any traffic that isn't going to a directly connected subnet or over a static route. This IP address must exist in a subnet with a routed interface.
ospfSettings:
type: object
properties:
area:
type: string
description: The OSPF area to which this interface should belong. Can be either 'disabled' or the identifier of an existing OSPF area. Defaults to 'disabled'.
cost:
type: integer
description: The path cost for this interface. Defaults to 1, but can be increased up to 65535 to give lower priority.
isPassiveEnabled:
type: boolean
description: When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
description: The OSPF routing settings of the interface.
ipv6:
type: object
properties:
assignmentMode:
type: string
description: The IPv6 assignment mode for the interface. Can be either 'eui-64' or 'static'.
prefix:
type: string
description: The IPv6 prefix of the interface. Required if IPv6 object is included.
address:
type: string
description: The IPv6 address of the interface. Required if assignmentMode is 'static'. Must not be included if assignmentMode is 'eui-64'.
gateway:
type: string
description: The IPv6 default gateway of the interface. Required if prefix is defined and this is the first interface with IPv6 configured for the stack.
description: The IPv6 settings of the interface.
example:
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
defaultGateway: 192.168.1.1
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ipv6:
assignmentMode: static
prefix: 1:2:3:4::/48
address: 1:2:3:4::1
gateway: 1:2:3:4::2
required:
- name
- vlanId
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: Create a layer 3 interface for a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces/{interfaceId}:
get:
description: Return a layer 3 interface from a switch stack
operationId: getNetworkSwitchStackRoutingInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
defaultGateway:
type: string
description: IPv4 default gateway
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
defaultGateway: 192.168.1.1
summary: Return a layer 3 interface from a switch stack
tags:
- switch.configure
put:
description: Update a layer 3 interface for a switch stack
operationId: updateNetworkSwitchStackRoutingInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: A friendly name or description for the interface or VLAN.
subnet:
type: string
description: The network that this routed interface is on, in CIDR notation (ex. 10.1.1.0/24).
interfaceIp:
type: string
description: The IP address this switch stack will use for layer 3 routing on this VLAN or subnet. This cannot be the same as the switch's management IP.
multicastRouting:
type: string
enum:
- IGMP snooping querier
- disabled
- enabled
description: Enable multicast support if, multicast routing between VLANs is required. Options are, 'disabled', 'enabled' or 'IGMP snooping querier'.
vlanId:
type: integer
description: The VLAN this routed interface is on. VLAN must be between 1 and 4094.
defaultGateway:
type: string
description: The next hop for any traffic that isn't going to a directly connected subnet or over a static route. This IP address must exist in a subnet with a routed interface.
ospfSettings:
type: object
properties:
area:
type: string
description: The OSPF area to which this interface should belong. Can be either 'disabled' or the identifier of an existing OSPF area.
cost:
type: integer
description: The path cost for this interface. Defaults to 1, but can be increased up to 65535 to give lower priority.
isPassiveEnabled:
type: boolean
description: When enabled, OSPF will not run on the interface, but the subnet will still be advertised.
description: The OSPF routing settings of the interface.
ipv6:
type: object
properties:
assignmentMode:
type: string
description: The IPv6 assignment mode for the interface. Can be either 'eui-64' or 'static'.
prefix:
type: string
description: The IPv6 prefix of the interface. Required if IPv6 object is included and interface does not already have ipv6.prefix configured
address:
type: string
description: The IPv6 address of the interface. Required if assignmentMode is included and set as 'static'. Must not be included if assignmentMode is 'eui-64'.
gateway:
type: string
description: The IPv6 default gateway of the interface. Required if prefix is defined and this is the first interface with IPv6 configured for the stack.
description: The IPv6 settings of the interface.
example:
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
defaultGateway: 192.168.1.1
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ipv6:
assignmentMode: static
prefix: 1:2:3:4::/48
address: 1:2:3:4::1
gateway: 1:2:3:4::2
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
interfaceId:
type: string
description: The id
name:
type: string
description: The name
subnet:
type: string
description: IPv4 subnet
interfaceIp:
type: string
description: IPv4 address
multicastRouting:
type: string
description: Multicast routing status
vlanId:
type: integer
description: VLAN id
ospfSettings:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv4 area
description: IPv4 OSPF Settings
ospfV3:
type: object
properties:
area:
type: string
description: Area id
cost:
type: integer
description: OSPF Cost
isPassiveEnabled:
type: boolean
description: Disable sending Hello packets on this interface's IPv6 area
description: IPv6 OSPF Settings
ipv6:
type: object
properties:
assignmentMode:
type: string
description: Assignment mode
address:
type: string
description: IPv6 address
prefix:
type: string
description: IPv6 subnet
gateway:
type: string
description: IPv6 gateway
description: IPv6 addressing
example:
interfaceId: '1234'
name: L3 interface
subnet: 192.168.1.0/24
interfaceIp: 192.168.1.2
multicastRouting: disabled
vlanId: 100
ospfSettings:
area: '0'
cost: 1
isPassiveEnabled: true
ospfV3:
area: '1'
cost: 2
isPassiveEnabled: true
ipv6:
assignmentMode: static
address: 1:2:3:4::1
prefix: 1:2:3:4::/48
gateway: 1:2:3:4::2
summary: Update a layer 3 interface for a switch stack
tags:
- switch.configure
delete:
description: Delete a layer 3 interface from a switch stack
operationId: deleteNetworkSwitchStackRoutingInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a layer 3 interface from a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/routing/interfaces/{interfaceId}/dhcp:
get:
description: Return a layer 3 interface DHCP configuration for a switch stack
operationId: getNetworkSwitchStackRoutingInterfaceDhcp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
description: The DHCP mode options for the switch stack interface ('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch stack interface
dhcpLeaseTime:
type: string
description: The DHCP lease time config for the dhcp server running on the switch stack interface ('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
description: The DHCP name server option for the dhcp server running on the switch stack interface ('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: The DHCP name server IPs when DHCP name server option is 'custom'
bootOptionsEnabled:
type: boolean
description: Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch stack interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch stack interface
bootFileName:
type: string
description: The PXE boot server file name for the DHCP server running on the switch stack interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
description: The type of the DHCP option which should be one of ('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
description: Array of DHCP options consisting of code, type and value for the DHCP server running on the switch stack interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
summary: Return a layer 3 interface DHCP configuration for a switch stack
tags:
- switch.configure
put:
description: Update a layer 3 interface DHCP configuration for a switch stack
operationId: updateNetworkSwitchStackRoutingInterfaceDhcp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: interfaceId
in: path
description: Interface ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
enum:
- dhcpDisabled
- dhcpRelay
- dhcpServer
description: |-
The DHCP mode options for the switch stack interface
('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch stack interface
dhcpLeaseTime:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 12 hours
- 30 minutes
- 4 hours
description: |-
The DHCP lease time config for the dhcp server running on switch stack interface
('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
enum:
- custom
- googlePublicDns
- openDns
description: |-
The DHCP name server option for the dhcp server running on the switch stack interface
('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: |-
The DHCP name server IPs when DHCP name server option is '
custom'
bootOptionsEnabled:
type: boolean
description: |-
Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch
stack interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch stack interface
bootFileName:
type: string
description: The PXE boot server file name for the DHCP server running on the switch stack interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
enum:
- hex
- integer
- ip
- text
description: |-
The type of the DHCP option which should be one of
('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
required:
- code
- type
- value
description: |-
Array of DHCP options consisting of code, type and value for the DHCP server running on the
switch stack interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
required:
- start
- end
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
required:
- name
- mac
- ip
description: Array of DHCP fixed IP assignments for the DHCP server running on the switch stack interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
dhcpMode:
type: string
description: The DHCP mode options for the switch stack interface ('dhcpDisabled', 'dhcpRelay' or 'dhcpServer')
dhcpRelayServerIps:
type: array
items:
type: string
description: The DHCP relay server IPs to which DHCP packets would get relayed for the switch stack interface
dhcpLeaseTime:
type: string
description: The DHCP lease time config for the dhcp server running on the switch stack interface ('30 minutes', '1 hour', '4 hours', '12 hours', '1 day' or '1 week')
dnsNameserversOption:
type: string
description: The DHCP name server option for the dhcp server running on the switch stack interface ('googlePublicDns', 'openDns' or 'custom')
dnsCustomNameservers:
type: array
items:
type: string
description: The DHCP name server IPs when DHCP name server option is 'custom'
bootOptionsEnabled:
type: boolean
description: Enable DHCP boot options to provide PXE boot options configs for the dhcp server running on the switch stack interface
bootNextServer:
type: string
description: The PXE boot server IP for the DHCP server running on the switch stack interface
bootFileName:
type: string
description: The PXE boot server file name for the DHCP server running on the switch stack interface
dhcpOptions:
type: array
items:
type: object
properties:
code:
type: string
description: The code for DHCP option which should be from 2 to 254
type:
type: string
description: The type of the DHCP option which should be one of ('text', 'ip', 'integer' or 'hex')
value:
type: string
description: The value of the DHCP option
description: Array of DHCP options consisting of code, type and value for the DHCP server running on the switch stack interface
reservedIpRanges:
type: array
items:
type: object
properties:
start:
type: string
description: The starting IP address of the reserved IP range
end:
type: string
description: The ending IP address of the reserved IP range
comment:
type: string
description: The comment for the reserved IP range
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
fixedIpAssignments:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the client which has fixed IP address
mac:
type: string
description: The MAC address of the client which has fixed IP address
ip:
type: string
description: The IP address of the client which has fixed IP address assigned to it
description: Array of DHCP reserved IP assignments for the DHCP server running on the switch stack interface
example:
dhcpMode: dhcpServer
dhcpRelayServerIps:
- 1.2.3.4
dhcpLeaseTime: 1 day
dnsNameserversOption: custom
dnsCustomNameservers:
- 8.8.8.8, 8.8.4.4
bootOptionsEnabled: true
bootNextServer: 1.2.3.4
bootFileName: home_boot_file
dhcpOptions:
- code: '5'
type: text
value: five
reservedIpRanges:
- start: 192.168.1.1
end: 192.168.1.10
comment: A reserved IP range
fixedIpAssignments:
- name: Cisco Meraki valued client
mac: '22:33:44:55:66:77'
ip: 192.168.1.12
summary: Update a layer 3 interface DHCP configuration for a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/routing/staticRoutes:
get:
description: List layer 3 static routes for a switch stack
operationId: getNetworkSwitchStackRoutingStaticRoutes
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
- staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: List layer 3 static routes for a switch stack
tags:
- switch.configure
post:
description: Create a layer 3 static route for a switch stack
operationId: createNetworkSwitchStackRoutingStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name or description for layer 3 static route
subnet:
type: string
description: The subnet which is routed via this static route and should be specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: IP address of the next hop device to which the device sends its traffic for the subnet
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static route via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static route over OSPF routes
example:
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
required:
- subnet
- nextHopIp
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Create a layer 3 static route for a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stacks/{switchStackId}/routing/staticRoutes/{staticRouteId}:
get:
description: Return a layer 3 static route for a switch stack
operationId: getNetworkSwitchStackRoutingStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Return a layer 3 static route for a switch stack
tags:
- switch.configure
put:
description: Update a layer 3 static route for a switch stack
operationId: updateNetworkSwitchStackRoutingStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: Name or description for layer 3 static route
subnet:
type: string
description: The subnet which is routed via this static route and should be specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: IP address of the next hop device to which the device sends its traffic for the subnet
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static route via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static route over OSPF routes
example:
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
staticRouteId:
type: string
description: The identifier of a layer 3 static route
name:
type: string
description: The name or description of the layer 3 static route
subnet:
type: string
description: The IP address of the subnetwork specified in CIDR notation (ex. 1.2.3.0/24)
nextHopIp:
type: string
description: The IP address of the router to which traffic for this destination network should be sent
managementNextHop:
type: string
description: Optional fallback IP address for management traffic
advertiseViaOspfEnabled:
type: boolean
description: Option to advertise static routes via OSPF
preferOverOspfRoutesEnabled:
type: boolean
description: Option to prefer static routes over OSPF routes
required:
- subnet
- nextHopIp
example:
staticRouteId: '1234'
name: My route
subnet: 192.168.1.0/24
nextHopIp: 1.2.3.4
managementNextHop: 1.2.3.5
advertiseViaOspfEnabled: false
preferOverOspfRoutesEnabled: false
summary: Update a layer 3 static route for a switch stack
tags:
- switch.configure
delete:
description: Delete a layer 3 static route for a switch stack
operationId: deleteNetworkSwitchStackRoutingStaticRoute
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: switchStackId
in: path
description: Switch stack ID
schema:
type: string
required: true
- name: staticRouteId
in: path
description: Static route ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a layer 3 static route for a switch stack
tags:
- switch.configure
/networks/{networkId}/switch/stormControl:
get:
description: Return the storm control configuration for a switch network
operationId: getNetworkSwitchStormControl
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
broadcastThreshold:
type: integer
description: Broadcast threshold.
multicastThreshold:
type: integer
description: Multicast threshold.
unknownUnicastThreshold:
type: integer
description: Unknown Unicast threshold.
treatTheseTrafficTypesAsOneThreshold:
type: array
items:
type: string
description: Grouped traffic types
example:
broadcastThreshold: 30
multicastThreshold: 30
unknownUnicastThreshold: 30
treatTheseTrafficTypesAsOneThreshold:
- broadcast
- multicast
summary: Return the storm control configuration for a switch network
tags:
- switch.configure
put:
description: Update the storm control configuration for a switch network
operationId: updateNetworkSwitchStormControl
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
broadcastThreshold:
type: integer
description: Percentage (1 to 99) of total available port bandwidth for broadcast traffic type. Default value 100 percent rate is to clear the configuration.
multicastThreshold:
type: integer
description: Percentage (1 to 99) of total available port bandwidth for multicast traffic type. Default value 100 percent rate is to clear the configuration.
unknownUnicastThreshold:
type: integer
description: Percentage (1 to 99) of total available port bandwidth for unknown unicast (dlf-destination lookup failure) traffic type. Default value 100 percent rate is to clear the configuration.
treatTheseTrafficTypesAsOneThreshold:
type: array
items:
type: string
description: Grouped traffic types
example:
broadcastThreshold: 30
multicastThreshold: 30
unknownUnicastThreshold: 30
treatTheseTrafficTypesAsOneThreshold:
- broadcast
- multicast
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
broadcastThreshold:
type: integer
description: Broadcast threshold.
multicastThreshold:
type: integer
description: Multicast threshold.
unknownUnicastThreshold:
type: integer
description: Unknown Unicast threshold.
treatTheseTrafficTypesAsOneThreshold:
type: array
items:
type: string
description: Grouped traffic types
example:
broadcastThreshold: 30
multicastThreshold: 30
unknownUnicastThreshold: 30
treatTheseTrafficTypesAsOneThreshold:
- broadcast
- multicast
summary: Update the storm control configuration for a switch network
tags:
- switch.configure
/networks/{networkId}/switch/stp:
get:
description: Returns STP settings
operationId: getNetworkSwitchStp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rstpEnabled:
type: boolean
description: The spanning tree protocol status in network
stpBridgePriority:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: List of switch serial numbers
stacks:
type: array
items:
type: string
description: List of stack IDs
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs
stpPriority:
type: integer
description: STP priority for switch, stacks, or switch templates
description: STP bridge priority for switches/stacks or switch templates. An empty array will clear the STP bridge priority settings.
example:
rstpEnabled: true
stpBridgePriority:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
switchProfiles:
- '1098'
- '1099'
- '1100'
stpPriority: 4096
summary: Returns STP settings
tags:
- switch.configure
put:
description: Updates STP settings
operationId: updateNetworkSwitchStp
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rstpEnabled:
type: boolean
description: The spanning tree protocol status in network
stpBridgePriority:
type: array
items:
type: object
properties:
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs
switches:
type: array
items:
type: string
description: List of switch serial numbers
stacks:
type: array
items:
type: string
description: List of stack IDs
stpPriority:
type: integer
description: STP priority for switch, stacks, or switch templates
required:
- stpPriority
description: STP bridge priority for switches/stacks or switch templates. An empty array will clear the STP bridge priority settings.
example:
rstpEnabled: true
stpBridgePriority:
- switchProfiles:
- '1098'
- '1099'
- '1100'
switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
stpPriority: 4096
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rstpEnabled:
type: boolean
description: The spanning tree protocol status in network
stpBridgePriority:
type: array
items:
type: object
properties:
switches:
type: array
items:
type: string
description: List of switch serial numbers
stacks:
type: array
items:
type: string
description: List of stack IDs
switchProfiles:
type: array
items:
type: string
description: List of switch template IDs
stpPriority:
type: integer
description: STP priority for switch, stacks, or switch templates
description: STP bridge priority for switches/stacks or switch templates. An empty array will clear the STP bridge priority settings.
example:
rstpEnabled: true
stpBridgePriority:
- switches:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
stacks:
- '789102'
- '123456'
- '129102'
switchProfiles:
- '1098'
- '1099'
- '1100'
stpPriority: 4096
summary: Updates STP settings
tags:
- switch.configure
/networks/{networkId}/wireless/airMarshal:
get:
description: List Air Marshal scan results from a network
operationId: getNetworkWirelessAirMarshal
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- ssid: linksys
bssids:
- bssid: '00:11:22:33:44:55'
contained: false
detectedBy:
- device: Q234-ABCD-5678
rssi: 17
channels:
- 36
- 40
firstSeen: 1518365681
lastSeen: 1526087474
wiredMacs:
- '00:11:22:33:44:55'
wiredVlans:
- 0
- 108
wiredLastSeen: 1526087474
summary: List Air Marshal scan results from a network
tags:
- wireless.monitor
/networks/{networkId}/wireless/airMarshal/rules:
post:
description: Creates a new rule
operationId: createNetworkWirelessAirMarshalRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
type:
type: string
enum:
- alert
- allow
- block
description: Indicates if this rule will allow, block, or alert.
match:
type: object
properties:
type:
type: string
enum:
- bssid
- contains
- exact
- wildcard
description: The type of match.
string:
type: string
description: The string used to match.
description: Object describing the rule specification.
example:
type: allow
match:
type: bssid
string: '00:11:22:33:44:55'
required:
- type
- match
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Network ID
name:
type: string
description: Network name
description: Network details
ruleId:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
updatedAt:
type: string
format: date-time
description: Updated at timestamp
createdAt:
type: string
format: date-time
description: Created at timestamp
match:
type: object
properties:
string:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
example:
network:
id: N_12345
name: Network 1
ruleId: '5239'
type: allow
updatedAt: '2023-05-23 12:02:46.298'
createdAt: '2023-05-23 12:02:46.298'
match:
string: ipsum
type: contains
summary: Creates a new rule
tags:
- wireless.configure
/networks/{networkId}/wireless/airMarshal/rules/{ruleId}:
put:
description: Update a rule
operationId: updateNetworkWirelessAirMarshalRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: ruleId
in: path
description: Rule ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
type:
type: string
enum:
- alert
- allow
- block
description: Indicates if this rule will allow, block, or alert.
match:
type: object
properties:
type:
type: string
enum:
- bssid
- contains
- exact
- wildcard
description: The type of match.
string:
type: string
description: The string used to match.
description: Object describing the rule specification.
example:
type: allow
match:
type: bssid
string: '00:11:22:33:44:55'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Network ID
name:
type: string
description: Network name
description: Network details
ruleId:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
updatedAt:
type: string
format: date-time
description: Updated at timestamp
createdAt:
type: string
format: date-time
description: Created at timestamp
match:
type: object
properties:
string:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
example:
network:
id: N_12345
name: Network 1
ruleId: '5239'
type: allow
updatedAt: '2023-05-23 12:02:46.298'
createdAt: '2023-05-23 12:02:46.298'
match:
string: ipsum
type: contains
summary: Update a rule
tags:
- wireless.configure
delete:
description: Delete an Air Marshal rule.
operationId: deleteNetworkWirelessAirMarshalRule
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: ruleId
in: path
description: Rule ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete an Air Marshal rule.
tags:
- wireless.configure
/networks/{networkId}/wireless/airMarshal/settings:
put:
description: Updates Air Marshal settings.
operationId: updateNetworkWirelessAirMarshalSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
defaultPolicy:
type: string
enum:
- allow
- block
description: Allows clients to access rogue networks. Blocked by default.
example:
defaultPolicy: allow
required:
- defaultPolicy
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
networkId:
type: string
description: The network ID
defaultPolicy:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs. (blocked by default)
example:
networkId: N_12345
defaultPolicy: allow
summary: Updates Air Marshal settings.
tags:
- wireless.configure
/networks/{networkId}/wireless/alternateManagementInterface:
get:
description: Return alternate management interface and devices with IP assigned
operationId: getNetworkWirelessAlternateManagementInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
- ldap
accessPoints:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
dns1: 8.8.8.8
dns2: 8.8.4.4
summary: Return alternate management interface and devices with IP assigned
tags:
- wireless.configure
put:
description: Update alternate management interface and device static IP
operationId: updateNetworkWirelessAlternateManagementInterface
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Boolean value to enable or disable alternate management interface
vlanId:
type: integer
description: Alternate management interface VLAN, must be between 1 and 4094
protocols:
type: array
items:
type: string
enum:
- ldap
- radius
- snmp
- syslog
description: 'Can be one or more of the following values: ''radius'', ''snmp'', ''syslog'' or ''ldap'''
accessPoints:
type: array
items:
type: object
properties:
serial:
type: string
description: Serial number of access point to be configured with alternate management IP
alternateManagementIp:
type: string
description: Wireless alternate management interface device IP. Provide an empty string to remove alternate management IP assignment
subnetMask:
type: string
description: Subnet mask must be in IP format
gateway:
type: string
description: Gateway must be in IP format
dns1:
type: string
description: Primary DNS must be in IP format
dns2:
type: string
description: Optional secondary DNS must be in IP format
required:
- serial
- alternateManagementIp
description: 'Array of access point serial number and IP assignment. Note: accessPoints IP assignment is not applicable for template networks, in other words, do not put ''accessPoints'' in the body when updating template networks. Also, an empty ''accessPoints'' array will remove all previous static IP assignments'
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
- ldap
accessPoints:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
dns1: 8.8.8.8
dns2: 8.8.4.4
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
vlanId: 100
protocols:
- radius
- snmp
- syslog
- ldap
accessPoints:
- serial: Q234-ABCD-5678
alternateManagementIp: 1.2.3.4
subnetMask: 255.255.255.0
gateway: 1.2.3.5
dns1: 8.8.8.8
dns2: 8.8.4.4
summary: Update alternate management interface and device static IP
tags:
- wireless.configure
/networks/{networkId}/wireless/billing:
get:
description: Return the billing settings of this network
operationId: getNetworkWirelessBilling
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
currency:
type: string
description: The currency code of this node group's billing plans
plans:
type: array
items:
type: object
properties:
id:
type: string
description: The id of the pricing plan to update.
price:
type: number
format: float
description: The price of the billing plan.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The uplink bandwidth settings for the pricing plan.
timeLimit:
type: string
description: The time limit of the pricing plan in minutes.
description: Array of billing plans in the node group. (Can configure a maximum of 5)
example:
currency: USD
plans:
- id: '1'
price: 5
bandwidthLimits:
limitUp: 1000
limitDown: 1000
timeLimit: 1 hour
summary: Return the billing settings of this network
tags:
- wireless.configure
put:
description: Update the billing settings
operationId: updateNetworkWirelessBilling
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
currency:
type: string
description: The currency code of this node group's billing plans
plans:
type: array
items:
type: object
properties:
id:
type: string
description: The id of the pricing plan to update.
price:
type: number
format: float
description: The price of the billing plan.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps). null indicates no limit
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps). null indicates no limit
description: The uplink bandwidth settings for the pricing plan.
timeLimit:
type: string
enum:
- 1 day
- 1 hour
- 1 week
- 30 days
description: The time limit of the pricing plan in minutes. Can be '1 hour', '1 day', '1 week', or '30 days'.
required:
- price
- bandwidthLimits
- timeLimit
description: Array of billing plans in the node group. (Can configure a maximum of 5)
example:
currency: USD
plans:
- id: '1'
price: 5
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
timeLimit: 1 hour
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
currency:
type: string
description: The currency code of this node group's billing plans
plans:
type: array
items:
type: object
properties:
id:
type: string
description: The id of the pricing plan to update.
price:
type: number
format: float
description: The price of the billing plan.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The uplink bandwidth settings for the pricing plan.
timeLimit:
type: string
description: The time limit of the pricing plan in minutes.
description: Array of billing plans in the node group. (Can configure a maximum of 5)
example:
currency: USD
plans:
- id: '1'
price: 5
bandwidthLimits:
limitUp: 1000
limitDown: 1000
timeLimit: 1 hour
summary: Update the billing settings
tags:
- wireless.configure
/networks/{networkId}/wireless/bluetooth/settings:
get:
description: Return the Bluetooth settings for a network. Bluetooth settings must be enabled on the network.
operationId: getNetworkWirelessBluetoothSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
scanningEnabled:
type: boolean
description: Whether APs will scan for Bluetooth enabled clients.
advertisingEnabled:
type: boolean
description: Whether APs will advertise beacons.
uuid:
type: string
description: The UUID to be used in the beacon identifier.
majorMinorAssignmentMode:
type: string
description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
major:
type: integer
description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
minor:
type: integer
description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
eslEnabled:
type: boolean
description: Whether ESL is enabled on this network.
example:
scanningEnabled: true
advertisingEnabled: true
uuid: 00000000-0000-0000-000-000000000000
majorMinorAssignmentMode: Non-unique
major: 1
minor: 1
eslEnabled: true
summary: Return the Bluetooth settings for a network. Bluetooth settings must be enabled on the network.
tags:
- wireless.configure
put:
description: Update the Bluetooth settings for a network. See the docs page for Bluetooth settings.
operationId: updateNetworkWirelessBluetoothSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
scanningEnabled:
type: boolean
description: Whether APs will scan for Bluetooth enabled clients.
advertisingEnabled:
type: boolean
description: Whether APs will advertise beacons.
uuid:
type: string
description: The UUID to be used in the beacon identifier.
majorMinorAssignmentMode:
type: string
enum:
- Non-unique
- Unique
description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
major:
type: integer
description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
minor:
type: integer
description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
example:
scanningEnabled: true
advertisingEnabled: true
uuid: 00000000-0000-0000-000-000000000000
majorMinorAssignmentMode: Non-unique
major: 1
minor: 1
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
scanningEnabled:
type: boolean
description: Whether APs will scan for Bluetooth enabled clients.
advertisingEnabled:
type: boolean
description: Whether APs will advertise beacons.
uuid:
type: string
description: The UUID to be used in the beacon identifier.
majorMinorAssignmentMode:
type: string
description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
major:
type: integer
description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
minor:
type: integer
description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
eslEnabled:
type: boolean
description: Whether ESL is enabled on this network.
example:
scanningEnabled: true
advertisingEnabled: true
uuid: 00000000-0000-0000-000-000000000000
majorMinorAssignmentMode: Non-unique
major: 1
minor: 1
eslEnabled: true
summary: Update the Bluetooth settings for a network
tags:
- wireless.configure
/networks/{networkId}/wireless/channelUtilizationHistory:
get:
description: Return AP channel utilization over time for a device or network client
operationId: getNetworkWirelessChannelUtilizationHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client to return per-device, per-band AP channel utilization metrics inner joined by the queried client's connection history.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device to return AP channel utilization metrics for the queried device; either :band or :clientId must be jointly specified.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag to return AP channel utilization metrics for devices labeled with the given tag; either :clientId or :deviceSerial must be jointly specified.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
utilizationTotal:
type: number
format: float
description: Total channel utilization
utilization80211:
type: number
format: float
description: Average wifi utilization
utilizationNon80211:
type: number
format: float
description: Average signal interference
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
utilizationTotal: 9.89
utilization80211: 7.22
utilizationNon80211: 2.67
summary: Return AP channel utilization over time for a device or network client
tags:
- wireless.monitor
/networks/{networkId}/wireless/clientCountHistory:
get:
description: Return wireless client counts over time for a network, device, or network client
operationId: getNetworkWirelessClientCountHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 300, 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client to return per-device client counts over time inner joined by the queried client's connection history.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID number.
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
clientCount:
type: integer
description: Number of connected clients
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
clientCount: 14
summary: Return wireless client counts over time for a network, device, or network client
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/connectionStats:
get:
description: Aggregated connectivity info for this network, grouped by clients
operationId: getNetworkWirelessClientsConnectionStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- mac: 00:61:71:c8:51:27
connectionStats:
assoc: 0
auth: 4
dhcp: 0
dns: 0
success: 10
- mac: 1c:4d:70:7f:5e:5e
connectionStats:
assoc: 0
auth: 1
dhcp: 0
dns: 0
success: 24
- mac: 1c:4d:70:81:8d:0a
connectionStats:
assoc: 1
auth: 0
dhcp: 0
dns: 0
success: 16
summary: Aggregated connectivity info for this network, grouped by clients
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/latencyStats:
get:
description: Aggregated latency info for this network, grouped by clients
operationId: getNetworkWirelessClientsLatencyStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: fields
in: query
description: 'Partial selection: If present, this call will return only the selected fields of ["rawDistribution", "avg"]. All fields will be returned by default. Selected fields must be entered as a comma separated string.'
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- mac: 00:61:71:c8:51:27
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
- mac: 1c:4d:70:7f:5e:5e
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
- mac: 1c:4d:70:81:8d:0a
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
summary: Aggregated latency info for this network, grouped by clients
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/{clientId}/connectionStats:
get:
description: Aggregated connectivity info for a given client on this network. Clients are identified by their MAC.
operationId: getNetworkWirelessClientConnectionStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: clientId
in: path
description: Client ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
mac:
type: string
description: MAC address of the client
connectionStats:
type: object
properties:
assoc:
type: integer
description: Association count
auth:
type: integer
description: Authorization count
dhcp:
type: integer
description: DHCP count
success:
type: integer
description: successful count
description: Connection stats
example:
mac: '00:11:22:33:44:55'
connectionStats:
assoc: 3
auth: 4
dhcp: 4
success: 5
summary: Aggregated connectivity info for a given client on this network
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/{clientId}/connectivityEvents:
get:
description: List the wireless connectivity events for a client within a network in the timespan.
operationId: getNetworkWirelessClientConnectivityEvents
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: clientId
in: path
description: Client ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: sortOrder
in: query
description: Sorted order of entries. Order options are 'ascending' and 'descending'. Default is 'ascending'.
schema:
type: string
enum:
- ascending
- descending
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
- name: types
in: query
description: A list of event types to include. If not specified, events of all types will be returned. Valid types are 'assoc', 'disassoc', 'auth', 'deauth', 'dns', 'dhcp', 'roam', 'connection' and/or 'sticky'.
schema:
type: array
items:
type: string
enum:
- assoc
- auth
- connection
- deauth
- dhcp
- disassoc
- dns
- roam
- sticky
- name: band
in: query
description: Filter results by band. Valid bands are '2.4', '5' or '6'.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssidNumber
in: query
description: Filter results by SSID. If not specified, events for all SSIDs will be returned.
schema:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- name: includedSeverities
in: query
description: A list of severities to include. If not specified, events of all severities will be returned. Valid severities are 'good', 'info', 'warn' and/or 'bad'.
schema:
type: array
items:
type: string
enum:
- bad
- good
- info
- warn
- name: deviceSerial
in: query
description: Filter results by an AP's serial number.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
occurredAt:
type: string
format: date-time
description: Timestamp at which the event occurred
band:
type: string
enum:
- '2.4'
- '5'
- '6'
description: Wireless band the event occurred on
ssidNumber:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
description: Number of the SSID the event occurred in
type:
type: string
enum:
- assoc
- auth
- connection
- deauth
- dhcp
- disassoc
- dns
- roam
- sticky
description: Event type
subtype:
type: string
description: Event subtype
severity:
type: string
description: Event severity
durationMs:
type: integer
description: Duration of the event in milliseconds
channel:
type: integer
description: Wireless channel the event occurred over
rssi:
type: integer
description: RSSI recorded at the time of the event
eventData:
type: object
additionalProperties: true
description: Additional information relevant to the given event. Properties vary based on event type.
deviceSerial:
type: string
description: Serial number of the device the event occurred for
captureId:
type: string
description: Id of the packet capture triggered for the event, if any
example:
- occurredAt: '2018-02-11T00:00:00.090210Z'
band: '5'
ssidNumber: 1
type: auth
subtype: success
severity: bad
durationMs: 100
channel: 44
rssi: 80
deviceSerial: Q234-ABCD-5678
captureId: '123456'
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the wireless connectivity events for a client within a network in the timespan.
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/{clientId}/latencyHistory:
get:
description: 'Return the latency history for a client. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP. The latency data is from a sample of 2% of packets and is grouped into 4 traffic categories: background, best effort, video, voice. Within these categories the sampled packet counters are bucketed by latency in milliseconds.'
operationId: getNetworkWirelessClientLatencyHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: clientId
in: path
description: Client ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 791 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 791 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 less than or equal to 791 days. The default is 1 day.
schema:
type: number
format: float
maximum: 68342400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 86400. The default is 86400.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
t0:
type: integer
description: The latency history bucket start time in seconds
t1:
type: integer
description: The latency history bucket end time in seconds
latencyBinsByCategory:
type: object
properties:
backgroundTraffic:
type: object
properties:
'0.5':
type: integer
description: The latency bucket for background traffic in 0.5 seconds
'1.0':
type: integer
description: The latency bucket for background traffic in 1.0 seconds
'2.0':
type: integer
description: The latency bucket for background traffic in 2.0 seconds
'4.0':
type: integer
description: The latency bucket for background traffic in 4.0 seconds
'8.0':
type: integer
description: The latency bucket for background traffic in 8.0 seconds
'16.0':
type: integer
description: The latency bucket for background traffic in 16.0 seconds
'32.0':
type: integer
description: The latency bucket for background traffic in 32.0 seconds
'64.0':
type: integer
description: The latency bucket for background traffic in 64.0 seconds
'128.0':
type: integer
description: The latency bucket for background traffic in 128.0 seconds
'256.0':
type: integer
description: The latency bucket for background traffic in 256.0 seconds
'512.0':
type: integer
description: The latency bucket for background traffic in 512.0 seconds
'1024.0':
type: integer
description: The latency bucket for background traffic in 1024.0 seconds
'2048.0':
type: integer
description: The latency bucket for background traffic in 2048.0 seconds
description: The time bucket's background traffic latency history
bestEffortTraffic:
type: object
properties:
'0.5':
type: integer
description: The latency bucket for best effort traffic in 0.5 seconds
'1.0':
type: integer
description: The latency bucket for best effort traffic in 1.0 seconds
'2.0':
type: integer
description: The latency bucket for best effort traffic in 2.0 seconds
'4.0':
type: integer
description: The latency bucket for best effort traffic in 4.0 seconds
'8.0':
type: integer
description: The latency bucket for best effort traffic in 8.0 seconds
'16.0':
type: integer
description: The latency bucket for best effort traffic in 16.0 seconds
'32.0':
type: integer
description: The latency bucket for best effort traffic in 32.0 seconds
'64.0':
type: integer
description: The latency bucket for best effort traffic in 64.0 seconds
'128.0':
type: integer
description: The latency bucket for best effort traffic in 128.0 seconds
'256.0':
type: integer
description: The latency bucket for best effort traffic in 256.0 seconds
'512.0':
type: integer
description: The latency bucket for best effort traffic in 512.0 seconds
'1024.0':
type: integer
description: The latency bucket for best effort traffic in 1024.0 seconds
'2048.0':
type: integer
description: The latency bucket for best effort traffic in 2048.0 seconds
description: The time bucket's best effort traffic latency history
videoTraffic:
type: object
properties:
'0.5':
type: integer
description: The latency bucket for video traffic in 0.5 seconds
'1.0':
type: integer
description: The latency bucket for video traffic in 1.0 seconds
'2.0':
type: integer
description: The latency bucket for video traffic in 2.0 seconds
'4.0':
type: integer
description: The latency bucket for video traffic in 4.0 seconds
'8.0':
type: integer
description: The latency bucket for video traffic in 8.0 seconds
'16.0':
type: integer
description: The latency bucket for video traffic in 16.0 seconds
'32.0':
type: integer
description: The latency bucket for video traffic in 32.0 seconds
'64.0':
type: integer
description: The latency bucket for video traffic in 64.0 seconds
'128.0':
type: integer
description: The latency bucket for video traffic in 128.0 seconds
'256.0':
type: integer
description: The latency bucket for video traffic in 256.0 seconds
'512.0':
type: integer
description: The latency bucket for video traffic in 512.0 seconds
'1024.0':
type: integer
description: The latency bucket for video traffic in 1024.0 seconds
'2048.0':
type: integer
description: The latency bucket for video traffic in 2048.0 seconds
description: The time bucket's video traffic latency history
voiceTraffic:
type: object
properties:
'0.5':
type: integer
description: The latency bucket for voice traffic in 0.5 seconds
'1.0':
type: integer
description: The latency bucket for voice traffic in 1.0 seconds
'2.0':
type: integer
description: The latency bucket for voice traffic in 2.0 seconds
'4.0':
type: integer
description: The latency bucket for voice traffic in 4.0 seconds
'8.0':
type: integer
description: The latency bucket for voice traffic in 8.0 seconds
'16.0':
type: integer
description: The latency bucket for voice traffic in 16.0 seconds
'32.0':
type: integer
description: The latency bucket for voice traffic in 32.0 seconds
'64.0':
type: integer
description: The latency bucket for voice traffic in 64.0 seconds
'128.0':
type: integer
description: The latency bucket for voice traffic in 128.0 seconds
'256.0':
type: integer
description: The latency bucket for voice traffic in 256.0 seconds
'512.0':
type: integer
description: The latency bucket for voice traffic in 512.0 seconds
'1024.0':
type: integer
description: The latency bucket for voice traffic in 1024.0 seconds
'2048.0':
type: integer
description: The latency bucket for voice traffic in 2048.0 seconds
description: The time bucket's voice traffic latency history
description: The latency buckets by category
example:
- t0: 1550534400
t1: 1550620800
latencyBinsByCategory:
backgroundTraffic:
'0.5': 41750
'1.0': 21552
'2.0': 59940
'4.0': 146622
'8.0': 57354
'16.0': 0
'32.0': 9954
'64.0': 0
'128.0': 0
'256.0': 1896
'512.0': 0
'1024.0': 0
'2048.0': 0
bestEffortTraffic:
'0.5': 1840899
'1.0': 1644506
'2.0': 629958
'4.0': 449564
'8.0': 2009658
'16.0': 1329568
'32.0': 282168
'64.0': 97573
'128.0': 191977
'256.0': 30560
'512.0': 26032
'1024.0': 4943
'2048.0': 12072
videoTraffic:
'0.5': 0
'1.0': 0
'2.0': 0
'4.0': 0
'8.0': 0
'16.0': 0
'32.0': 0
'64.0': 0
'128.0': 0
'256.0': 0
'512.0': 0
'1024.0': 0
'2048.0': 0
voiceTraffic:
'0.5': 716
'1.0': 948
'2.0': 474
'4.0': 78
'8.0': 0
'16.0': 0
'32.0': 0
'64.0': 0
'128.0': 0
'256.0': 0
'512.0': 0
'1024.0': 0
'2048.0': 0
summary: Return the latency history for a client
tags:
- wireless.monitor
/networks/{networkId}/wireless/clients/{clientId}/latencyStats:
get:
description: Aggregated latency info for a given client on this network. Clients are identified by their MAC.
operationId: getNetworkWirelessClientLatencyStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: clientId
in: path
description: Client ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: fields
in: query
description: 'Partial selection: If present, this call will return only the selected fields of ["rawDistribution", "avg"]. All fields will be returned by default. Selected fields must be entered as a comma separated string.'
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
mac: 00:61:71:c8:51:27
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
summary: Aggregated latency info for a given client on this network
tags:
- wireless.monitor
/networks/{networkId}/wireless/connectionStats:
get:
description: Aggregated connectivity info for this network
operationId: getNetworkWirelessConnectionStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
assoc:
type: integer
description: The number of failed association attempts
auth:
type: integer
description: The number of failed authentication attempts
dhcp:
type: integer
description: The number of failed DHCP attempts
dns:
type: integer
description: The number of failed DNS attempts
success:
type: integer
description: The number of successful connection attempts
example:
assoc: 1
auth: 5
dhcp: 0
dns: 0
success: 51
summary: Aggregated connectivity info for this network
tags:
- wireless.monitor
/networks/{networkId}/wireless/dataRateHistory:
get:
description: Return PHY data rates over time for a network, device, or network client
operationId: getNetworkWirelessDataRateHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 300, 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID number.
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
averageKbps:
type: integer
description: Average data rate in kilobytes-per-second
downloadKbps:
type: integer
description: Download rate in kilobytes-per-second
uploadKbps:
type: integer
description: Upload rate in kilobytes-per-second
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
averageKbps: 151806
downloadKbps: 144839
uploadKbps: 158837
summary: Return PHY data rates over time for a network, device, or network client
tags:
- wireless.monitor
/networks/{networkId}/wireless/devices/connectionStats:
get:
description: Aggregated connectivity info for this network, grouped by node
operationId: getNetworkWirelessDevicesConnectionStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the device
connectionStats:
type: object
properties:
assoc:
type: integer
description: The number of failed association attempts
auth:
type: integer
description: The number of failed authentication attempts
dhcp:
type: integer
description: The number of failed DHCP attempts
dns:
type: integer
description: The number of failed DNS attempts
success:
type: integer
description: The number of successful connection attempts
description: The connection stats of the device
example:
- serial: Q234-ABCD-5678
connectionStats:
assoc: 0
auth: 1
dhcp: 0
dns: 0
success: 43
summary: Aggregated connectivity info for this network, grouped by node
tags:
- wireless.monitor
/networks/{networkId}/wireless/devices/latencyStats:
get:
description: Aggregated latency info for this network, grouped by node
operationId: getNetworkWirelessDevicesLatencyStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: fields
in: query
description: 'Partial selection: If present, this call will return only the selected fields of ["rawDistribution", "avg"]. All fields will be returned by default. Selected fields must be entered as a comma separated string.'
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- serial: Q2JC-2MJM-FHRD
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
- serial: Q2FJ-3SHB-Y2K2
latencyStats:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
summary: Aggregated latency info for this network, grouped by node
tags:
- wireless.monitor
/networks/{networkId}/wireless/electronicShelfLabel:
get:
description: Return the ESL settings of a wireless network
operationId: getNetworkWirelessElectronicShelfLabel
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
hostname:
type: string
description: Desired ESL hostname of the network
enabled:
type: boolean
description: Turn ESL features on and off for this network
example:
hostname: N_24329156
enabled: true
summary: Return the ESL settings of a wireless network
tags:
- wireless.configure
put:
description: Update the ESL settings of a wireless network
operationId: updateNetworkWirelessElectronicShelfLabel
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
hostname:
type: string
description: Desired ESL hostname of the network
enabled:
type: boolean
description: Turn ESL features on and off for this network
example:
hostname: N_24329156
enabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
hostname:
type: string
description: Desired ESL hostname of the network
enabled:
type: boolean
description: Turn ESL features on and off for this network
example:
hostname: N_24329156
enabled: true
summary: Update the ESL settings of a wireless network
tags:
- wireless.configure
/networks/{networkId}/wireless/electronicShelfLabel/configuredDevices:
get:
description: Get a list of all ESL eligible devices of a network
operationId: getNetworkWirelessElectronicShelfLabelConfiguredDevices
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
hostname:
type: string
description: Desired ESL hostname of the network
enabled:
type: boolean
description: Turn ESL features on and off for this network
example:
- hostname: N_24329156
enabled: true
summary: Get a list of all ESL eligible devices of a network
tags:
- wireless.configure
/networks/{networkId}/wireless/ethernet/ports/profiles:
get:
description: List the AP port profiles for this network
operationId: getNetworkWirelessEthernetPortsProfiles
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
profileId:
type: string
description: AP port profile ID
name:
type: string
description: AP port profile name
isDefault:
type: boolean
description: Is default profile
ports:
type: array
items:
type: object
properties:
name:
type: string
description: Name
number:
type: integer
description: Number
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
pskGroupId:
type: string
description: PSK Group number
description: Ports config
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: Name
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
description: Usb ports config
example:
- profileId: '1001'
name: Ap Port Profile Name
isDefault: false
ports:
- name: port 1
number: 1
enabled: true
ssid: 1
pskGroupId: '100'
usbPorts:
- name: usb port
enabled: true
ssid: 5
summary: List the AP port profiles for this network
tags:
- wireless.configure
post:
description: Create an AP port profile
operationId: createNetworkWirelessEthernetPortsProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: AP port profile name
ports:
type: array
items:
type: object
properties:
name:
type: string
description: AP port name
enabled:
type: boolean
description: AP port enabled
ssid:
type: integer
description: AP port ssid number
pskGroupId:
type: string
description: AP port PSK Group ID
required:
- name
description: AP ports configuration
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: AP usb port name
enabled:
type: boolean
description: AP usb port enabled
ssid:
type: integer
description: AP usb port ssid number
required:
- name
description: AP usb ports configuration
example:
name: name
ports:
- name: port
enabled: true
ssid: 1
pskGroupId: '2'
usbPorts:
- name: usb port
enabled: true
ssid: 2
required:
- name
- ports
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
profileId:
type: string
description: AP port profile ID
name:
type: string
description: AP port profile name
isDefault:
type: boolean
description: Is default profile
ports:
type: array
items:
type: object
properties:
name:
type: string
description: Name
number:
type: integer
description: Number
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
pskGroupId:
type: string
description: PSK Group number
description: Ports config
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: Name
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
description: Usb ports config
example:
profileId: '1001'
name: Ap Port Profile Name
isDefault: false
ports:
- name: port 1
number: 1
enabled: true
ssid: 1
pskGroupId: '100'
usbPorts:
- name: usb port
enabled: true
ssid: 5
summary: Create an AP port profile
tags:
- wireless.configure
/networks/{networkId}/wireless/ethernet/ports/profiles/assign:
post:
description: Assign AP port profile to list of APs
operationId: assignNetworkWirelessEthernetPortsProfiles
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
serials:
type: array
items:
type: string
description: List of AP serials
profileId:
type: string
description: AP profile ID
example:
serials:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
profileId: '1001'
required:
- serials
- profileId
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
serials:
type: array
items:
type: string
description: List of updated AP serials
profileId:
type: string
description: AP profile ID
example:
serials:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
profileId: '1001'
summary: Assign AP port profile to list of APs
tags:
- wireless.configure
/networks/{networkId}/wireless/ethernet/ports/profiles/setDefault:
post:
description: Set the AP port profile to be default for this network
operationId: setNetworkWirelessEthernetPortsProfilesDefault
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
profileId:
type: string
description: AP profile ID
example:
profileId: '1001'
required:
- profileId
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
profileId:
type: string
description: AP profile ID
example:
profileId: '1001'
summary: Set the AP port profile to be default for this network
tags:
- wireless.configure
/networks/{networkId}/wireless/ethernet/ports/profiles/{profileId}:
get:
description: Show the AP port profile by ID for this network
operationId: getNetworkWirelessEthernetPortsProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
profileId:
type: string
description: AP port profile ID
name:
type: string
description: AP port profile name
isDefault:
type: boolean
description: Is default profile
ports:
type: array
items:
type: object
properties:
name:
type: string
description: Name
number:
type: integer
description: Number
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
pskGroupId:
type: string
description: PSK Group number
description: Ports config
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: Name
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
description: Usb ports config
example:
profileId: '1001'
name: Ap Port Profile Name
isDefault: false
ports:
- name: port 1
number: 1
enabled: true
ssid: 1
pskGroupId: '100'
usbPorts:
- name: usb port
enabled: true
ssid: 5
summary: Show the AP port profile by ID for this network
tags:
- wireless.configure
put:
description: Update the AP port profile by ID for this network
operationId: updateNetworkWirelessEthernetPortsProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: AP port profile name
ports:
type: array
items:
type: object
properties:
name:
type: string
description: AP port name
enabled:
type: boolean
description: AP port enabled
ssid:
type: integer
description: AP port ssid number
pskGroupId:
type: string
description: AP port PSK Group number
required:
- name
description: AP ports configuration
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: AP usb port name
enabled:
type: boolean
description: AP usb port enabled
ssid:
type: integer
description: AP usb port ssid number
required:
- name
description: AP usb ports configuration
example: {}
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
profileId:
type: string
description: AP port profile ID
name:
type: string
description: AP port profile name
isDefault:
type: boolean
description: Is default profile
ports:
type: array
items:
type: object
properties:
name:
type: string
description: Name
number:
type: integer
description: Number
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
pskGroupId:
type: string
description: PSK Group number
description: Ports config
usbPorts:
type: array
items:
type: object
properties:
name:
type: string
description: Name
enabled:
type: boolean
description: Enabled
ssid:
type: integer
description: Ssid number
description: Usb ports config
example:
profileId: '1001'
name: Ap Port Profile Name
isDefault: false
ports:
- name: port 1
number: 1
enabled: true
ssid: 1
pskGroupId: '100'
usbPorts:
- name: usb port
enabled: true
ssid: 5
summary: Update the AP port profile by ID for this network
tags:
- wireless.configure
delete:
description: Delete an AP port profile
operationId: deleteNetworkWirelessEthernetPortsProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete an AP port profile
tags:
- wireless.configure
/networks/{networkId}/wireless/failedConnections:
get:
description: List of all failed client connection events on this network in a given time range
operationId: getNetworkWirelessFailedConnections
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: serial
in: query
description: Filter by AP
schema:
type: string
- name: clientId
in: query
description: Filter by client MAC
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
ssidNumber:
type: integer
description: SSID Number
vlan:
type: integer
description: LAN
clientMac:
type: string
description: Client Mac
serial:
type: string
description: Serial Number
failureStep:
type: string
description: 'The failed onboarding step. One of: assoc, auth, dhcp, dns.'
type:
type: string
description: The failure type in the onboarding step
ts:
type: string
format: date-time
description: The timestamp when the client mac failed
example:
- ssidNumber: 1
vlan: 100
clientMac: '22:33:44:55:66:77'
serial: Q234-ABCD-5678
failureStep: dns
type: 802.1X auth fail
ts: '2018-02-11T00:00:00.090210Z'
summary: List of all failed client connection events on this network in a given time range
tags:
- wireless.monitor
/networks/{networkId}/wireless/latencyHistory:
get:
description: Return average wireless latency over time for a network, device, or network client
operationId: getNetworkWirelessLatencyHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 300, 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID number.
schema:
type: integer
- name: accessCategory
in: query
description: Filter by access category.
schema:
type: string
enum:
- backgroundTraffic
- bestEffortTraffic
- videoTraffic
- voiceTraffic
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
avgLatencyMs:
type: integer
description: Average latency in milliseconds
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
avgLatencyMs: 29
summary: Return average wireless latency over time for a network, device, or network client
tags:
- wireless.monitor
/networks/{networkId}/wireless/latencyStats:
get:
description: Aggregated latency info for this network
operationId: getNetworkWirelessLatencyStats
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 180 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 7 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 less than or equal to 7 days.
schema:
type: number
format: float
maximum: 604800
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6'). Note that data prior to February 2020 will not have band information.
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID
schema:
type: integer
- name: vlan
in: query
description: Filter results by VLAN
schema:
type: integer
- name: apTag
in: query
description: Filter results by AP Tag
schema:
type: string
- name: fields
in: query
description: 'Partial selection: If present, this call will return only the selected fields of ["rawDistribution", "avg"]. All fields will be returned by default. Selected fields must be entered as a comma separated string.'
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
backgroundTraffic:
rawDistribution:
'0': 1234
'1': 2345
'2': 3456
'4': 4567
'8': 5678
'16': 6789
'32': 7890
'64': 8901
'128': 9012
'256': 83
'512': 1234
'1024': 2345
'2048': 9999
avg: 606.52
bestEffortTraffic: same shape as backgroundTraffic
videoTraffic: same shape as backgroundTraffic
voiceTraffic: same shape as backgroundTraffic
summary: Aggregated latency info for this network
tags:
- wireless.monitor
/networks/{networkId}/wireless/meshStatuses:
get:
description: List wireless mesh statuses for repeaters
operationId: getNetworkWirelessMeshStatuses
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 500. Default is 50.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the device.
meshRoute:
type: array
items:
type: string
description: List of device serials that make up the mesh.
latestMeshPerformance:
type: object
properties:
mbps:
type: integer
description: Average Mbps.
metric:
type: integer
description: Represents the quality of the entire route from the repeater access point to its gateway access point.
usagePercentage:
type: string
description: Mesh utilization as a percentage.
description: Current metrics on how the mesh is performing.
example:
- serial: Q234-ABCD-5678
meshRoute:
- Q234-ABCD-5678
- QWEY-SKTD-ST01
- QWEY-SKTD-ST02
latestMeshPerformance:
mbps: 43
metric: 12345
usagePercentage: 100%
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List wireless mesh statuses for repeaters
tags:
- wireless.monitor
/networks/{networkId}/wireless/rfProfiles:
get:
description: List RF profiles for this network
operationId: getNetworkWirelessRfProfiles
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: includeTemplateProfiles
in: query
description: If the network is bound to a template, this parameter controls whether or not the non-basic RF profiles defined on the template should be included in the response alongside the non-basic profiles defined on the bound network. Defaults to false.
schema:
type: boolean
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The name of the new profile. Must be unique.
networkId:
type: string
description: The network ID of the RF Profile
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false. Defaults to true.
minBitrateType:
type: string
description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
bandSelectionType:
type: string
description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'. Defaults to dual.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false. Defaults to true.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.Defaults to [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165].
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'. Defaults to auto.
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
isIndoorDefault:
type: boolean
description: Set this profile as the default indoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
isOutdoorDefault:
type: boolean
description: Set this profile as the default outdoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
example:
id: '1234'
networkId: N_24329156
name: Main Office
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
name: SSID 0
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
name: SSID 1
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
name: SSID 2
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
name: SSID 3
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
name: SSID 4
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
name: SSID 5
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
name: SSID 6
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
name: SSID 7
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
name: SSID 8
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
name: SSID 9
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
name: SSID 10
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
name: SSID 11
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
name: SSID 12
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
name: SSID 13
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
name: SSID 14
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
isIndoorDefault: false
isOutdoorDefault: false
summary: List RF profiles for this network
tags:
- wireless.configure
post:
description: Creates new RF profile for this network
operationId: createNetworkWirelessRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false. Defaults to true.
minBitrateType:
type: string
enum:
- band
- ssid
description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
bandSelectionType:
type: string
enum:
- ap
- ssid
description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'. Defaults to dual.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false. Defaults to true.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.Defaults to [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165].
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'.Defaults to [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].
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'. Defaults to 0.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
flexRadios:
type: object
properties:
byModel:
type: array
items:
type: object
properties:
model:
type: string
description: Model of the AP
bands:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: Band to use for each flex radio. For example, ['6'] will set the AP's first flex radio to 6 GHz
description: Flex radios by model.
description: Flex radio settings.
example:
name: Main Office
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
flexRadios:
byModel:
- model: MR34
bands:
- '5'
required:
- name
- bandSelectionType
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The name of the new profile. Must be unique.
networkId:
type: string
description: The network ID of the RF Profile
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false. Defaults to true.
minBitrateType:
type: string
description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
bandSelectionType:
type: string
description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'. Defaults to dual.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false. Defaults to true.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.Defaults to [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165].
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'. Defaults to auto.
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
isIndoorDefault:
type: boolean
description: Set this profile as the default indoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
isOutdoorDefault:
type: boolean
description: Set this profile as the default outdoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
example:
id: '1234'
networkId: N_24329156
name: Main Office
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
name: SSID 0
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
name: SSID 1
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
name: SSID 2
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
name: SSID 3
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
name: SSID 4
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
name: SSID 5
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
name: SSID 6
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
name: SSID 7
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
name: SSID 8
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
name: SSID 9
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
name: SSID 10
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
name: SSID 11
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
name: SSID 12
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
name: SSID 13
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
name: SSID 14
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
isIndoorDefault: false
isOutdoorDefault: false
summary: Creates new RF profile for this network
tags:
- wireless.configure
/networks/{networkId}/wireless/rfProfiles/{rfProfileId}:
put:
description: 'Updates specified RF profile for this network. Note: built-in RF profiles can only be assigned as a default, and its attributes are immutable'
operationId: updateNetworkWirelessRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the new profile. Must be unique.
isIndoorDefault:
type: boolean
description: Set this profile as the default indoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
isOutdoorDefault:
type: boolean
description: Set this profile as the default outdoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false.
minBitrateType:
type: string
enum:
- band
- ssid
description: Minimum bitrate can be set to either 'band' or 'ssid'.
bandSelectionType:
type: string
enum:
- ap
- ssid
description: Band selection can be set to either 'ssid' or 'ap'.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'.
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'.
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
flexRadios:
type: object
properties:
byModel:
type: array
items:
type: object
properties:
model:
type: string
description: Model of the AP
bands:
type: array
items:
type: string
enum:
- '2.4'
- '5'
- '6'
- disabled
description: Band to use for each flex radio. For example, ['6'] will set the AP's first flex radio to 6 GHz
description: Flex radios by model.
description: Flex radio settings.
example:
name: '1234'
isIndoorDefault: true
isOutdoorDefault: true
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
flexRadios:
byModel:
- model: MR34
bands:
- '5'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The name of the new profile. Must be unique.
networkId:
type: string
description: The network ID of the RF Profile
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false. Defaults to true.
minBitrateType:
type: string
description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
bandSelectionType:
type: string
description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'. Defaults to dual.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false. Defaults to true.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.Defaults to [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165].
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'. Defaults to auto.
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
isIndoorDefault:
type: boolean
description: Set this profile as the default indoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
isOutdoorDefault:
type: boolean
description: Set this profile as the default outdoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
example:
id: '1234'
networkId: N_24329156
name: Main Office
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
name: SSID 0
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
name: SSID 1
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
name: SSID 2
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
name: SSID 3
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
name: SSID 4
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
name: SSID 5
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
name: SSID 6
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
name: SSID 7
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
name: SSID 8
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
name: SSID 9
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
name: SSID 10
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
name: SSID 11
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
name: SSID 12
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
name: SSID 13
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
name: SSID 14
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
isIndoorDefault: false
isOutdoorDefault: false
summary: Updates specified RF profile for this network
tags:
- wireless.configure
delete:
description: Delete a RF Profile
operationId: deleteNetworkWirelessRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a RF Profile
tags:
- wireless.configure
get:
description: Return a RF profile
operationId: getNetworkWirelessRfProfile
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: rfProfileId
in: path
description: Rf profile ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: The name of the new profile. Must be unique.
networkId:
type: string
description: The network ID of the RF Profile
name:
type: string
description: The name of the new profile. Must be unique. This param is required on creation.
clientBalancingEnabled:
type: boolean
description: Steers client to best available access point. Can be either true or false. Defaults to true.
minBitrateType:
type: string
description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
bandSelectionType:
type: string
description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
apBandSettings:
type: object
properties:
bandOperationMode:
type: string
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'. Defaults to dual.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band. Can be either true or false. Defaults to true.
description: Settings that will be enabled if selectionType is set to 'ap'.
twoFourGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
minBitrate:
type: number
format: float
description: Sets min bitrate (Mbps) of 2.4Ghz band. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'. Defaults to 11.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
axEnabled:
type: boolean
description: Determines whether ax radio on 2.4Ghz band is on or off. Can be either true or false. If false, we highly recommend disabling band steering. Defaults to true.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 2.4Ghz band
fiveGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 5Ghz band. Can be one of '36', '40', '44', '48', '52', '56', '60', '64', '100', '104', '108', '112', '116', '120', '124', '128', '132', '136', '140', '144', '149', '153', '157', '161' or '165'.Defaults to [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165].
channelWidth:
type: string
description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 5Ghz band
sixGhzSettings:
type: object
properties:
maxPower:
type: integer
description: Sets max power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 30.
minPower:
type: integer
description: Sets min power (dBm) of 6Ghz band. Can be integer between 2 and 30. Defaults to 8.
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of 6Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
validAutoChannels:
type: array
items:
type: integer
description: Sets valid auto channels for 6Ghz band. Can be one of '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' or '233'. Defaults to auto.
channelWidth:
type: string
description: Sets channel width (MHz) for 6Ghz band. Can be one of '0', '20', '40', '80' or '160'. Defaults to auto.
rxsop:
type: integer
description: The RX-SOP level controls the sensitivity of the radio. It is strongly recommended to use RX-SOP only after consulting a wireless expert. RX-SOP can be configured in the range of -65 to -95 (dBm). A value of null will reset this to the default.
description: Settings related to 6Ghz band. Only applicable to networks with 6Ghz capable APs
transmission:
type: object
properties:
enabled:
type: boolean
description: Toggle for radio transmission. When false, radios will not transmit at all.
description: Settings related to radio transmission.
perSsidSettings:
type: object
properties:
'0':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 0
'1':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 1
'2':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 2
'3':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 3
'4':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 4
'5':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 5
'6':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 6
'7':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 7
'8':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 8
'9':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 9
'10':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 10
'11':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 11
'12':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 12
'13':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 13
'14':
type: object
properties:
name:
type: string
description: Name of SSID
minBitrate:
type: integer
description: Sets min bitrate (Mbps) of this SSID. Can be one of '1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54'.
bandOperationMode:
type: string
enum:
- 2.4ghz
- 5ghz
- 6ghz
- dual
- multi
description: Choice between 'dual', '2.4ghz', '5ghz', '6ghz' or 'multi'.
bands:
type: object
properties:
enabled:
type: array
items:
type: string
description: List of enabled bands. Can include ["2.4", "5", "6", "disabled"]
description: Settings related to all bands
bandSteeringEnabled:
type: boolean
description: Steers client to most open band between 2.4 GHz and 5 GHz. Can be either true or false.
description: Settings for SSID 14
description: Per-SSID radio settings by number.
isIndoorDefault:
type: boolean
description: Set this profile as the default indoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
isOutdoorDefault:
type: boolean
description: Set this profile as the default outdoor rf profile. If the profile ID is one of 'indoor' or 'outdoor', then a new profile will be created from the respective ID and set as the default
example:
id: '1234'
networkId: N_24329156
name: Main Office
clientBalancingEnabled: true
minBitrateType: band
bandSelectionType: ap
apBandSettings:
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
twoFourGhzSettings:
maxPower: 30
minPower: 5
minBitrate: 11
validAutoChannels:
- 1
- 6
- 11
axEnabled: true
rxsop: -95
fiveGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
- 165
channelWidth: auto
rxsop: -95
sixGhzSettings:
maxPower: 30
minPower: 8
minBitrate: 12
validAutoChannels:
- 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
channelWidth: auto
rxsop: -95
transmission:
enabled: true
perSsidSettings:
'0':
name: SSID 0
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'1':
name: SSID 1
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'2':
name: SSID 2
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'3':
name: SSID 3
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'4':
name: SSID 4
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'5':
name: SSID 5
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'6':
name: SSID 6
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'7':
name: SSID 7
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'8':
name: SSID 8
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'9':
name: SSID 9
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'10':
name: SSID 10
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'11':
name: SSID 11
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'12':
name: SSID 12
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'13':
name: SSID 13
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
'14':
name: SSID 14
minBitrate: 11
bandOperationMode: dual
bands:
enabled:
- '2.4'
- '5'
bandSteeringEnabled: true
isIndoorDefault: false
isOutdoorDefault: false
summary: Return a RF profile
tags:
- wireless.configure
/networks/{networkId}/wireless/settings:
get:
description: Return the wireless settings for a network
operationId: getNetworkWirelessSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
meshingEnabled:
type: boolean
description: Toggle for enabling or disabling meshing in a network
ipv6BridgeEnabled:
type: boolean
description: 'Toggle for enabling or disabling IPv6 bridging in a network (Note: if enabled, SSIDs must also be configured to use bridge mode)'
locationAnalyticsEnabled:
type: boolean
description: Toggle for enabling or disabling location analytics for your network
upgradeStrategy:
type: string
enum:
- minimizeClientDowntime
- minimizeUpgradeTime
description: The default strategy that network devices will use to perform an upgrade. Requires firmware version MR 26.8 or higher.
ledLightsOn:
type: boolean
description: Toggle for enabling or disabling LED lights on all APs in the network (making them run dark)
namedVlans:
type: object
properties:
poolDhcpMonitoring:
type: object
properties:
enabled:
type: boolean
description: Whether or not devices using named VLAN pools should remove dirty VLANs from the pool, thereby preventing clients from being assigned to VLANs where they would be unable to obtain an IP address via DHCP
duration:
type: integer
description: The duration in minutes that devices will refrain from using dirty VLANs before adding them back to the pool.
description: Named VLAN Pool DHCP Monitoring settings.
description: Named VLAN settings for wireless networks.
regulatoryDomain:
type: object
properties:
name:
type: string
description: The name of the regulatory domain for this network.
countryCode:
type: string
description: The country code of the regulatory domain.
permits6e:
type: boolean
description: Whether or not the regulatory domain for this network permits Wifi 6E.
description: Regulatory domain information for this network.
example:
meshingEnabled: true
ipv6BridgeEnabled: false
locationAnalyticsEnabled: false
upgradeStrategy: minimizeUpgradeTime
ledLightsOn: false
namedVlans:
poolDhcpMonitoring:
enabled: true
duration: 5
regulatoryDomain:
name: FCC
countryCode: US
permits6e: true
summary: Return the wireless settings for a network
tags:
- wireless.configure
put:
description: Update the wireless settings for a network
operationId: updateNetworkWirelessSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
meshingEnabled:
type: boolean
description: Toggle for enabling or disabling meshing in a network
ipv6BridgeEnabled:
type: boolean
description: 'Toggle for enabling or disabling IPv6 bridging in a network (Note: if enabled, SSIDs must also be configured to use bridge mode)'
locationAnalyticsEnabled:
type: boolean
description: Toggle for enabling or disabling location analytics for your network
upgradeStrategy:
type: string
enum:
- minimizeClientDowntime
- minimizeUpgradeTime
description: The default strategy that network devices will use to perform an upgrade. Requires firmware version MR 26.8 or higher.
ledLightsOn:
type: boolean
description: Toggle for enabling or disabling LED lights on all APs in the network (making them run dark)
namedVlans:
type: object
properties:
poolDhcpMonitoring:
type: object
properties:
enabled:
type: boolean
description: Whether or not devices using named VLAN pools should remove dirty VLANs from the pool, thereby preventing clients from being assigned to VLANs where they would be unable to obtain an IP address via DHCP.
duration:
type: integer
description: The duration in minutes that devices will refrain from using dirty VLANs before adding them back to the pool.
description: Named VLAN Pool DHCP Monitoring settings.
description: Named VLAN settings for wireless networks.
example:
meshingEnabled: true
ipv6BridgeEnabled: false
locationAnalyticsEnabled: false
upgradeStrategy: minimizeUpgradeTime
ledLightsOn: false
namedVlans:
poolDhcpMonitoring:
enabled: true
duration: 5
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
meshingEnabled:
type: boolean
description: Toggle for enabling or disabling meshing in a network
ipv6BridgeEnabled:
type: boolean
description: 'Toggle for enabling or disabling IPv6 bridging in a network (Note: if enabled, SSIDs must also be configured to use bridge mode)'
locationAnalyticsEnabled:
type: boolean
description: Toggle for enabling or disabling location analytics for your network
upgradeStrategy:
type: string
enum:
- minimizeClientDowntime
- minimizeUpgradeTime
description: The default strategy that network devices will use to perform an upgrade. Requires firmware version MR 26.8 or higher.
ledLightsOn:
type: boolean
description: Toggle for enabling or disabling LED lights on all APs in the network (making them run dark)
namedVlans:
type: object
properties:
poolDhcpMonitoring:
type: object
properties:
enabled:
type: boolean
description: Whether or not devices using named VLAN pools should remove dirty VLANs from the pool, thereby preventing clients from being assigned to VLANs where they would be unable to obtain an IP address via DHCP
duration:
type: integer
description: The duration in minutes that devices will refrain from using dirty VLANs before adding them back to the pool.
description: Named VLAN Pool DHCP Monitoring settings.
description: Named VLAN settings for wireless networks.
regulatoryDomain:
type: object
properties:
name:
type: string
description: The name of the regulatory domain for this network.
countryCode:
type: string
description: The country code of the regulatory domain.
permits6e:
type: boolean
description: Whether or not the regulatory domain for this network permits Wifi 6E.
description: Regulatory domain information for this network.
example:
meshingEnabled: true
ipv6BridgeEnabled: false
locationAnalyticsEnabled: false
upgradeStrategy: minimizeUpgradeTime
ledLightsOn: false
namedVlans:
poolDhcpMonitoring:
enabled: true
duration: 5
regulatoryDomain:
name: FCC
countryCode: US
permits6e: true
summary: Update the wireless settings for a network
tags:
- wireless.configure
/networks/{networkId}/wireless/signalQualityHistory:
get:
description: Return signal quality (SNR/RSSI) over time for a device or network client
operationId: getNetworkWirelessSignalQualityHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 300, 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag; either :clientId or :deviceSerial must be jointly specified.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID number.
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
snr:
type: integer
description: Signal to noise ratio
rssi:
type: integer
description: Received signal strength indicator
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
snr: 27
rssi: -77
summary: Return signal quality (SNR/RSSI) over time for a device or network client
tags:
- wireless.monitor
/networks/{networkId}/wireless/ssids:
get:
description: List the MR SSIDs in a network
operationId: getNetworkWirelessSsids
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
number:
type: integer
description: Unique identifier of the SSID
name:
type: string
description: The name of the SSID
enabled:
type: boolean
description: Whether or not the SSID is enabled
splashPage:
type: string
enum:
- Billing
- Cisco ISE
- Click-through splash page
- Facebook Wi-Fi
- Google Apps domain
- Google OAuth
- Microsoft Entra ID
- None
- Password-protected with Active Directory
- Password-protected with LDAP
- Password-protected with Meraki RADIUS
- Password-protected with custom RADIUS
- SMS authentication
- Sponsored guest
- Systems Manager Sentry
description: The type of splash page for the SSID
ssidAdminAccessible:
type: boolean
description: SSID Administrator access status
localAuth:
type: boolean
description: Extended local auth flag for Enterprise NAC
authMode:
type: string
enum:
- 8021x-entra
- 8021x-google
- 8021x-localradius
- 8021x-meraki
- 8021x-nac
- 8021x-radius
- ipsk-with-nac
- ipsk-with-radius
- ipsk-without-radius
- open
- open-enhanced
- open-with-nac
- open-with-radius
- psk
description: The association control method for the SSID
encryptionMode:
type: string
enum:
- wep
- wpa
description: The psk encryption mode for the SSID
wpaEncryptionMode:
type: string
enum:
- WPA1 and WPA2
- WPA1 only
- WPA2 only
- WPA3 192-bit Security
- WPA3 Transition Mode
- WPA3 only
description: The types of WPA encryption
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your RADIUS server
port:
type: integer
description: UDP port the RADIUS server listens on for Access-requests
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS 802.1X servers to be used for authentication
radiusAccountingServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) to which the APs will send RADIUS accounting messages
port:
type: integer
description: Port on the RADIUS server that is listening for accounting messages
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS accounting 802.1X servers to be used for authentication
radiusAccountingEnabled:
type: boolean
description: Whether or not RADIUS accounting is enabled
radiusEnabled:
type: boolean
description: Whether RADIUS authentication is enabled
radiusAttributeForGroupPolicies:
type: string
enum:
- Airespace-ACL-Name
- Aruba-User-Role
- Filter-Id
- Reply-Message
description: RADIUS attribute used to look up group policies
radiusFailoverPolicy:
type: string
enum:
- Allow access
- Deny access
description: Policy which determines how authentication requests should be handled in the event that all of the configured RADIUS servers are unreachable
radiusLoadBalancingPolicy:
type: string
enum:
- Round robin
- Strict priority order
description: Policy which determines which RADIUS server will be contacted first in an authentication attempt, and the ordering of any necessary retry attempts
ipAssignmentMode:
type: string
enum:
- Bridge mode
- Ethernet over GRE
- Layer 3 roaming
- Layer 3 roaming with a concentrator
- NAT mode
- VPN
description: The client IP assignment mode
adminSplashUrl:
type: string
description: URL for the admin splash page
splashTimeout:
type: string
description: Splash page timeout
walledGardenEnabled:
type: boolean
description: Allow users to access a configurable list of IP ranges prior to sign-on
walledGardenRanges:
type: array
items:
type: string
description: Domain names and IP address ranges available in Walled Garden mode
minBitrate:
type: integer
description: The minimum bitrate in Mbps of this SSID in the default indoor RF profile
bandSelection:
type: string
enum:
- 5 GHz band only
- Dual band operation
- Dual band operation with Band Steering
description: The client-serving radio frequencies of this SSID in the default indoor RF profile
perClientBandwidthLimitUp:
type: integer
description: The upload bandwidth limit in Kbps. (0 represents no limit.)
perClientBandwidthLimitDown:
type: integer
description: The download bandwidth limit in Kbps. (0 represents no limit.)
visible:
type: boolean
description: Whether the SSID is advertised or hidden by the AP
availableOnAllAps:
type: boolean
description: Whether all APs broadcast the SSID or if it's restricted to APs matching any availability tags
availabilityTags:
type: array
items:
type: string
description: List of tags for this SSID. If availableOnAllAps is false, then the SSID is only broadcast by APs with tags matching any of the tags in this list
perSsidBandwidthLimitUp:
type: integer
description: The total upload bandwidth limit in Kbps (0 represents no limit)
perSsidBandwidthLimitDown:
type: integer
description: The total download bandwidth limit in Kbps (0 represents no limit)
mandatoryDhcpEnabled:
type: boolean
description: Whether clients connecting to this SSID must use the IP address assigned by the DHCP server
example:
- number: 0
name: My SSID
enabled: true
splashPage: Click-through splash page
ssidAdminAccessible: false
localAuth: false
authMode: 8021x-radius
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
radiusServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingEnabled: false
radiusEnabled: true
radiusAttributeForGroupPolicies: Filter-Id
radiusFailoverPolicy: Deny access
radiusLoadBalancingPolicy: Round robin
ipAssignmentMode: NAT mode
adminSplashUrl: http://example.com
splashTimeout: 30 minutes
walledGardenEnabled: true
walledGardenRanges:
- example.com
- 1.1.1.1/32
minBitrate: 11
bandSelection: 5 GHz band only
perClientBandwidthLimitUp: 0
perClientBandwidthLimitDown: 0
visible: true
availableOnAllAps: false
availabilityTags:
- tag1
- tag2
perSsidBandwidthLimitUp: 0
perSsidBandwidthLimitDown: 0
mandatoryDhcpEnabled: false
summary: List the MR SSIDs in a network
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}:
get:
description: Return a single MR SSID
operationId: getNetworkWirelessSsid
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: Unique identifier of the SSID
name:
type: string
description: The name of the SSID
enabled:
type: boolean
description: Whether or not the SSID is enabled
splashPage:
type: string
enum:
- Billing
- Cisco ISE
- Click-through splash page
- Facebook Wi-Fi
- Google Apps domain
- Google OAuth
- Microsoft Entra ID
- None
- Password-protected with Active Directory
- Password-protected with LDAP
- Password-protected with Meraki RADIUS
- Password-protected with custom RADIUS
- SMS authentication
- Sponsored guest
- Systems Manager Sentry
description: The type of splash page for the SSID
ssidAdminAccessible:
type: boolean
description: SSID Administrator access status
localAuth:
type: boolean
description: Extended local auth flag for Enterprise NAC
authMode:
type: string
enum:
- 8021x-entra
- 8021x-google
- 8021x-localradius
- 8021x-meraki
- 8021x-nac
- 8021x-radius
- ipsk-with-nac
- ipsk-with-radius
- ipsk-without-radius
- open
- open-enhanced
- open-with-nac
- open-with-radius
- psk
description: The association control method for the SSID
encryptionMode:
type: string
enum:
- wep
- wpa
description: The psk encryption mode for the SSID
wpaEncryptionMode:
type: string
enum:
- WPA1 and WPA2
- WPA1 only
- WPA2 only
- WPA3 192-bit Security
- WPA3 Transition Mode
- WPA3 only
description: The types of WPA encryption
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your RADIUS server
port:
type: integer
description: UDP port the RADIUS server listens on for Access-requests
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS 802.1X servers to be used for authentication
radiusAccountingServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) to which the APs will send RADIUS accounting messages
port:
type: integer
description: Port on the RADIUS server that is listening for accounting messages
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS accounting 802.1X servers to be used for authentication
radiusAccountingEnabled:
type: boolean
description: Whether or not RADIUS accounting is enabled
radiusEnabled:
type: boolean
description: Whether RADIUS authentication is enabled
radiusAttributeForGroupPolicies:
type: string
enum:
- Airespace-ACL-Name
- Aruba-User-Role
- Filter-Id
- Reply-Message
description: RADIUS attribute used to look up group policies
radiusFailoverPolicy:
type: string
enum:
- Allow access
- Deny access
description: Policy which determines how authentication requests should be handled in the event that all of the configured RADIUS servers are unreachable
radiusLoadBalancingPolicy:
type: string
enum:
- Round robin
- Strict priority order
description: Policy which determines which RADIUS server will be contacted first in an authentication attempt, and the ordering of any necessary retry attempts
ipAssignmentMode:
type: string
enum:
- Bridge mode
- Ethernet over GRE
- Layer 3 roaming
- Layer 3 roaming with a concentrator
- NAT mode
- VPN
description: The client IP assignment mode
adminSplashUrl:
type: string
description: URL for the admin splash page
splashTimeout:
type: string
description: Splash page timeout
walledGardenEnabled:
type: boolean
description: Allow users to access a configurable list of IP ranges prior to sign-on
walledGardenRanges:
type: array
items:
type: string
description: Domain names and IP address ranges available in Walled Garden mode
minBitrate:
type: integer
description: The minimum bitrate in Mbps of this SSID in the default indoor RF profile
bandSelection:
type: string
enum:
- 5 GHz band only
- Dual band operation
- Dual band operation with Band Steering
description: The client-serving radio frequencies of this SSID in the default indoor RF profile
perClientBandwidthLimitUp:
type: integer
description: The upload bandwidth limit in Kbps. (0 represents no limit.)
perClientBandwidthLimitDown:
type: integer
description: The download bandwidth limit in Kbps. (0 represents no limit.)
visible:
type: boolean
description: Whether the SSID is advertised or hidden by the AP
availableOnAllAps:
type: boolean
description: Whether all APs broadcast the SSID or if it's restricted to APs matching any availability tags
availabilityTags:
type: array
items:
type: string
description: List of tags for this SSID. If availableOnAllAps is false, then the SSID is only broadcast by APs with tags matching any of the tags in this list
perSsidBandwidthLimitUp:
type: integer
description: The total upload bandwidth limit in Kbps (0 represents no limit)
perSsidBandwidthLimitDown:
type: integer
description: The total download bandwidth limit in Kbps (0 represents no limit)
mandatoryDhcpEnabled:
type: boolean
description: Whether clients connecting to this SSID must use the IP address assigned by the DHCP server
example:
number: 0
name: My SSID
enabled: true
splashPage: Click-through splash page
ssidAdminAccessible: false
localAuth: false
authMode: 8021x-radius
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
radiusServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingEnabled: false
radiusEnabled: true
radiusAttributeForGroupPolicies: Filter-Id
radiusFailoverPolicy: Deny access
radiusLoadBalancingPolicy: Round robin
ipAssignmentMode: NAT mode
adminSplashUrl: http://example.com
splashTimeout: 30 minutes
walledGardenEnabled: true
walledGardenRanges:
- example.com
- 1.1.1.1/32
minBitrate: 11
bandSelection: 5 GHz band only
perClientBandwidthLimitUp: 0
perClientBandwidthLimitDown: 0
visible: true
availableOnAllAps: false
availabilityTags:
- tag1
- tag2
perSsidBandwidthLimitUp: 0
perSsidBandwidthLimitDown: 0
mandatoryDhcpEnabled: false
summary: Return a single MR SSID
tags:
- wireless.configure
put:
description: Update the attributes of an MR SSID
operationId: updateNetworkWirelessSsid
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the SSID
enabled:
type: boolean
description: Whether or not the SSID is enabled
authMode:
type: string
enum:
- 8021x-entra
- 8021x-google
- 8021x-localradius
- 8021x-meraki
- 8021x-nac
- 8021x-radius
- ipsk-with-nac
- ipsk-with-radius
- ipsk-without-radius
- open
- open-enhanced
- open-with-nac
- open-with-radius
- psk
description: The association control method for the SSID ('open', 'open-enhanced', 'psk', 'open-with-radius', 'open-with-nac', '8021x-meraki', '8021x-nac', '8021x-radius', '8021x-google', '8021x-entra', '8021x-localradius', 'ipsk-with-radius', 'ipsk-without-radius' or 'ipsk-with-nac')
enterpriseAdminAccess:
type: string
enum:
- access disabled
- access enabled
description: Whether or not an SSID is accessible by 'enterprise' administrators ('access disabled' or 'access enabled')
encryptionMode:
type: string
enum:
- open
- wep
- wpa
- wpa-eap
description: The psk encryption mode for the SSID ('wep' or 'wpa'). This param is only valid if the authMode is 'psk'
psk:
type: string
description: The passkey for the SSID. This param is only valid if the authMode is 'psk'
wpaEncryptionMode:
type: string
enum:
- WPA1 and WPA2
- WPA1 only
- WPA2 only
- WPA3 192-bit Security
- WPA3 Transition Mode
- WPA3 only
description: The types of WPA encryption. ('WPA1 only', 'WPA1 and WPA2', 'WPA2 only', 'WPA3 Transition Mode', 'WPA3 only' or 'WPA3 192-bit Security')
dot11w:
type: object
properties:
enabled:
type: boolean
description: Whether 802.11w is enabled or not.
required:
type: boolean
description: (Optional) Whether 802.11w is required or not.
description: The current setting for Protected Management Frames (802.11w).
dot11r:
type: object
properties:
enabled:
type: boolean
description: Whether 802.11r is enabled or not.
adaptive:
type: boolean
description: (Optional) Whether 802.11r is adaptive or not.
description: The current setting for 802.11r
splashPage:
type: string
enum:
- Billing
- Cisco ISE
- Click-through splash page
- Facebook Wi-Fi
- Google Apps domain
- Google OAuth
- Microsoft Entra ID
- None
- Password-protected with Active Directory
- Password-protected with LDAP
- Password-protected with Meraki RADIUS
- Password-protected with custom RADIUS
- SMS authentication
- Sponsored guest
- Systems Manager Sentry
description: The type of splash page for the SSID ('None', 'Click-through splash page', 'Billing', 'Password-protected with Meraki RADIUS', 'Password-protected with custom RADIUS', 'Password-protected with Active Directory', 'Password-protected with LDAP', 'SMS authentication', 'Systems Manager Sentry', 'Facebook Wi-Fi', 'Google OAuth', 'Microsoft Entra ID', 'Sponsored guest', 'Cisco ISE' or 'Google Apps domain'). This attribute is not supported for template children.
splashGuestSponsorDomains:
type: array
items:
type: string
description: Array of valid sponsor email domains for sponsored guest splash type.
oauth:
type: object
properties:
allowedDomains:
type: array
items:
type: string
description: (Optional) The list of domains allowed access to the network.
description: The OAuth settings of this SSID. Only valid if splashPage is 'Google OAuth'.
localRadius:
type: object
properties:
cacheTimeout:
type: integer
description: The duration (in seconds) for which LDAP and OCSP lookups are cached.
passwordAuthentication:
type: object
properties:
enabled:
type: boolean
description: Whether or not to use EAP-TTLS/PAP or PEAP-GTC password-based authentication via LDAP lookup.
description: The current setting for password-based authentication.
certificateAuthentication:
type: object
properties:
enabled:
type: boolean
description: Whether or not to use EAP-TLS certificate-based authentication to validate wireless clients.
useLdap:
type: boolean
description: Whether or not to verify the certificate with LDAP.
useOcsp:
type: boolean
description: Whether or not to verify the certificate with OCSP.
ocspResponderUrl:
type: string
description: (Optional) The URL of the OCSP responder to verify client certificate status.
clientRootCaCertificate:
type: object
properties:
contents:
type: string
description: The contents of the Client CA Certificate. Must be in PEM or DER format.
description: The Client CA Certificate used to sign the client certificate.
description: The current setting for certificate verification.
description: The current setting for Local Authentication, a built-in RADIUS server on the access point. Only valid if authMode is '8021x-localradius'.
ldap:
type: object
properties:
servers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your LDAP server.
port:
type: integer
description: UDP port the LDAP server listens on.
required:
- host
- port
description: The LDAP servers to be used for authentication.
credentials:
type: object
properties:
distinguishedName:
type: string
description: 'The distinguished name of the LDAP user account (example: cn=user,dc=meraki,dc=com).'
password:
type: string
description: The password of the LDAP user account.
description: (Optional) The credentials of the user account to be used by the AP to bind to your LDAP server. The LDAP account should have permissions on all your LDAP servers.
baseDistinguishedName:
type: string
description: The base distinguished name of users on the LDAP server.
serverCaCertificate:
type: object
properties:
contents:
type: string
description: The contents of the CA certificate. Must be in PEM or DER format.
description: The CA certificate used to sign the LDAP server's key.
description: The current setting for LDAP. Only valid if splashPage is 'Password-protected with LDAP'.
activeDirectory:
type: object
properties:
servers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your Active Directory server.
port:
type: integer
description: (Optional) UDP port the Active Directory server listens on. By default, uses port 3268.
required:
- host
description: The Active Directory servers to be used for authentication.
credentials:
type: object
properties:
logonName:
type: string
description: The logon name of the Active Directory account.
password:
type: string
description: The password to the Active Directory user account.
description: (Optional) The credentials of the user account to be used by the AP to bind to your Active Directory server. The Active Directory account should have permissions on all your Active Directory servers. Only valid if the splashPage is 'Password-protected with Active Directory'.
description: The current setting for Active Directory. Only valid if splashPage is 'Password-protected with Active Directory'
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your RADIUS server
port:
type: integer
description: UDP port the RADIUS server listens on for Access-requests
secret:
type: string
description: RADIUS client shared secret
radsecEnabled:
type: boolean
description: Use RADSEC (TLS over TCP) to connect to this RADIUS server. Requires radiusProxyEnabled.
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server.
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
required:
- host
description: The RADIUS 802.1X servers to be used for authentication. This param is only valid if the authMode is 'open-with-radius', '8021x-radius' or 'ipsk-with-radius'
radiusProxyEnabled:
type: boolean
description: If true, Meraki devices will proxy RADIUS messages through the Meraki cloud to the configured RADIUS auth and accounting servers.
radiusTestingEnabled:
type: boolean
description: If true, Meraki devices will periodically send Access-Request messages to configured RADIUS servers using identity 'meraki_8021x_test' to ensure that the RADIUS servers are reachable.
radiusCalledStationId:
type: string
description: The template of the called station identifier to be used for RADIUS (ex. $NODE_MAC$:$VAP_NUM$).
radiusAuthenticationNasId:
type: string
description: The template of the NAS identifier to be used for RADIUS authentication (ex. $NODE_MAC$:$VAP_NUM$).
radiusServerTimeout:
type: integer
description: The amount of time for which a RADIUS client waits for a reply from the RADIUS server (must be between 1-10 seconds).
radiusServerAttemptsLimit:
type: integer
description: The maximum number of transmit attempts after which a RADIUS server is failed over (must be between 1-5).
radiusFallbackEnabled:
type: boolean
description: Whether or not higher priority RADIUS servers should be retried after 60 seconds.
radiusRadsec:
type: object
properties:
tlsTunnel:
type: object
properties:
timeout:
type: integer
description: The interval (in seconds) to determines how long a TLS session can remain idle for a RADSec server before it is automatically terminated
description: RADSec TLS tunnel settings
x-release-stage: general_availability
description: The current settings for RADIUS RADSec
radiusCoaEnabled:
type: boolean
description: If true, Meraki devices will act as a RADIUS Dynamic Authorization Server and will respond to RADIUS Change-of-Authorization and Disconnect messages sent by the RADIUS server.
radiusFailoverPolicy:
type: string
enum:
- Allow access
- Deny access
description: This policy determines how authentication requests should be handled in the event that all of the configured RADIUS servers are unreachable ('Deny access' or 'Allow access')
radiusLoadBalancingPolicy:
type: string
enum:
- Round robin
- Strict priority order
description: This policy determines which RADIUS server will be contacted first in an authentication attempt and the ordering of any necessary retry attempts ('Strict priority order' or 'Round robin')
radiusAccountingEnabled:
type: boolean
description: Whether or not RADIUS accounting is enabled. This param is only valid if the authMode is 'open-with-radius', '8021x-radius' or 'ipsk-with-radius'
radiusAccountingServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) to which the APs will send RADIUS accounting messages
port:
type: integer
description: Port on the RADIUS server that is listening for accounting messages
secret:
type: string
description: Shared key used to authenticate messages between the APs and RADIUS server
radsecEnabled:
type: boolean
description: Use RADSEC (TLS over TCP) to connect to this RADIUS accounting server. Requires radiusProxyEnabled.
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
required:
- host
description: The RADIUS accounting 802.1X servers to be used for authentication. This param is only valid if the authMode is 'open-with-radius', '8021x-radius' or 'ipsk-with-radius' and radiusAccountingEnabled is 'true'
radiusAccountingInterimInterval:
type: integer
description: The interval (in seconds) in which accounting information is updated and sent to the RADIUS accounting server.
radiusAttributeForGroupPolicies:
type: string
enum:
- Airespace-ACL-Name
- Aruba-User-Role
- Filter-Id
- Reply-Message
description: Specify the RADIUS attribute used to look up group policies ('Filter-Id', 'Reply-Message', 'Airespace-ACL-Name' or 'Aruba-User-Role'). Access points must receive this attribute in the RADIUS Access-Accept message
ipAssignmentMode:
type: string
description: The client IP assignment mode ('NAT mode', 'Bridge mode', 'Layer 3 roaming', 'Ethernet over GRE', 'Layer 3 roaming with a concentrator' or 'VPN')
useVlanTagging:
type: boolean
description: Whether or not traffic should be directed to use specific VLANs. This param is only valid if the ipAssignmentMode is 'Bridge mode' or 'Layer 3 roaming'
concentratorNetworkId:
type: string
description: The concentrator to use when the ipAssignmentMode is 'Layer 3 roaming with a concentrator' or 'VPN'.
secondaryConcentratorNetworkId:
type: string
description: The secondary concentrator to use when the ipAssignmentMode is 'VPN'. If configured, the APs will switch to using this concentrator if the primary concentrator is unreachable. This param is optional. ('disabled' represents no secondary concentrator.)
disassociateClientsOnVpnFailover:
type: boolean
description: Disassociate clients when 'VPN' concentrator failover occurs in order to trigger clients to re-associate and generate new DHCP requests. This param is only valid if ipAssignmentMode is 'VPN'.
vlanId:
type: integer
description: The VLAN ID used for VLAN tagging. This param is only valid when the ipAssignmentMode is 'Layer 3 roaming with a concentrator' or 'VPN'
defaultVlanId:
type: integer
description: The default VLAN ID used for 'all other APs'. This param is only valid when the ipAssignmentMode is 'Bridge mode' or 'Layer 3 roaming'
apTagsAndVlanIds:
type: array
items:
type: object
properties:
tags:
type: array
items:
type: string
description: Array of AP tags
vlanId:
type: integer
description: Numerical identifier that is assigned to the VLAN
description: The list of tags and VLAN IDs used for VLAN tagging. This param is only valid when the ipAssignmentMode is 'Bridge mode' or 'Layer 3 roaming'
walledGardenEnabled:
type: boolean
description: Allow access to a configurable list of IP ranges, which users may access prior to sign-on.
walledGardenRanges:
type: array
items:
type: string
description: Specify your walled garden by entering an array of addresses, ranges using CIDR notation, domain names, and domain wildcards (e.g. '192.168.1.1/24', '192.168.37.10/32', 'www.yahoo.com', '*.google.com']). Meraki's splash page is automatically included in your walled garden.
gre:
type: object
properties:
concentrator:
type: object
properties:
host:
type: string
description: The EoGRE concentrator's IP or FQDN. This param is required when ipAssignmentMode is 'Ethernet over GRE'.
required:
- host
description: The EoGRE concentrator's settings
key:
type: integer
description: Optional numerical identifier that will add the GRE key field to the GRE header. Used to identify an individual traffic flow within a tunnel.
description: Ethernet over GRE settings
radiusOverride:
type: boolean
description: If true, the RADIUS response can override VLAN tag. This is not valid when ipAssignmentMode is 'NAT mode'.
radiusGuestVlanEnabled:
type: boolean
description: Whether or not RADIUS Guest VLAN is enabled. This param is only valid if the authMode is 'open-with-radius' and addressing mode is not set to 'isolated' or 'nat' mode
radiusGuestVlanId:
type: integer
description: VLAN ID of the RADIUS Guest VLAN. This param is only valid if the authMode is 'open-with-radius' and addressing mode is not set to 'isolated' or 'nat' mode
minBitrate:
type: number
format: float
description: The minimum bitrate in Mbps of this SSID in the default indoor RF profile. ('1', '2', '5.5', '6', '9', '11', '12', '18', '24', '36', '48' or '54')
bandSelection:
type: string
description: The client-serving radio frequencies of this SSID in the default indoor RF profile. ('Dual band operation', '5 GHz band only' or 'Dual band operation with Band Steering')
perClientBandwidthLimitUp:
type: integer
description: The upload bandwidth limit in Kbps. (0 represents no limit.)
perClientBandwidthLimitDown:
type: integer
description: The download bandwidth limit in Kbps. (0 represents no limit.)
perSsidBandwidthLimitUp:
type: integer
description: The total upload bandwidth limit in Kbps. (0 represents no limit.)
perSsidBandwidthLimitDown:
type: integer
description: The total download bandwidth limit in Kbps. (0 represents no limit.)
lanIsolationEnabled:
type: boolean
description: Boolean indicating whether Layer 2 LAN isolation should be enabled or disabled. Only configurable when ipAssignmentMode is 'Bridge mode'.
visible:
type: boolean
description: Boolean indicating whether APs should advertise or hide this SSID. APs will only broadcast this SSID if set to true
availableOnAllAps:
type: boolean
description: Boolean indicating whether all APs should broadcast the SSID or if it should be restricted to APs matching any availability tags. Can only be false if the SSID has availability tags.
availabilityTags:
type: array
items:
type: string
description: Accepts a list of tags for this SSID. If availableOnAllAps is false, then the SSID will only be broadcast by APs with tags matching any of the tags in this list.
mandatoryDhcpEnabled:
type: boolean
description: If true, Mandatory DHCP will enforce that clients connecting to this SSID must use the IP address assigned by the DHCP server. Clients who use a static IP address won't be able to associate.
adultContentFilteringEnabled:
type: boolean
description: Boolean indicating whether or not adult content will be blocked
dnsRewrite:
type: object
properties:
enabled:
type: boolean
description: Boolean indicating whether or not DNS server rewrite is enabled. If disabled, upstream DNS will be used
dnsCustomNameservers:
type: array
items:
type: string
description: User specified DNS servers (up to two servers)
description: DNS servers rewrite settings
speedBurst:
type: object
properties:
enabled:
type: boolean
description: Boolean indicating whether or not to allow users to temporarily exceed the bandwidth limit for short periods while still keeping them under the bandwidth limit over time.
description: The SpeedBurst setting for this SSID'
namedVlans:
type: object
properties:
tagging:
type: object
properties:
enabled:
type: boolean
description: Whether or not traffic should be directed to use specific VLAN names.
defaultVlanName:
type: string
description: The default VLAN name used to tag traffic in the absence of a matching AP tag.
byApTags:
type: array
items:
type: object
properties:
tags:
type: array
items:
type: string
description: List of AP tags.
vlanName:
type: string
description: VLAN name that will be used to tag traffic.
description: The list of AP tags and VLAN names used for named VLAN tagging. If an AP has a tag matching one in the list, then traffic on this SSID will be directed to use the VLAN name associated to the tag.
description: VLAN tagging settings. This param is only valid when ipAssignmentMode is 'Bridge mode' or 'Layer 3 roaming'.
radius:
type: object
properties:
guestVlan:
type: object
properties:
enabled:
type: boolean
description: Whether or not RADIUS guest named VLAN is enabled.
name:
type: string
description: RADIUS guest VLAN name.
description: Guest VLAN settings. Used to direct traffic to a guest VLAN when none of the RADIUS servers are reachable or a client receives access-reject from the RADIUS server.
description: RADIUS settings. This param is only valid when authMode is 'open-with-radius' and ipAssignmentMode is not 'NAT mode'.
description: Named VLAN settings.
example:
name: My SSID
enabled: true
authMode: 8021x-radius
enterpriseAdminAccess: access enabled
encryptionMode: wpa
psk: deadbeef
wpaEncryptionMode: WPA2 only
dot11w:
enabled: true
required: false
dot11r:
enabled: true
adaptive: true
splashPage: Click-through splash page
splashGuestSponsorDomains:
- example.com
oauth:
allowedDomains:
- example.com
localRadius:
cacheTimeout: 60
passwordAuthentication:
enabled: false
certificateAuthentication:
enabled: true
useLdap: false
useOcsp: true
ocspResponderUrl: http://ocsp-server.example.com
clientRootCaCertificate:
contents: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
ldap:
servers:
- host: 127.0.0.1
port: 389
credentials:
distinguishedName: cn=user,dc=example,dc=com
password: password
baseDistinguishedName: dc=example,dc=com
serverCaCertificate:
contents: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
activeDirectory:
servers:
- host: 127.0.0.1
port: 3268
credentials:
logonName: user
password: password
radiusServers:
- host: 0.0.0.0
port: 3000
secret: secret-string
radsecEnabled: true
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusProxyEnabled: false
radiusTestingEnabled: true
radiusCalledStationId: 00-11-22-33-44-55:AP1
radiusAuthenticationNasId: 00-11-22-33-44-55:AP1
radiusServerTimeout: 5
radiusServerAttemptsLimit: 5
radiusFallbackEnabled: true
radiusRadsec:
tlsTunnel:
timeout: 600
radiusCoaEnabled: true
radiusFailoverPolicy: Deny access
radiusLoadBalancingPolicy: Round robin
radiusAccountingEnabled: true
radiusAccountingServers:
- host: 0.0.0.0
port: 3000
secret: secret-string
radsecEnabled: true
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingInterimInterval: 5
radiusAttributeForGroupPolicies: Filter-Id
ipAssignmentMode: NAT mode
useVlanTagging: false
concentratorNetworkId: N_24329156
secondaryConcentratorNetworkId: disabled
disassociateClientsOnVpnFailover: false
vlanId: 10
defaultVlanId: 1
apTagsAndVlanIds:
- tags:
- tag1
- tag2
vlanId: 100
walledGardenEnabled: true
walledGardenRanges:
- example.com
- 1.1.1.1/32
gre:
concentrator:
host: 192.168.1.1
key: 5
radiusOverride: false
radiusGuestVlanEnabled: true
radiusGuestVlanId: 1
minBitrate: 5.5
bandSelection: 5 GHz band only
perClientBandwidthLimitUp: 0
perClientBandwidthLimitDown: 0
perSsidBandwidthLimitUp: 0
perSsidBandwidthLimitDown: 0
lanIsolationEnabled: true
visible: true
availableOnAllAps: false
availabilityTags:
- tag1
- tag2
mandatoryDhcpEnabled: false
adultContentFilteringEnabled: false
dnsRewrite:
enabled: true
dnsCustomNameservers:
- 8.8.8.8
- 8.8.4.4
speedBurst:
enabled: true
namedVlans:
tagging:
enabled: true
defaultVlanName: My VLAN
byApTags:
- tags:
- tag1
- tag2
vlanName: My VLAN
radius:
guestVlan:
enabled: true
name: Guest VLAN
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
number:
type: integer
description: Unique identifier of the SSID
name:
type: string
description: The name of the SSID
enabled:
type: boolean
description: Whether or not the SSID is enabled
splashPage:
type: string
enum:
- Billing
- Cisco ISE
- Click-through splash page
- Facebook Wi-Fi
- Google Apps domain
- Google OAuth
- Microsoft Entra ID
- None
- Password-protected with Active Directory
- Password-protected with LDAP
- Password-protected with Meraki RADIUS
- Password-protected with custom RADIUS
- SMS authentication
- Sponsored guest
- Systems Manager Sentry
description: The type of splash page for the SSID
ssidAdminAccessible:
type: boolean
description: SSID Administrator access status
localAuth:
type: boolean
description: Extended local auth flag for Enterprise NAC
authMode:
type: string
enum:
- 8021x-entra
- 8021x-google
- 8021x-localradius
- 8021x-meraki
- 8021x-nac
- 8021x-radius
- ipsk-with-nac
- ipsk-with-radius
- ipsk-without-radius
- open
- open-enhanced
- open-with-nac
- open-with-radius
- psk
description: The association control method for the SSID
encryptionMode:
type: string
enum:
- wep
- wpa
description: The psk encryption mode for the SSID
wpaEncryptionMode:
type: string
enum:
- WPA1 and WPA2
- WPA1 only
- WPA2 only
- WPA3 192-bit Security
- WPA3 Transition Mode
- WPA3 only
description: The types of WPA encryption
radiusServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) of your RADIUS server
port:
type: integer
description: UDP port the RADIUS server listens on for Access-requests
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS 802.1X servers to be used for authentication
radiusAccountingServers:
type: array
items:
type: object
properties:
host:
type: string
description: IP address (or FQDN) to which the APs will send RADIUS accounting messages
port:
type: integer
description: Port on the RADIUS server that is listening for accounting messages
openRoamingCertificateId:
type: integer
description: The ID of the Openroaming Certificate attached to radius server
caCertificate:
type: string
description: Certificate used for authorization for the RADSEC Server
description: List of RADIUS accounting 802.1X servers to be used for authentication
radiusAccountingEnabled:
type: boolean
description: Whether or not RADIUS accounting is enabled
radiusEnabled:
type: boolean
description: Whether RADIUS authentication is enabled
radiusAttributeForGroupPolicies:
type: string
enum:
- Airespace-ACL-Name
- Aruba-User-Role
- Filter-Id
- Reply-Message
description: RADIUS attribute used to look up group policies
radiusFailoverPolicy:
type: string
enum:
- Allow access
- Deny access
description: Policy which determines how authentication requests should be handled in the event that all of the configured RADIUS servers are unreachable
radiusLoadBalancingPolicy:
type: string
enum:
- Round robin
- Strict priority order
description: Policy which determines which RADIUS server will be contacted first in an authentication attempt, and the ordering of any necessary retry attempts
ipAssignmentMode:
type: string
enum:
- Bridge mode
- Ethernet over GRE
- Layer 3 roaming
- Layer 3 roaming with a concentrator
- NAT mode
- VPN
description: The client IP assignment mode
adminSplashUrl:
type: string
description: URL for the admin splash page
splashTimeout:
type: string
description: Splash page timeout
walledGardenEnabled:
type: boolean
description: Allow users to access a configurable list of IP ranges prior to sign-on
walledGardenRanges:
type: array
items:
type: string
description: Domain names and IP address ranges available in Walled Garden mode
minBitrate:
type: integer
description: The minimum bitrate in Mbps of this SSID in the default indoor RF profile
bandSelection:
type: string
enum:
- 5 GHz band only
- Dual band operation
- Dual band operation with Band Steering
description: The client-serving radio frequencies of this SSID in the default indoor RF profile
perClientBandwidthLimitUp:
type: integer
description: The upload bandwidth limit in Kbps. (0 represents no limit.)
perClientBandwidthLimitDown:
type: integer
description: The download bandwidth limit in Kbps. (0 represents no limit.)
visible:
type: boolean
description: Whether the SSID is advertised or hidden by the AP
availableOnAllAps:
type: boolean
description: Whether all APs broadcast the SSID or if it's restricted to APs matching any availability tags
availabilityTags:
type: array
items:
type: string
description: List of tags for this SSID. If availableOnAllAps is false, then the SSID is only broadcast by APs with tags matching any of the tags in this list
perSsidBandwidthLimitUp:
type: integer
description: The total upload bandwidth limit in Kbps (0 represents no limit)
perSsidBandwidthLimitDown:
type: integer
description: The total download bandwidth limit in Kbps (0 represents no limit)
mandatoryDhcpEnabled:
type: boolean
description: Whether clients connecting to this SSID must use the IP address assigned by the DHCP server
example:
number: 0
name: My SSID
enabled: true
splashPage: Click-through splash page
ssidAdminAccessible: false
localAuth: false
authMode: 8021x-radius
encryptionMode: wpa
wpaEncryptionMode: WPA2 only
radiusServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingServers:
- host: 0.0.0.0
port: 3000
openRoamingCertificateId: 2
caCertificate: |-
-----BEGIN CERTIFICATE-----
MIIEKjCCAxKgAwIBAgIRANb+lsED3eb4+6YKLFFYqEkwDQYJKoZIhvcNAQELBQAw
gYcxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMREwDwYDVQQHDAhT
YW4gSm9zZTEcMBoGA1UECgwTQ2lzY28gU3lzdGVtcywgSW5jLjESMBAGA1UECwwJ
RE5BU3BhY2VzMR4wHAYDVQQDDBVjaXNjby5vcGVucm9hbWluZy5vcmcwHhcNMjAx
MTA1MjEzMzM1WhcNMjExMTA1MjIzMzM1WjCBpDEcMBoGCgmSJomT8ixkAQETDGRu
YXNwYWNlczpVUzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMQ4wDAYDVQQKEwVD
aXNjbzEcMBoGA1UECxMTV0JBOldSSVggRW5kLUVudGl0eTE8MDoGA1UEAxMzNjQ3
MDcwNDM4NDQ5NjQxMjAwMDAuMTg4MzQuaHMuY2lzY28ub3BlbnJvYW1pbmcub3Jn
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqjP9QgRGyUO3p7SH9QK
uTq6UYK7nAyjImgS4yQxeBkyZ5f2EUkX8m/AOcewpPxxPBhjPKRwxGeX3S50ksiA
ayFomUeslR0S0Z7RN9rzJa+CFyi9MwWIHMbLgXpB8tsSpgTAqwrzoTzOGq9fgC6u
pZhdZrBkg3FeJgD88goCi9mZDsY2YAoeGRLFJ2fR8iICqIVQy+Htq9pE22WBLpnS
KjL3+mR9FArHNFtWlhKF2YHMUqyHHrnZnF/Ns7QNoMMF7/CK18iAKgnb+2wuGKM2
aEMddOeOTtz+i/rgjkp/RGMt011EdCsso0/cTo9qqX/bxOOCE4/Mne/ChMkQPnNU
CwIDAQABo3IwcDAJBgNVHRMEAjAAMB8GA1UdIwQYMBaAFIG+4l5yiB01gP0sw4ML
USopqYcuMB0GA1UdDgQWBBSby1T9leYVOVVdOZXiHCSaDDEMiDAOBgNVHQ8BAf8E
BAMCBaAwEwYDVR0lBAwwCgYIKwYBBQUHAwIwDQYJKoZIhvcNAQELBQADggEBAEyE
1mjSUyY6uNp6W4l20w7SskALSJDRKkOeZxAgF3VMxlsCuEl70s9oEfntwIpyQtSa
jON/9yJHbwm/Az824bmk8Dc7AXIPhay+dftXb8j529gPuYB9AKoPNg0NctkyYCQh
a/3YQVdDWX7XgmEiXkL57M7G6+IdcPDONLArfjOcT9qHdkVVq1AIjlMSx3OQQmm/
uoLb/G9q/97QA2/l8shG/Na8HjVqGLcl5TNZdbNhs2w9ogxr/GNzqdvym6RQ8vT/
UR2n+uwH4n1MUxmHYYeyot5dnIV1IJ6hQ54JAncM9HvCLFk1WHz6RKshQUCuPBiJ
wTw70BVktzJnb0VLeDg=
-----END CERTIFICATE-----
radiusAccountingEnabled: false
radiusEnabled: true
radiusAttributeForGroupPolicies: Filter-Id
radiusFailoverPolicy: Deny access
radiusLoadBalancingPolicy: Round robin
ipAssignmentMode: NAT mode
adminSplashUrl: http://example.com
splashTimeout: 30 minutes
walledGardenEnabled: true
walledGardenRanges:
- example.com
- 1.1.1.1/32
minBitrate: 11
bandSelection: 5 GHz band only
perClientBandwidthLimitUp: 0
perClientBandwidthLimitDown: 0
visible: true
availableOnAllAps: false
availabilityTags:
- tag1
- tag2
perSsidBandwidthLimitUp: 0
perSsidBandwidthLimitDown: 0
mandatoryDhcpEnabled: false
summary: Update the attributes of an MR SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/bonjourForwarding:
get:
description: List the Bonjour forwarding setting and rules for the SSID
operationId: getNetworkWirelessSsidBonjourForwarding
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding is enabled on the SSID.
exception:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding exception is enabled on this SSID. Exception is required to enable L2 isolation and Bonjour forwarding to work together.
description: Bonjour forwarding exception
rules:
type: array
items:
type: object
properties:
description:
type: string
description: Desctiption of the bonjour forwarding rule
vlanId:
type: string
description: The ID of the service VLAN. Required
services:
type: array
items:
type: string
enum:
- AFP
- AirPlay
- All Services
- Apple screen share
- BitTorrent
- Chromecast
- FTP
- Printers
- SSH
- Samba
- Scanners
- Spotify
- iChat
- iTunes
description: A list of Bonjour services. At least one service must be specified. Available services are 'All Services', 'AFP', 'AirPlay', 'Apple screen share', 'BitTorrent', 'Chromecast', 'FTP', 'iChat', 'iTunes', 'Printers', 'Samba', 'Scanners', 'Spotify' and 'SSH'
description: Bonjour forwarding rules
example:
enabled: true
exception:
enabled: true
rules:
- description: A simple bonjour rule
vlanId: '1'
services:
- All Services
summary: List the Bonjour forwarding setting and rules for the SSID
tags:
- wireless.configure
put:
description: Update the bonjour forwarding setting and rules for the SSID
operationId: updateNetworkWirelessSsidBonjourForwarding
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding is enabled on this SSID.
rules:
type: array
items:
type: object
properties:
description:
type: string
description: A description for your Bonjour forwarding rule. Optional.
vlanId:
type: string
description: The ID of the service VLAN. Required.
services:
type: array
items:
type: string
enum:
- AFP
- AirPlay
- All Services
- Apple screen share
- BitTorrent
- Chromecast
- FTP
- Printers
- SSH
- Samba
- Scanners
- Spotify
- iChat
- iTunes
description: A list of Bonjour services. At least one service must be specified. Available services are 'All Services', 'AFP', 'AirPlay', 'Apple screen share', 'BitTorrent', 'Chromecast', 'FTP', 'iChat', 'iTunes', 'Printers', 'Samba', 'Scanners', 'Spotify' and 'SSH'
required:
- vlanId
- services
description: List of bonjour forwarding rules.
exception:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding exception is enabled on this SSID. Exception is required to enable L2 isolation and Bonjour forwarding to work together.
description: Bonjour forwarding exception
example:
enabled: true
rules:
- description: A simple bonjour rule
vlanId: '1'
services:
- All Services
exception:
enabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding is enabled on the SSID.
exception:
type: object
properties:
enabled:
type: boolean
description: If true, Bonjour forwarding exception is enabled on this SSID. Exception is required to enable L2 isolation and Bonjour forwarding to work together.
description: Bonjour forwarding exception
rules:
type: array
items:
type: object
properties:
description:
type: string
description: Desctiption of the bonjour forwarding rule
vlanId:
type: string
description: The ID of the service VLAN. Required
services:
type: array
items:
type: string
enum:
- AFP
- AirPlay
- All Services
- Apple screen share
- BitTorrent
- Chromecast
- FTP
- Printers
- SSH
- Samba
- Scanners
- Spotify
- iChat
- iTunes
description: A list of Bonjour services. At least one service must be specified. Available services are 'All Services', 'AFP', 'AirPlay', 'Apple screen share', 'BitTorrent', 'Chromecast', 'FTP', 'iChat', 'iTunes', 'Printers', 'Samba', 'Scanners', 'Spotify' and 'SSH'
description: Bonjour forwarding rules
example:
enabled: true
exception:
enabled: true
rules:
- description: A simple bonjour rule
vlanId: '1'
services:
- All Services
summary: Update the bonjour forwarding setting and rules for the SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/deviceTypeGroupPolicies:
get:
description: List the device type group policies for the SSID
operationId: getNetworkWirelessSsidDeviceTypeGroupPolicies
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
deviceTypePolicies:
- deviceType: Android
devicePolicy: Allowed
- deviceType: iPhone
devicePolicy: Group policy
groupPolicyId: 101
summary: List the device type group policies for the SSID
tags:
- wireless.configure
put:
description: Update the device type group policies for the SSID
operationId: updateNetworkWirelessSsidDeviceTypeGroupPolicies
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, the SSID device type group policies are enabled.
deviceTypePolicies:
type: array
items:
type: object
properties:
deviceType:
type: string
enum:
- Android
- B&N Nook
- BlackBerry
- Chrome OS
- Mac OS X
- Other OS
- Windows
- Windows Phone
- iPad
- iPhone
- iPod
description: The device type. Can be one of 'Android', 'BlackBerry', 'Chrome OS', 'iPad', 'iPhone', 'iPod', 'Mac OS X', 'Windows', 'Windows Phone', 'B&N Nook' or 'Other OS'
devicePolicy:
type: string
enum:
- Allowed
- Blocked
- Group policy
description: The device policy. Can be one of 'Allowed', 'Blocked' or 'Group policy'
groupPolicyId:
type: integer
description: ID of the group policy object.
required:
- deviceType
- devicePolicy
description: List of device type policies.
example:
enabled: true
deviceTypePolicies:
- deviceType: Android
devicePolicy: Allowed
- deviceType: iPhone
devicePolicy: Group policy
groupPolicyId: 101
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
deviceTypePolicies:
- deviceType: Android
devicePolicy: Allowed
- deviceType: iPhone
devicePolicy: Group policy
groupPolicyId: 101
summary: Update the device type group policies for the SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/eapOverride:
get:
description: Return the EAP overridden parameters for an SSID
operationId: getNetworkWirelessSsidEapOverride
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
timeout:
type: integer
description: General EAP timeout in seconds.
maxRetries:
type: integer
description: Maximum number of general EAP retries.
identity:
type: object
properties:
retries:
type: integer
description: Maximum number of EAP retries.
timeout:
type: integer
description: EAP timeout in seconds.
description: EAP settings for identity requests.
eapolKey:
type: object
properties:
retries:
type: integer
description: Maximum number of EAPOL key retries.
timeoutInMs:
type: integer
description: EAPOL Key timeout in milliseconds.
description: EAPOL Key settings.
example:
timeout: 50
maxRetries: 5
identity:
retries: 5
timeout: 50
eapolKey:
retries: 50
timeoutInMs: 5000
summary: Return the EAP overridden parameters for an SSID
tags:
- wireless.configure
put:
description: Update the EAP overridden parameters for an SSID.
operationId: updateNetworkWirelessSsidEapOverride
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
timeout:
type: integer
description: General EAP timeout in seconds.
identity:
type: object
properties:
retries:
type: integer
description: Maximum number of EAP retries.
timeout:
type: integer
description: EAP timeout in seconds.
description: EAP settings for identity requests.
maxRetries:
type: integer
description: Maximum number of general EAP retries.
eapolKey:
type: object
properties:
retries:
type: integer
description: Maximum number of EAPOL key retries.
timeoutInMs:
type: integer
description: EAPOL Key timeout in milliseconds.
description: EAPOL Key settings.
example:
timeout: 5
identity:
retries: 5
timeout: 5
maxRetries: 5
eapolKey:
retries: 5
timeoutInMs: 5000
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
timeout:
type: integer
description: General EAP timeout in seconds.
maxRetries:
type: integer
description: Maximum number of general EAP retries.
identity:
type: object
properties:
retries:
type: integer
description: Maximum number of EAP retries.
timeout:
type: integer
description: EAP timeout in seconds.
description: EAP settings for identity requests.
eapolKey:
type: object
properties:
retries:
type: integer
description: Maximum number of EAPOL key retries.
timeoutInMs:
type: integer
description: EAPOL Key timeout in milliseconds.
description: EAPOL Key settings.
example:
timeout: 50
maxRetries: 5
identity:
retries: 5
timeout: 50
eapolKey:
retries: 50
timeoutInMs: 5000
summary: Update the EAP overridden parameters for an SSID.
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/firewall/l3FirewallRules:
get:
description: Return the L3 firewall rules for an SSID on an MR network
operationId: getNetworkWirelessSsidFirewallL3FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
required:
- policy
- protocol
- destCidr
description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule).
allowLanAccess:
type: boolean
description: Allows wireless client access to local LAN (boolean value - true allows access and false denies access)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
allowLanAccess: false
summary: Return the L3 firewall rules for an SSID on an MR network
tags:
- wireless.configure
put:
description: Update the L3 firewall rules of an SSID on an MR network
operationId: updateNetworkWirelessSsidFirewallL3FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
required:
- policy
- protocol
- destCidr
description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule).
allowLanAccess:
type: boolean
description: Allow wireless client access to local LAN (boolean value - true allows access and false denies access) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
allowLanAccess: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
required:
- policy
- protocol
- destCidr
description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule).
allowLanAccess:
type: boolean
description: Allows wireless client access to local LAN (boolean value - true allows access and false denies access)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
destPort: '443'
destCidr: 192.168.1.0/24
allowLanAccess: false
summary: Update the L3 firewall rules of an SSID on an MR network
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/firewall/l7FirewallRules:
get:
description: Return the L7 firewall rules for an SSID on an MR network
operationId: getNetworkWirelessSsidFirewallL7FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
policy:
type: string
enum:
- deny
description: '''Deny'' traffic specified by this rule'
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- port
description: 'Type of the L7 firewall rule. One of: ''application'', ''applicationCategory'', ''host'', ''port'', ''ipRange'''
value:
type: string
description: The value of what needs to get blocked. Format of the value varies depending on type of the firewall rule selected.
description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule).
example:
rules:
- policy: deny
type: host
value: google.com
summary: Return the L7 firewall rules for an SSID on an MR network
tags:
- wireless.configure
put:
description: Update the L7 firewall rules of an SSID on an MR network
operationId: updateNetworkWirelessSsidFirewallL7FirewallRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
policy:
type: string
enum:
- deny
description: '''Deny'' traffic specified by this rule'
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- port
description: 'Type of the L7 firewall rule. One of: ''application'', ''applicationCategory'', ''host'', ''port'', ''ipRange'''
value:
type: string
description: The value of what needs to get blocked. Format of the value varies depending on type of the firewall rule selected.
description: An array of L7 firewall rules for this SSID. Rules will get applied in the same order user has specified in request. Empty array will clear the L7 firewall rule configuration.
example:
rules:
- policy: deny
type: host
value: google.com
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
policy:
type: string
enum:
- deny
description: '''Deny'' traffic specified by this rule'
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- port
description: 'Type of the L7 firewall rule. One of: ''application'', ''applicationCategory'', ''host'', ''port'', ''ipRange'''
value:
type: string
description: The value of what needs to get blocked. Format of the value varies depending on type of the firewall rule selected.
description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule).
example:
rules:
- policy: deny
type: host
value: google.com
summary: Update the L7 firewall rules of an SSID on an MR network
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/hotspot20:
get:
description: Return the Hotspot 2.0 settings for an SSID
operationId: getNetworkWirelessSsidHotspot20
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
operator:
name: Meraki Product Management
venue:
name: SF Branch
type: Unspecified Assembly
networkAccessType: Private network
domains:
- meraki.local
- domain2.com
roamConsortOis:
- ABC123
- 456EFG
mccMncs:
- mcc: '123'
mnc: '456'
- mcc: '563'
mnc: '232'
naiRealms:
- format: '1'
name: Realm 1
methods:
- id: '1'
authenticationTypes:
nonEapInnerAuthentication:
- MSCHAP
eapInnerAuthentication:
- EAP-TTLS with MSCHAPv2
credentials: []
tunneledEapMethodCredentials: []
summary: Return the Hotspot 2.0 settings for an SSID
tags:
- wireless.configure
put:
description: Update the Hotspot 2.0 settings of an SSID
operationId: updateNetworkWirelessSsidHotspot20
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: Whether or not Hotspot 2.0 for this SSID is enabled
operator:
type: object
properties:
name:
type: string
description: Operator name
description: Operator settings for this SSID
venue:
type: object
properties:
name:
type: string
description: Venue name
type:
type: string
enum:
- Airplane
- 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 Aquarium
description: Venue type ('Unspecified', 'Unspecified Assembly', 'Arena', 'Stadium', 'Passenger Terminal', 'Amphitheater', 'Amusement Park', 'Place of Worship', 'Convention Center', 'Library', 'Museum', 'Restaurant', 'Theater', 'Bar', 'Coffee Shop', 'Zoo or Aquarium', 'Emergency Coordination Center', 'Unspecified Business', 'Doctor or Dentist office', 'Bank', 'Fire Station', 'Police Station', 'Post Office', 'Professional Office', 'Research and Development Facility', 'Attorney Office', 'Unspecified Educational', 'School, Primary', 'School, Secondary', 'University or College', 'Unspecified Factory and Industrial', 'Factory', 'Unspecified Institutional', 'Hospital', 'Long-Term Care Facility', 'Alcohol and Drug Rehabilitation Center', 'Group Home', 'Prison or Jail', 'Unspecified Mercantile', 'Retail Store', 'Grocery Market', 'Automotive Service Station', 'Shopping Mall', 'Gas Station', 'Unspecified Residential', 'Private Residence', 'Hotel or Motel', 'Dormitory', 'Boarding House', 'Unspecified Storage', 'Unspecified Utility and Miscellaneous', 'Unspecified Vehicular', 'Automobile or Truck', 'Airplane', 'Bus', 'Ferry', 'Ship or Boat', 'Train', 'Motor Bike', 'Unspecified Outdoor', 'Muni-mesh Network', 'City Park', 'Rest Area', 'Traffic Control', 'Bus Stop', 'Kiosk')
description: Venue settings for this SSID
networkAccessType:
type: string
enum:
- Chargeable public network
- Emergency services only network
- Free public network
- Personal device network
- Private network
- Private network with guest access
- Test or experimental
- Wildcard
description: The network type of this SSID ('Private network', 'Private network with guest access', 'Chargeable public network', 'Free public network', 'Personal device network', 'Emergency services only network', 'Test or experimental', 'Wildcard')
domains:
type: array
items:
type: string
description: An array of domain names
roamConsortOis:
type: array
items:
type: string
description: An array of roaming consortium OIs (hexadecimal number 3-5 octets in length)
mccMncs:
type: array
items:
type: object
properties:
mcc:
type: string
description: MCC value
mnc:
type: string
description: MNC value
description: An array of MCC/MNC pairs
naiRealms:
type: array
items:
type: object
properties:
format:
type: string
enum:
- '0'
- '1'
description: The format for the realm ('1' or '0')
realm:
type: string
description: The name of the realm
methods:
type: array
items:
type: object
properties:
id:
type: string
description: ID of method
authenticationTypes:
type: object
description: 'The authentication types for the method. These should be formatted as an object with the EAP method category in camelcase as the key and the list of types as the value (nonEapInnerAuthentication: Reserved, PAP, CHAP, MSCHAP, MSCHAPV2; eapInnerAuthentication: EAP-TLS, EAP-SIM, EAP-AKA, EAP-TTLS with MSCHAPv2; credentials: SIM, USIM, NFC Secure Element, Hardware Token, Softoken, Certificate, username/password, none, Reserved, Vendor Specific; tunneledEapMethodCredentials: SIM, USIM, NFC Secure Element, Hardware Token, Softoken, Certificate, username/password, Reserved, Anonymous, Vendor Specific)'
description: An array of EAP methods for the realm.
description: An array of NAI realms
example:
enabled: true
operator:
name: Meraki Product Management
venue:
name: SF Branch
type: Unspecified Assembly
networkAccessType: Private network
domains:
- meraki.local
- domain2.com
roamConsortOis:
- ABC123
- 456EFG
mccMncs:
- mcc: '123'
mnc: '456'
- mcc: '563'
mnc: '232'
naiRealms:
- format: '1'
name: Realm 1
methods:
- id: '1'
authenticationTypes:
nonEapInnerAuthentication:
- MSCHAP
eapInnerAuthentication:
- EAP-TTLS with MSCHAPv2
credentials: []
tunneledEapMethodCredentials: []
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
enabled: true
operator:
name: Meraki Product Management
venue:
name: SF Branch
type: Unspecified Assembly
networkAccessType: Private network
domains:
- meraki.local
- domain2.com
roamConsortOis:
- ABC123
- 456EFG
mccMncs:
- mcc: '123'
mnc: '456'
- mcc: '563'
mnc: '232'
naiRealms:
- format: '1'
name: Realm 1
methods:
- id: '1'
authenticationTypes:
nonEapInnerAuthentication:
- MSCHAP
eapInnerAuthentication:
- EAP-TTLS with MSCHAPv2
credentials: []
tunneledEapMethodCredentials: []
summary: Update the Hotspot 2.0 settings of an SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/identityPsks:
get:
description: List all Identity PSKs in a wireless network
operationId: getNetworkWirelessSsidIdentityPsks
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
id:
type: string
description: The unique identifier of the Identity PSK
groupPolicyId:
type: string
description: The group policy to be applied to clients
passphrase:
type: string
description: The passphrase for client authentication
wifiPersonalNetworkId:
type: string
description: The WiFi Personal Network unique identifier
email:
type: string
description: The email associated with the System's Manager User
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires, or 'null' to never expire
example:
- name: Sample Identity PSK
id: '1284392014819'
groupPolicyId: '101'
passphrase: secret
wifiPersonalNetworkId: '1284392014819'
email: miles@meraki.com
expiresAt: '2018-02-11T00:00:00.090210Z'
summary: List all Identity PSKs in a wireless network
tags:
- wireless.configure
post:
description: Create an Identity PSK
operationId: createNetworkWirelessSsidIdentityPsk
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
passphrase:
type: string
description: The passphrase for client authentication. If left blank, one will be auto-generated.
groupPolicyId:
type: string
description: The group policy to be applied to clients
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires. Will not expire if left blank.
example:
name: Sample Identity PSK
passphrase: secret
groupPolicyId: '101'
expiresAt: '2018-02-11T00:00:00.090210Z'
required:
- name
- groupPolicyId
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
id:
type: string
description: The unique identifier of the Identity PSK
groupPolicyId:
type: string
description: The group policy to be applied to clients
passphrase:
type: string
description: The passphrase for client authentication
wifiPersonalNetworkId:
type: string
description: The WiFi Personal Network unique identifier
email:
type: string
description: The email associated with the System's Manager User
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires, or 'null' to never expire
example:
name: Sample Identity PSK
id: '1284392014819'
groupPolicyId: '101'
passphrase: secret
wifiPersonalNetworkId: '1284392014819'
email: miles@meraki.com
expiresAt: '2018-02-11T00:00:00.090210Z'
summary: Create an Identity PSK
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/identityPsks/{identityPskId}:
get:
description: Return an Identity PSK
operationId: getNetworkWirelessSsidIdentityPsk
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
- name: identityPskId
in: path
description: Identity psk ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
id:
type: string
description: The unique identifier of the Identity PSK
groupPolicyId:
type: string
description: The group policy to be applied to clients
passphrase:
type: string
description: The passphrase for client authentication
wifiPersonalNetworkId:
type: string
description: The WiFi Personal Network unique identifier
email:
type: string
description: The email associated with the System's Manager User
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires, or 'null' to never expire
example:
name: Sample Identity PSK
id: '1284392014819'
groupPolicyId: '101'
passphrase: secret
wifiPersonalNetworkId: '1284392014819'
email: miles@meraki.com
expiresAt: '2018-02-11T00:00:00.090210Z'
summary: Return an Identity PSK
tags:
- wireless.configure
put:
description: Update an Identity PSK
operationId: updateNetworkWirelessSsidIdentityPsk
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
- name: identityPskId
in: path
description: Identity psk ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
passphrase:
type: string
description: The passphrase for client authentication
groupPolicyId:
type: string
description: The group policy to be applied to clients
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires, or 'null' to never expire
example:
name: Sample Identity PSK
passphrase: secret
groupPolicyId: '101'
expiresAt: '2018-02-11T00:00:00.090210Z'
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the Identity PSK
id:
type: string
description: The unique identifier of the Identity PSK
groupPolicyId:
type: string
description: The group policy to be applied to clients
passphrase:
type: string
description: The passphrase for client authentication
wifiPersonalNetworkId:
type: string
description: The WiFi Personal Network unique identifier
email:
type: string
description: The email associated with the System's Manager User
expiresAt:
type: string
format: date-time
description: Timestamp for when the Identity PSK expires, or 'null' to never expire
example:
name: Sample Identity PSK
id: '1284392014819'
groupPolicyId: '101'
passphrase: secret
wifiPersonalNetworkId: '1284392014819'
email: miles@meraki.com
expiresAt: '2018-02-11T00:00:00.090210Z'
summary: Update an Identity PSK
tags:
- wireless.configure
delete:
description: Delete an Identity PSK
operationId: deleteNetworkWirelessSsidIdentityPsk
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
- name: identityPskId
in: path
description: Identity psk ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete an Identity PSK
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/schedules:
get:
description: List the outage schedule for the SSID
operationId: getNetworkWirelessSsidSchedules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, the SSID outage schedule is enabled.
ranges:
type: array
items:
type: object
properties:
startDay:
type: string
description: Day of when the outage starts. Can be either full day name, or three letter abbreviation.
startTime:
type: string
description: 24 hour time when the outage starts.
endDay:
type: string
description: Day of when the outage ends. Can be either full day name, or three letter abbreviation
endTime:
type: string
description: 24 hour time when the outage ends.
required:
- startDay
- startTime
- endDay
- endTime
description: List of outage ranges. Has a start date and time, and end date and time. If this parameter is passed in along with rangesInSeconds parameter, this will take precedence.
rangesInSeconds:
type: array
items:
type: object
properties:
start:
type: integer
description: Seconds since Sunday at midnight when the outage range starts.
end:
type: integer
description: Seconds since Sunday at midnight when that outage range ends.
required:
- start
- end
description: List of outage ranges in seconds since Sunday at Midnight. Has a start and end. If this parameter is passed in along with the ranges parameter, ranges will take precedence.
example:
enabled: true
ranges:
- startDay: Tuesday
startTime: '01:00'
endDay: Tuesday
endTime: '05:00'
rangesInSeconds:
- start: 604800
end: 0
summary: List the outage schedule for the SSID
tags:
- wireless.configure
put:
description: Update the outage schedule for the SSID
operationId: updateNetworkWirelessSsidSchedules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, the SSID outage schedule is enabled.
ranges:
type: array
items:
type: object
properties:
startDay:
type: string
description: Day of when the outage starts. Can be either full day name, or three letter abbreviation.
startTime:
type: string
description: 24 hour time when the outage starts.
endDay:
type: string
description: Day of when the outage ends. Can be either full day name, or three letter abbreviation
endTime:
type: string
description: 24 hour time when the outage ends.
required:
- startDay
- startTime
- endDay
- endTime
description: List of outage ranges. Has a start date and time, and end date and time. If this parameter is passed in along with rangesInSeconds parameter, this will take precedence.
rangesInSeconds:
type: array
items:
type: object
properties:
start:
type: integer
description: Seconds since Sunday at midnight when the outage range starts.
end:
type: integer
description: Seconds since Sunday at midnight when that outage range ends.
required:
- start
- end
description: List of outage ranges in seconds since Sunday at Midnight. Has a start and end. If this parameter is passed in along with the ranges parameter, ranges will take precedence.
example:
enabled: true
ranges:
- startDay: Tuesday
startTime: '01:00'
endDay: Tuesday
endTime: '05:00'
rangesInSeconds:
- start: 604800
end: 0
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
description: If true, the SSID outage schedule is enabled.
ranges:
type: array
items:
type: object
properties:
startDay:
type: string
description: Day of when the outage starts. Can be either full day name, or three letter abbreviation.
startTime:
type: string
description: 24 hour time when the outage starts.
endDay:
type: string
description: Day of when the outage ends. Can be either full day name, or three letter abbreviation
endTime:
type: string
description: 24 hour time when the outage ends.
required:
- startDay
- startTime
- endDay
- endTime
description: List of outage ranges. Has a start date and time, and end date and time. If this parameter is passed in along with rangesInSeconds parameter, this will take precedence.
rangesInSeconds:
type: array
items:
type: object
properties:
start:
type: integer
description: Seconds since Sunday at midnight when the outage range starts.
end:
type: integer
description: Seconds since Sunday at midnight when that outage range ends.
required:
- start
- end
description: List of outage ranges in seconds since Sunday at Midnight. Has a start and end. If this parameter is passed in along with the ranges parameter, ranges will take precedence.
example:
enabled: true
ranges:
- startDay: Tuesday
startTime: '01:00'
endDay: Tuesday
endTime: '05:00'
rangesInSeconds:
- start: 604800
end: 0
summary: Update the outage schedule for the SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/splash/settings:
get:
description: Display the splash page settings for the given SSID
operationId: getNetworkWirelessSsidSplashSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
ssidNumber:
type: integer
description: SSID number
splashPage:
type: string
description: The type of splash page for this SSID
useSplashUrl:
type: boolean
description: Boolean indicating whether the users will be redirected to the custom splash url
splashUrl:
type: string
description: The custom splash URL of the click-through splash page.
splashTimeout:
type: integer
enum:
- 30
- 60
- 120
- 240
- 480
- 720
- 1080
- 1440
- 2880
- 5760
- 7200
- 10080
- 20160
- 43200
- 86400
- 129600
description: Splash timeout in minutes.
redirectUrl:
type: string
description: The custom redirect URL where the users will go after the splash page.
useRedirectUrl:
type: boolean
description: The Boolean indicating whether the the user will be redirected to the custom redirect URL after the splash page.
welcomeMessage:
type: string
description: The welcome message for the users on the splash page.
themeId:
type: string
description: The id of the selected splash theme.
splashLogo:
type: object
properties:
md5:
type: string
description: The MD5 value of the logo file.
extension:
type: string
description: The extension of the logo file.
description: The logo used in the splash page.
splashImage:
type: object
properties:
md5:
type: string
description: The MD5 value of the image file.
extension:
type: string
description: The extension of the image file.
description: The image used in the splash page.
splashPrepaidFront:
type: object
properties:
md5:
type: string
description: The MD5 value of the prepaid front image file.
extension:
type: string
description: The extension of the prepaid front image file.
description: The prepaid front image used in the splash page.
guestSponsorship:
type: object
properties:
durationInMinutes:
type: integer
description: Duration in minutes of sponsored guest authorization.
guestCanRequestTimeframe:
type: boolean
description: Whether or not guests can specify how much time they are requesting.
description: Details associated with guest sponsored splash
blockAllTrafficBeforeSignOn:
type: boolean
description: How restricted allowing traffic should be. If true, all traffic types are blocked until the splash page is acknowledged. If false, all non-HTTP traffic is allowed before the splash page is acknowledged.
controllerDisconnectionBehavior:
type: string
description: How login attempts should be handled when the controller is unreachable.
allowSimultaneousLogins:
type: boolean
description: Whether or not to allow simultaneous logins from different devices.
billing:
type: object
properties:
freeAccess:
type: object
properties:
enabled:
type: boolean
description: Whether or not free access is enabled.
durationInMinutes:
type: integer
description: How long a device can use a network for free.
description: Details associated with a free access plan with limits
prepaidAccessFastLoginEnabled:
type: boolean
description: Whether or not billing uses the fast login prepaid access option.
replyToEmailAddress:
type: string
description: The email address that reeceives replies from clients
description: Details associated with billing splash
sentryEnrollment:
type: object
properties:
systemsManagerNetwork:
type: object
properties:
id:
type: string
description: The network ID of the Systems Manager network.
description: Systems Manager network targeted for sentry enrollment.
strength:
type: string
enum:
- click-through
- focused
- strict
description: The strength of the enforcement of selected system types.
enforcedSystems:
type: array
items:
type: string
description: The system types that the Sentry enforces.
description: Systems Manager sentry enrollment splash settings.
selfRegistration:
type: object
properties:
enabled:
type: boolean
description: Whether or not to allow users to create their own account on the network.
authorizationType:
type: string
enum:
- admin
- auto
- self_email
description: How created user accounts should be authorized.
description: Self-registration for splash with Meraki authentication.
example:
ssidNumber: 0
splashPage: Click-through splash page
useSplashUrl: true
splashUrl: https://www.custom_splash_url.com
splashTimeout: 1440
redirectUrl: https://example.com
useRedirectUrl: true
welcomeMessage: Welcome!
themeId: c3ddcb4f16785ee747ab5ffc10867d6c8ea704be
splashLogo:
md5: abcd1234
extension: jpg
splashImage:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
splashPrepaidFront:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
guestSponsorship:
durationInMinutes: 30
guestCanRequestTimeframe: false
blockAllTrafficBeforeSignOn: false
controllerDisconnectionBehavior: default
allowSimultaneousLogins: false
billing:
freeAccess:
enabled: true
durationInMinutes: 120
prepaidAccessFastLoginEnabled: true
replyToEmailAddress: user@email.com
sentryEnrollment:
systemsManagerNetwork:
id: N_1234
strength: focused
enforcedSystems:
- iOS
selfRegistration:
enabled: true
authorizationType: admin
summary: Display the splash page settings for the given SSID
tags:
- wireless.configure
put:
description: Modify the splash page settings for the given SSID
operationId: updateNetworkWirelessSsidSplashSettings
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
splashUrl:
type: string
description: '[optional] The custom splash URL of the click-through splash page. Note that the URL can be configured without necessarily being used. In order to enable the custom URL, see ''useSplashUrl'''
useSplashUrl:
type: boolean
description: '[optional] Boolean indicating whether the users will be redirected to the custom splash url. A custom splash URL must be set if this is true. Note that depending on your SSID''s access control settings, it may not be possible to use the custom splash URL.'
splashTimeout:
type: integer
enum:
- 30
- 60
- 120
- 240
- 480
- 720
- 1080
- 1440
- 2880
- 5760
- 7200
- 10080
- 20160
- 43200
- 86400
- 129600
description: Splash timeout in minutes. This will determine how often users will see the splash page.
redirectUrl:
type: string
description: The custom redirect URL where the users will go after the splash page.
useRedirectUrl:
type: boolean
description: The Boolean indicating whether the the user will be redirected to the custom redirect URL after the splash page. A custom redirect URL must be set if this is true.
welcomeMessage:
type: string
description: The welcome message for the users on the splash page.
themeId:
type: string
description: The id of the selected splash theme.
splashLogo:
type: object
properties:
md5:
type: string
description: The MD5 value of the logo file. Setting this to null will remove the logo from the splash page.
extension:
type: string
description: The extension of the logo file.
image:
type: object
properties:
format:
type: string
enum:
- gif
- jpg
- png
description: The format of the encoded contents. Supported formats are 'png', 'gif', and jpg'.
contents:
type: string
format: byte
description: The file contents (a base 64 encoded string) of your new logo.
description: Properties for setting a new image.
description: The logo used in the splash page.
splashImage:
type: object
properties:
md5:
type: string
description: The MD5 value of the image file. Setting this to null will remove the image from the splash page.
extension:
type: string
description: The extension of the image file.
image:
type: object
properties:
format:
type: string
enum:
- gif
- jpg
- png
description: The format of the encoded contents. Supported formats are 'png', 'gif', and jpg'.
contents:
type: string
format: byte
description: The file contents (a base 64 encoded string) of your new image.
description: Properties for setting a new image.
description: The image used in the splash page.
splashPrepaidFront:
type: object
properties:
md5:
type: string
description: The MD5 value of the prepaid front image file. Setting this to null will remove the prepaid front from the splash page.
extension:
type: string
description: The extension of the prepaid front image file.
image:
type: object
properties:
format:
type: string
enum:
- gif
- jpg
- png
description: The format of the encoded contents. Supported formats are 'png', 'gif', and jpg'.
contents:
type: string
format: byte
description: The file contents (a base 64 encoded string) of your new prepaid front.
description: Properties for setting a new image.
description: The prepaid front image used in the splash page.
blockAllTrafficBeforeSignOn:
type: boolean
description: How restricted allowing traffic should be. If true, all traffic types are blocked until the splash page is acknowledged. If false, all non-HTTP traffic is allowed before the splash page is acknowledged.
controllerDisconnectionBehavior:
type: string
enum:
- default
- open
- restricted
description: How login attempts should be handled when the controller is unreachable. Can be either 'open', 'restricted', or 'default'.
allowSimultaneousLogins:
type: boolean
description: Whether or not to allow simultaneous logins from different devices.
guestSponsorship:
type: object
properties:
durationInMinutes:
type: integer
description: Duration in minutes of sponsored guest authorization. Must be between 1 and 60480 (6 weeks)
guestCanRequestTimeframe:
type: boolean
description: Whether or not guests can specify how much time they are requesting.
description: Details associated with guest sponsored splash.
billing:
type: object
properties:
freeAccess:
type: object
properties:
enabled:
type: boolean
description: Whether or not free access is enabled.
durationInMinutes:
type: integer
description: How long a device can use a network for free.
description: Details associated with a free access plan with limits.
prepaidAccessFastLoginEnabled:
type: boolean
description: Whether or not billing uses the fast login prepaid access option.
replyToEmailAddress:
type: string
description: The email address that receives replies from clients.
description: Details associated with billing splash.
sentryEnrollment:
type: object
properties:
systemsManagerNetwork:
type: object
properties:
id:
type: string
description: The network ID of the Systems Manager network.
required:
- id
description: Systems Manager network targeted for sentry enrollment.
strength:
type: string
enum:
- click-through
- focused
- strict
description: 'The strength of the enforcement of selected system types. Must be one of: ''focused'', ''click-through'', and ''strict''.'
enforcedSystems:
type: array
items:
type: string
description: 'The system types that the Sentry enforces. Must be included in: ''iOS, ''Android'', ''macOS'', and ''Windows''.'
description: Systems Manager sentry enrollment splash settings.
example:
splashUrl: https://www.custom_splash_url.com
useSplashUrl: true
splashTimeout: 1440
redirectUrl: https://example.com
useRedirectUrl: true
welcomeMessage: Welcome!
themeId: c3ddcb4f16785ee747ab5ffc10867d6c8ea704be
splashLogo:
md5: abcd1234
extension: jpg
image:
format: jpg
contents: Q2lzY28gTWVyYWtp
splashImage:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
image:
format: jpg
contents: Q2lzY28gTWVyYWtp
splashPrepaidFront:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
image:
format: jpg
contents: Q2lzY28gTWVyYWtp
blockAllTrafficBeforeSignOn: false
controllerDisconnectionBehavior: default
allowSimultaneousLogins: false
guestSponsorship:
durationInMinutes: 30
guestCanRequestTimeframe: false
billing:
freeAccess:
enabled: true
durationInMinutes: 120
prepaidAccessFastLoginEnabled: true
replyToEmailAddress: user@email.com
sentryEnrollment:
systemsManagerNetwork:
id: N_1234
strength: focused
enforcedSystems:
- iOS
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
ssidNumber:
type: integer
description: SSID number
splashPage:
type: string
description: The type of splash page for this SSID
useSplashUrl:
type: boolean
description: Boolean indicating whether the users will be redirected to the custom splash url
splashUrl:
type: string
description: The custom splash URL of the click-through splash page.
splashTimeout:
type: integer
enum:
- 30
- 60
- 120
- 240
- 480
- 720
- 1080
- 1440
- 2880
- 5760
- 7200
- 10080
- 20160
- 43200
- 86400
- 129600
description: Splash timeout in minutes.
redirectUrl:
type: string
description: The custom redirect URL where the users will go after the splash page.
useRedirectUrl:
type: boolean
description: The Boolean indicating whether the the user will be redirected to the custom redirect URL after the splash page.
welcomeMessage:
type: string
description: The welcome message for the users on the splash page.
themeId:
type: string
description: The id of the selected splash theme.
splashLogo:
type: object
properties:
md5:
type: string
description: The MD5 value of the logo file.
extension:
type: string
description: The extension of the logo file.
description: The logo used in the splash page.
splashImage:
type: object
properties:
md5:
type: string
description: The MD5 value of the image file.
extension:
type: string
description: The extension of the image file.
description: The image used in the splash page.
splashPrepaidFront:
type: object
properties:
md5:
type: string
description: The MD5 value of the prepaid front image file.
extension:
type: string
description: The extension of the prepaid front image file.
description: The prepaid front image used in the splash page.
guestSponsorship:
type: object
properties:
durationInMinutes:
type: integer
description: Duration in minutes of sponsored guest authorization.
guestCanRequestTimeframe:
type: boolean
description: Whether or not guests can specify how much time they are requesting.
description: Details associated with guest sponsored splash
blockAllTrafficBeforeSignOn:
type: boolean
description: How restricted allowing traffic should be. If true, all traffic types are blocked until the splash page is acknowledged. If false, all non-HTTP traffic is allowed before the splash page is acknowledged.
controllerDisconnectionBehavior:
type: string
description: How login attempts should be handled when the controller is unreachable.
allowSimultaneousLogins:
type: boolean
description: Whether or not to allow simultaneous logins from different devices.
billing:
type: object
properties:
freeAccess:
type: object
properties:
enabled:
type: boolean
description: Whether or not free access is enabled.
durationInMinutes:
type: integer
description: How long a device can use a network for free.
description: Details associated with a free access plan with limits
prepaidAccessFastLoginEnabled:
type: boolean
description: Whether or not billing uses the fast login prepaid access option.
replyToEmailAddress:
type: string
description: The email address that reeceives replies from clients
description: Details associated with billing splash
sentryEnrollment:
type: object
properties:
systemsManagerNetwork:
type: object
properties:
id:
type: string
description: The network ID of the Systems Manager network.
description: Systems Manager network targeted for sentry enrollment.
strength:
type: string
enum:
- click-through
- focused
- strict
description: The strength of the enforcement of selected system types.
enforcedSystems:
type: array
items:
type: string
description: The system types that the Sentry enforces.
description: Systems Manager sentry enrollment splash settings.
selfRegistration:
type: object
properties:
enabled:
type: boolean
description: Whether or not to allow users to create their own account on the network.
authorizationType:
type: string
enum:
- admin
- auto
- self_email
description: How created user accounts should be authorized.
description: Self-registration for splash with Meraki authentication.
example:
ssidNumber: 0
splashPage: Click-through splash page
useSplashUrl: true
splashUrl: https://www.custom_splash_url.com
splashTimeout: 1440
redirectUrl: https://example.com
useRedirectUrl: true
welcomeMessage: Welcome!
themeId: c3ddcb4f16785ee747ab5ffc10867d6c8ea704be
splashLogo:
md5: abcd1234
extension: jpg
splashImage:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
splashPrepaidFront:
md5: 542cccac8d7dedee0f185311d154d194
extension: jpg
guestSponsorship:
durationInMinutes: 30
guestCanRequestTimeframe: false
blockAllTrafficBeforeSignOn: false
controllerDisconnectionBehavior: default
allowSimultaneousLogins: false
billing:
freeAccess:
enabled: true
durationInMinutes: 120
prepaidAccessFastLoginEnabled: true
replyToEmailAddress: user@email.com
sentryEnrollment:
systemsManagerNetwork:
id: N_1234
strength: focused
enforcedSystems:
- iOS
selfRegistration:
enabled: true
authorizationType: admin
summary: Modify the splash page settings for the given SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/trafficShaping/rules:
put:
description: Update the traffic shaping rules for an SSID on an MR network.
operationId: updateNetworkWirelessSsidTrafficShapingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
trafficShapingEnabled:
type: boolean
description: Whether traffic shaping rules are applied to clients on your SSID.
defaultRulesEnabled:
type: boolean
description: Whether default traffic shaping rules are enabled (true) or disabled (false). There are 4 default rules, which can be seen on your network's traffic shaping page. Note that default rules count against the rule limit of 8.
rules:
type: array
items:
type: object
properties:
definitions:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- localNet
- port
description: The type of definition. Can be one of 'application', 'applicationCategory', 'host', 'port', 'ipRange' or 'localNet'.
value:
type: string
description: |2
If "type" is 'host', 'port', 'ipRange' or 'localNet', then "value" must be a string, matching either
a hostname (e.g. "somesite.com"), a port (e.g. 8080), or an IP range ("192.1.0.0",
"192.1.0.0/16", or "10.1.0.0/16:80"). 'localNet' also supports CIDR notation, excluding
custom ports.
If "type" is 'application' or 'applicationCategory', then "value" must be an object
with the structure { "id": "meraki:layer7/..." }, where "id" is the application category or
application ID (for a list of IDs for your network, use the trafficShaping/applicationCategories
endpoint).
required:
- type
- value
description: |2
A list of objects describing the definitions of your traffic shaping rule. At least one definition is required.
perClientBandwidthLimits:
type: object
properties:
settings:
type: string
description: How bandwidth limits are applied by your rule. Can be one of 'network default', 'ignore' or 'custom'.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The bandwidth limits object, specifying the upload ('limitUp') and download ('limitDown') speed in Kbps. These are only enforced if 'settings' is set to 'custom'.
description: |2
An object describing the bandwidth settings for your rule.
dscpTagValue:
type: integer
description: |2
The DSCP tag applied by your rule. null means 'Do not change DSCP tag'.
For a list of possible tag values, use the trafficShaping/dscpTaggingOptions endpoint.
pcpTagValue:
type: integer
description: |2
The PCP tag applied by your rule. Can be 0 (lowest priority) through 7 (highest priority).
null means 'Do not set PCP tag'.
required:
- definitions
description: |2
An array of traffic shaping rules. Rules are applied in the order that
they are specified in. An empty list (or null) means no rules. Note that
you are allowed a maximum of 8 rules.
example:
trafficShapingEnabled: true
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
pcpTagValue: 0
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
trafficShapingEnabled:
type: boolean
description: Whether traffic shaping rules are applied to clients on your SSID.
defaultRulesEnabled:
type: boolean
description: Whether default traffic shaping rules are enabled (true) or disabled (false). There are 4 default rules, which can be seen on your network's traffic shaping page. Note that default rules count against the rule limit of 8.
rules:
type: array
items:
type: object
properties:
definitions:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- localNet
- port
description: The type of definition. Can be one of 'application', 'applicationCategory', 'host', 'port', 'ipRange' or 'localNet'.
value:
type: string
description: |2
If "type" is 'host', 'port', 'ipRange' or 'localNet', then "value" must be a string, matching either
a hostname (e.g. "somesite.com"), a port (e.g. 8080), or an IP range ("192.1.0.0",
"192.1.0.0/16", or "10.1.0.0/16:80"). 'localNet' also supports CIDR notation, excluding
custom ports.
If "type" is 'application' or 'applicationCategory', then "value" must be an object
with the structure { "id": "meraki:layer7/..." }, where "id" is the application category or
application ID (for a list of IDs for your network, use the trafficShaping/applicationCategories
endpoint).
required:
- type
- value
description: |2
A list of objects describing the definitions of your traffic shaping rule. At least one definition is required.
perClientBandwidthLimits:
type: object
properties:
settings:
type: string
description: How bandwidth limits are applied by your rule. Can be one of 'network default', 'ignore' or 'custom'.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The bandwidth limits object, specifying the upload ('limitUp') and download ('limitDown') speed in Kbps. These are only enforced if 'settings' is set to 'custom'.
description: |2
An object describing the bandwidth settings for your rule.
dscpTagValue:
type: integer
description: |2
The DSCP tag applied by your rule. null means 'Do not change DSCP tag'.
For a list of possible tag values, use the trafficShaping/dscpTaggingOptions endpoint.
pcpTagValue:
type: integer
description: |2
The PCP tag applied by your rule. Can be 0 (lowest priority) through 7 (highest priority).
null means 'Do not set PCP tag'.
required:
- definitions
description: |2
An array of traffic shaping rules. Rules are applied in the order that
they are specified in. An empty list (or null) means no rules. Note that
you are allowed a maximum of 8 rules.
example:
trafficShapingEnabled: true
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
pcpTagValue: 0
summary: Update the traffic shaping rules for an SSID on an MR network.
tags:
- wireless.configure
get:
description: Display the traffic shaping settings for a SSID on an MR network
operationId: getNetworkWirelessSsidTrafficShapingRules
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
trafficShapingEnabled:
type: boolean
description: Whether traffic shaping rules are applied to clients on your SSID.
defaultRulesEnabled:
type: boolean
description: Whether default traffic shaping rules are enabled (true) or disabled (false). There are 4 default rules, which can be seen on your network's traffic shaping page. Note that default rules count against the rule limit of 8.
rules:
type: array
items:
type: object
properties:
definitions:
type: array
items:
type: object
properties:
type:
type: string
enum:
- application
- applicationCategory
- host
- ipRange
- localNet
- port
description: The type of definition. Can be one of 'application', 'applicationCategory', 'host', 'port', 'ipRange' or 'localNet'.
value:
type: string
description: |2
If "type" is 'host', 'port', 'ipRange' or 'localNet', then "value" must be a string, matching either
a hostname (e.g. "somesite.com"), a port (e.g. 8080), or an IP range ("192.1.0.0",
"192.1.0.0/16", or "10.1.0.0/16:80"). 'localNet' also supports CIDR notation, excluding
custom ports.
If "type" is 'application' or 'applicationCategory', then "value" must be an object
with the structure { "id": "meraki:layer7/..." }, where "id" is the application category or
application ID (for a list of IDs for your network, use the trafficShaping/applicationCategories
endpoint).
required:
- type
- value
description: |2
A list of objects describing the definitions of your traffic shaping rule. At least one definition is required.
perClientBandwidthLimits:
type: object
properties:
settings:
type: string
description: How bandwidth limits are applied by your rule. Can be one of 'network default', 'ignore' or 'custom'.
bandwidthLimits:
type: object
properties:
limitUp:
type: integer
description: The maximum upload limit (integer, in Kbps).
limitDown:
type: integer
description: The maximum download limit (integer, in Kbps).
description: The bandwidth limits object, specifying the upload ('limitUp') and download ('limitDown') speed in Kbps. These are only enforced if 'settings' is set to 'custom'.
description: |2
An object describing the bandwidth settings for your rule.
dscpTagValue:
type: integer
description: |2
The DSCP tag applied by your rule. null means 'Do not change DSCP tag'.
For a list of possible tag values, use the trafficShaping/dscpTaggingOptions endpoint.
pcpTagValue:
type: integer
description: |2
The PCP tag applied by your rule. Can be 0 (lowest priority) through 7 (highest priority).
null means 'Do not set PCP tag'.
required:
- definitions
description: |2
An array of traffic shaping rules. Rules are applied in the order that
they are specified in. An empty list (or null) means no rules. Note that
you are allowed a maximum of 8 rules.
example:
trafficShapingEnabled: true
defaultRulesEnabled: true
rules:
- definitions:
- type: host
value: google.com
perClientBandwidthLimits:
settings: custom
bandwidthLimits:
limitUp: 1000000
limitDown: 1000000
dscpTagValue: 0
pcpTagValue: 0
summary: Display the traffic shaping settings for a SSID on an MR network
tags:
- wireless.configure
/networks/{networkId}/wireless/ssids/{number}/vpn:
get:
description: List the VPN settings for the SSID.
operationId: getNetworkWirelessSsidVpn
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
concentrator:
networkId: N_123
vlanId: 44
name: some concentrator name
failover:
requestIp: 1.1.1.1
heartbeatInterval: 10
idleTimeout: 30
splitTunnel:
enabled: true
rules:
- protocol: Any
destCidr: 1.1.1.1/32
destPort: any
policy: allow
comment: split tunnel rule 1
- destCidr: foo.com
destPort: any
policy: deny
comment: split tunnel rule 2
summary: List the VPN settings for the SSID.
tags:
- wireless.configure
put:
description: Update the VPN settings for the SSID
operationId: updateNetworkWirelessSsidVpn
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: number
in: path
description: Number
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
concentrator:
type: object
properties:
networkId:
type: string
description: The NAT ID of the concentrator that should be set.
vlanId:
type: integer
description: The VLAN that should be tagged for the concentrator.
description: The VPN concentrator settings for this SSID.
splitTunnel:
type: object
properties:
enabled:
type: boolean
description: If true, VPN split tunnel is enabled.
rules:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- Any
- TCP
- UDP
description: Protocol for this split tunnel rule.
destCidr:
type: string
description: Destination for this split tunnel rule. IP address, fully-qualified domain names (FQDN) or 'any'.
destPort:
type: string
description: Destination port for this split tunnel rule, (integer in the range 1-65535), or 'any'.
policy:
type: string
description: Traffic policy specified for this split tunnel rule, 'allow' or 'deny'.
comment:
type: string
description: Description for this split tunnel rule (optional).
required:
- destCidr
- policy
description: List of VPN split tunnel rules.
description: The VPN split tunnel settings for this SSID.
failover:
type: object
properties:
requestIp:
type: string
description: IP addressed reserved on DHCP server where SSID will terminate.
heartbeatInterval:
type: integer
description: Idle timer interval in seconds.
idleTimeout:
type: integer
description: Idle timer timeout in seconds.
description: Secondary VPN concentrator settings. This is only used when two VPN concentrators are configured on the SSID.
example:
concentrator:
networkId: N_123
vlanId: 44
name: some concentrator name
failover:
requestIp: 1.1.1.1
heartbeatInterval: 10
idleTimeout: 30
splitTunnel:
enabled: true
rules:
- protocol: Any
destCidr: 1.1.1.1/32
destPort: any
policy: allow
comment: split tunnel rule 1
- destCidr: foo.com
destPort: any
policy: deny
comment: split tunnel rule 2
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
concentrator:
networkId: N_123
vlanId: 44
name: some concentrator name
failover:
requestIp: 1.1.1.1
heartbeatInterval: 10
idleTimeout: 30
splitTunnel:
enabled: true
rules:
- protocol: Any
destCidr: 1.1.1.1/32
destPort: any
policy: allow
comment: split tunnel rule 1
- destCidr: foo.com
destPort: any
policy: deny
comment: split tunnel rule 2
summary: Update the VPN settings for the SSID
tags:
- wireless.configure
/networks/{networkId}/wireless/usageHistory:
get:
description: Return AP usage over time for a device or network client
operationId: getNetworkWirelessUsageHistory
parameters:
- name: networkId
in: path
description: Network ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: resolution
in: query
description: 'The time resolution in seconds for returned data. The valid resolutions are: 300, 600, 1200, 3600, 14400, 86400. The default is 86400.'
schema:
type: integer
- name: autoResolution
in: query
description: Automatically select a data resolution based on the given timespan; this overrides the value specified by the 'resolution' parameter. The default setting is false.
schema:
type: boolean
- name: clientId
in: query
description: Filter results by network client to return per-device AP usage over time inner joined by the queried client's connection history.
schema:
type: string
- name: deviceSerial
in: query
description: Filter results by device. Requires :band.
schema:
type: string
- name: apTag
in: query
description: Filter results by AP tag; either :clientId or :deviceSerial must be jointly specified.
schema:
type: string
- name: band
in: query
description: Filter results by band (either '2.4', '5' or '6').
schema:
type: string
enum:
- '2.4'
- '5'
- '6'
- name: ssid
in: query
description: Filter results by SSID number.
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the query range
endTs:
type: string
format: date-time
description: The end time of the query range
totalKbps:
type: integer
description: Total usage in kilobytes-per-second
sentKbps:
type: integer
description: Sent kilobytes-per-second
receivedKbps:
type: integer
description: Received kilobytes-per-second
example:
- startTs: '2020-01-01T00:00:00Z'
endTs: '2020-01-01T01:00:00Z'
totalKbps: 2590
sentKbps: 159
receivedKbps: 2431
summary: Return AP usage over time for a device or network client
tags:
- wireless.monitor
/organizations/{organizationId}/appliance/security/events:
get:
description: List the security events for an organization
operationId: getOrganizationApplianceSecurityEvents
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. Data is gathered after the specified t0 value. The maximum lookback period is 365 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 365 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 less than or equal to 365 days. The default is 31 days.
schema:
type: number
format: float
maximum: 31536000
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: sortOrder
in: query
description: Sorted order of security events based on event detection time. Order options are 'ascending' or 'descending'. Default is ascending order.
schema:
type: string
enum:
- ascending
- descending
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
additionalProperties: true
example:
- ts: '2018-02-11T00:00:00.090210Z'
eventType: File Scanned
clientName: COMPUTER-M-V78J
clientMac: 10:dd:b1:eb:88:f8
clientIp: 192.168.128.2
srcIp: 192.168.128.2
destIp: 119.192.233.48
protocol: http
uri: http://www.favorite-icons.com/program/FavoriteIconsUninstall.exe
canonicalName: PUA.Win.Dropper.Kraddare::1201
destinationPort: 80
fileHash: 3ec1b9a95fe62aa25fc959643a0f227b76d253094681934daaf628d3574b3463
fileType: MS_EXE
fileSizeBytes: 193688
disposition: Malicious
action: Blocked
- ts: '2018-02-11T00:00:00.090210Z'
eventType: IDS Alert
deviceMac: 00:18:0a:01:02:03
clientMac: A1:B2:C3:D4:E5:F6
srcIp: 1.2.3.4:34195
destIp: 10.20.30.40:80
protocol: tcp/ip
priority: '2'
classification: '4'
blocked: true
message: SERVER-WEBAPP JBoss JMX console access attempt
signature: '1:21516:9'
sigSource: ''
ruleId: meraki:intrusion/snort/GID/1/SID/26267
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the security events for an organization
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/security/intrusion:
get:
description: Returns all supported intrusion settings for an organization
operationId: getOrganizationApplianceSecurityIntrusion
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
allowedRules:
- ruleId: meraki:intrusion/snort/GID/01/SID/688
message: SQL sa login failed
- ruleId: meraki:intrusion/snort/GID/01/SID/5805
message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
summary: Returns all supported intrusion settings for an organization
tags:
- appliance.configure
put:
description: Sets supported intrusion settings for an organization
operationId: updateOrganizationApplianceSecurityIntrusion
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
allowedRules:
type: array
items:
type: object
properties:
ruleId:
type: string
description: A rule identifier of the format meraki:intrusion/snort/GID//SID/. gid and sid can be obtained from either https://www.snort.org/rule-docs or as ruleIds from the security events in /organization/[orgId]/securityEvents
message:
type: string
description: Message is optional and is ignored on a PUT call. It is allowed in order for PUT to be compatible with GET
required:
- ruleId
description: Sets a list of specific SNORT signatures to allow
example:
allowedRules:
- ruleId: meraki:intrusion/snort/GID/01/SID/688
message: SQL sa login failed
- ruleId: meraki:intrusion/snort/GID/01/SID/5805
message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
required:
- allowedRules
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
example:
allowedRules:
- ruleId: meraki:intrusion/snort/GID/01/SID/688
message: SQL sa login failed
- ruleId: meraki:intrusion/snort/GID/01/SID/5805
message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
summary: Sets supported intrusion settings for an organization
tags:
- appliance.configure
/organizations/{organizationId}/appliance/trafficShaping/vpnExclusions/byNetwork:
get:
description: Display VPN exclusion rules for MX networks.
operationId: getOrganizationApplianceTrafficShapingVpnExclusionsByNetwork
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 50.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter the results by network IDs
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
networkId:
type: string
description: ID of the network whose VPN exclusion rules are returned.
networkName:
type: string
description: Name of the network whose VPN exclusion rules are returned.
custom:
type: array
items:
type: object
properties:
protocol:
type: string
enum:
- any
- dns
- icmp
- tcp
- udp
description: Protocol.
destination:
type: string
description: Destination address; hostname required for DNS, IPv4 otherwise.
port:
type: string
description: Destination port.
required:
- protocol
- destination
- port
description: Custom VPN exclusion rules.
majorApplications:
type: array
items:
type: object
properties:
id:
type: string
description: Application's Meraki ID.
name:
type: string
enum:
- AWS
- Box
- Office 365 Sharepoint
- Office 365 Suite
- Oracle
- SAP
- Salesforce
- Skype & Teams
- Slack
- Webex
- Webex Calling
- Webex Meetings
- Zoom
description: Application's name.
required:
- id
- name
description: Major Application based VPN exclusion rules.
required:
- networkId
- networkName
- custom
- majorApplications
description: VPN exclusion rules by network
example:
items:
- networkId: N_24329156
networkName: Main Office
custom:
- protocol: tcp
destination: 192.168.3.0/24
port: '8000'
majorApplications:
- id: meraki:vpnExclusion/application/2
name: Office 365 Sharepoint
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Display VPN exclusion rules for MX networks.
tags:
- appliance.configure
/organizations/{organizationId}/appliance/uplink/statuses:
get:
description: List the uplink status of every Meraki MX and Z series appliances in the organization
operationId: getOrganizationApplianceUplinkStatuses
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: A list of network IDs. The returned devices will be filtered to only include these networks.
schema:
type: array
items:
type: string
- name: serials
in: query
description: A list of serial numbers. The returned devices will be filtered to only include these serials.
schema:
type: array
items:
type: string
- name: iccids
in: query
description: A list of ICCIDs. The returned devices will be filtered to only include these ICCIDs.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network identifier
serial:
type: string
description: The uplink serial
model:
type: string
description: The uplink model
lastReportedAt:
type: string
format: date-time
description: Last reported time for the device
highAvailability:
type: object
properties:
enabled:
type: boolean
description: Indicates whether High Availability is enabled for the device. For devices that do not support HA, this will be 'false'
role:
type: string
description: The HA role of the device on the network. For devices that do not support HA, this will be 'primary'
description: Device High Availability Capabilities
uplinks:
type: array
items:
type: object
properties:
interface:
type: string
enum:
- cellular
- wan1
- wan2
- wan3
description: Uplink interface
status:
type: string
enum:
- active
- connecting
- failed
- not connected
- ready
description: Uplink status
ip:
type: string
description: Uplink IP
gateway:
type: string
description: Gateway IP
publicIp:
type: string
description: Public IP
primaryDns:
type: string
description: Primary DNS IP
secondaryDns:
type: string
description: Secondary DNS IP
ipAssignedBy:
type: string
description: The way in which the IP is assigned
description: Uplinks
example:
- networkId: N_24329156
serial: Q234-ABCD-5678
model: MX68C
lastReportedAt: '2018-02-11T00:00:00Z'
highAvailability:
enabled: true
role: primary
uplinks:
- interface: wan1
status: active
ip: 1.2.3.4
gateway: 1.2.3.5
publicIp: 123.123.123.1
primaryDns: 8.8.8.8
secondaryDns: 8.8.4.4
ipAssignedBy: static
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the uplink status of every Meraki MX and Z series appliances in the organization
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/uplinks/statuses/overview:
get:
description: Returns an overview of uplink statuses
operationId: getOrganizationApplianceUplinksStatusesOverview
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
counts:
type: object
properties:
byStatus:
type: object
properties:
active:
type: integer
description: number of uplinks that are active and working
ready:
type: integer
description: number of uplinks that are working but on standby
failed:
type: integer
description: number of uplinks that were working but have failed
connecting:
type: integer
description: number of uplinks currently connecting
notConnected:
type: integer
description: number of uplinks currently where nothing is plugged in
description: byStatus
description: counts
example:
counts:
byStatus:
active: 5
ready: 5
failed: 4
connecting: 2
notConnected: 1
summary: Returns an overview of uplink statuses
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/uplinks/usage/byNetwork:
get:
description: Get the sent and received bytes for each uplink of all MX and Z networks within an organization. If more than one device was active during the specified timespan, then the sent and received bytes will be aggregated by interface.
operationId: getOrganizationApplianceUplinksUsageByNetwork
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 365 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 less than or equal to 14 days. The default is 1 day.
schema:
type: number
format: float
maximum: 1209600
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network identifier
name:
type: string
description: Network name
byUplink:
type: array
items:
type: object
properties:
serial:
type: string
description: Uplink serial
interface:
type: string
description: Uplink name
sent:
type: integer
description: Bytes sent
received:
type: integer
description: Bytes received
description: Uplink usage
example:
- networkId: N_24329156
name: Main Office
byUplink:
- serial: Q234-ABCD-5678
interface: wan1
sent: 200
received: 400
summary: Get the sent and received bytes for each uplink of all MX and Z networks within an organization
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/vpn/stats:
get:
description: Show VPN history stat for networks in an organization
operationId: getOrganizationApplianceVpnStats
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 300. Default is 300.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: 'A list of Meraki network IDs to filter results to contain only specified networks. E.g.: networkIds[]=N_12345678&networkIds[]=L_3456'
schema:
type: array
items:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
example:
- networkId: N_12345678
networkName: San Francisco Office
merakiVpnPeers:
- networkId: L_23456789
networkName: New York Office
usageSummary:
receivedInKilobytes: 1234567
sentInKilobytes: 2345678
latencySummaries:
- senderUplink: wan1
receiverUplink: wan1
avgLatencyMs: 15
minLatencyMs: 10
maxLatencyMs: 30
- senderUplink: wan2
receiverUplink: wan1
avgLatencyMs: 15
minLatencyMs: 10
maxLatencyMs: 30
lossPercentageSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgLossPercentage: 0
minLossPercentage: 0
maxLossPercentage: 0.1
- senderUplink: wan2
receiverUplink: wan1
avgLossPercentage: 0
minLossPercentage: 0
maxLossPercentage: 0.1
jitterSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgJitter: 0.01
minJitter: 0
maxJitter: 0.25
- senderUplink: wan2
receiverUplink: wan1
avgJitter: 0.01
minJitter: 0
maxJitter: 0.25
mosSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgMos: 4.1
minMos: 4
maxMos: 4.2
- senderUplink: wan2
receiverUplink: wan1
avgMos: 4.1
minMos: 4
maxMos: 4.2
- networkId: L_23456789
networkName: New York Office
merakiVpnPeers:
- networkId: N_12345678
networkName: San Francisco Office
usageSummary:
receivedInKilobytes: 2345678
sentInKilobytes: 1234567
latencySummaries:
- senderUplink: wan1
receiverUplink: wan1
avgLatencyMs: 15
minLatencyMs: 10
maxLatencyMs: 30
- senderUplink: wan1
receiverUplink: wan2
avgLatencyMs: 15
minLatencyMs: 10
maxLatencyMs: 30
lossPercentageSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgLossPercentage: 0
minLossPercentage: 0
maxLossPercentage: 0.1
- senderUplink: wan1
receiverUplink: wan2
avgLossPercentage: 0
minLossPercentage: 0
maxLossPercentage: 0.1
jitterSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgJitter: 0.01
minJitter: 0
maxJitter: 0.25
- senderUplink: wan1
receiverUplink: wan2
avgJitter: 0.01
minJitter: 0
maxJitter: 0.25
mosSummaries:
- senderUplink: wan1
receiverUplink: wan1
avgMos: 4.1
minMos: 4
maxMos: 4.2
- senderUplink: wan1
receiverUplink: wan2
avgMos: 4.1
minMos: 4
maxMos: 4.2
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Show VPN history stat for networks in an organization
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/vpn/statuses:
get:
description: Show VPN status for networks in an organization
operationId: getOrganizationApplianceVpnStatuses
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 300. Default is 300.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: 'A list of Meraki network IDs to filter results to contain only specified networks. E.g.: networkIds[]=N_12345678&networkIds[]=L_3456'
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
vpnstatusentities:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network Id
networkName:
type: string
description: Network name
deviceSerial:
type: string
description: Serial number of the device
deviceStatus:
type: string
description: Device Status
uplinks:
type: array
items:
type: object
properties:
interface:
type: string
description: Uplink Interface Name
publicIp:
type: string
description: Uplink IP address (in IP or CIDR notation)
description: List of Uplink Information
vpnMode:
type: string
description: VPN Mode
exportedSubnets:
type: array
items:
type: object
properties:
subnet:
type: string
description: Subnet
name:
type: string
description: Name of the subnet
description: List of Exported Subnets
merakiVpnPeers:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network ID
networkName:
type: string
description: Network Name
reachability:
type: string
description: Reachability
description: Meraki VPN Peers
thirdPartyVpnPeers:
type: array
items:
type: object
properties:
name:
type: string
description: Name of the peer
publicIp:
type: string
description: Public IP of the peer
reachability:
type: string
description: Reachability
description: Third Party VPN Peers
description: The list of VPN Status for networks
example:
vpnstatusentities:
- networkId: N_12345678
networkName: San Francisco Office
deviceSerial: Q234-ABCD-1234
deviceStatus: online
uplinks:
- interface: wan1
publicIp: 1.2.3.4
vpnMode: hub
exportedSubnets:
- subnet: 192.168.0.0/24
name: sales-vlan
merakiVpnPeers:
- networkId: L_1234
networkName: New York Office
reachability: reachable
thirdPartyVpnPeers:
- name: Tokyo Office
publicIp: 222.111.222.111
reachability: reachable
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Show VPN status for networks in an organization
tags:
- appliance.monitor
/organizations/{organizationId}/appliance/vpn/thirdPartyVPNPeers:
get:
description: Return the third party VPN peers for an organization
operationId: getOrganizationApplianceVpnThirdPartyVPNPeers
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
peers:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the VPN peer
publicIp:
type: string
description: '[optional] The public IP of the VPN peer'
remoteId:
type: string
description: '[optional] The remote ID is used to identify the connecting VPN peer. This can either be a valid IPv4 Address, FQDN or User FQDN.'
localId:
type: string
description: '[optional] The local ID is used to identify the MX to the peer. This will apply to all MXs this peer applies to.'
secret:
type: string
description: The shared secret with the VPN peer
privateSubnets:
type: array
items:
type: string
description: The list of the private subnets of the VPN peer
ipsecPolicies:
type: object
properties:
ikeCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- tripledes
description: 'This is the cipher algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'''
ikeAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
ikePrfAlgo:
type: array
items:
type: string
enum:
- default
- prfmd5
- prfsha1
- prfsha256
description: '[optional] This is the pseudo-random function to be used in IKE_SA. The value should be an array with one of the following algorithms: ''prfsha256'', ''prfsha1'', ''prfmd5'', ''default''. The ''default'' option can be used to default to the Authentication algorithm.'
ikeDiffieHellmanGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used in Phase 1. The value should be an array with one of the following algorithms: ''group14'', ''group5'', ''group2'', ''group1'''
ikeLifetime:
type: integer
description: The lifetime of the Phase 1 SA in seconds.
childCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- 'null'
- tripledes
description: 'This is the cipher algorithms to be used in Phase 2. The value should be an array with one or more of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'', ''null'''
childAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithms to be used in Phase 2. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
childPfsGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used for Perfect Forward Secrecy in Phase 2. The value should be an array with one of the following values: ''disabled'',''group14'', ''group5'', ''group2'', ''group1'''
childLifetime:
type: integer
description: The lifetime of the Phase 2 SA in seconds.
description: Custom IPSec policies for the VPN peer. If not included and a preset has not been chosen, the default preset for IPSec policies will be used.
ipsecPoliciesPreset:
type: string
description: 'One of the following available presets: ''default'', ''aws'', ''azure'', ''umbrella'', ''zscaler''. If this is provided, the ''ipsecPolicies'' parameter is ignored.'
ikeVersion:
type: string
enum:
- '1'
- '2'
description: '[optional] The IKE version to be used for the IPsec VPN peer configuration. Defaults to ''1'' when omitted.'
default: '1'
networkTags:
type: array
items:
type: string
description: A list of network tags that will connect with this peer. Use ['all'] for all networks. Use ['none'] for no networks. If not included, the default is ['all'].
description: The list of VPN peers
example:
peers:
- name: Peer Name
publicIp: 123.123.123.1
remoteId: miles@meraki.com
localId: myMXId@meraki.com
secret: secret
privateSubnets:
- 192.168.1.0/24
- 192.168.128.0/24
ipsecPolicies:
ikeCipherAlgo:
- tripledes
ikeAuthAlgo:
- sha1
ikePrfAlgo:
- prfsha1
ikeDiffieHellmanGroup:
- group2
ikeLifetime: 28800
childCipherAlgo:
- aes128
childAuthAlgo:
- sha1
childPfsGroup:
- disabled
childLifetime: 28800
ipsecPoliciesPreset: custom
ikeVersion: '1'
networkTags:
- all
summary: Return the third party VPN peers for an organization
tags:
- appliance.configure
put:
description: Update the third party VPN peers for an organization
operationId: updateOrganizationApplianceVpnThirdPartyVPNPeers
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
peers:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the VPN peer
publicIp:
type: string
description: '[optional] The public IP of the VPN peer'
publicHostname:
type: string
description: '[optional] The public hostname of the VPN peer'
privateSubnets:
type: array
items:
type: string
description: The list of the private subnets of the VPN peer
localId:
type: string
description: '[optional] The local ID is used to identify the MX to the peer. This will apply to all MXs this peer applies to.'
remoteId:
type: string
description: '[optional] The remote ID is used to identify the connecting VPN peer. This can either be a valid IPv4 Address, FQDN or User FQDN.'
ipsecPolicies:
type: object
properties:
ikeCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- tripledes
description: 'This is the cipher algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'''
ikeAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
ikePrfAlgo:
type: array
items:
type: string
enum:
- default
- prfmd5
- prfsha1
- prfsha256
description: '[optional] This is the pseudo-random function to be used in IKE_SA. The value should be an array with one of the following algorithms: ''prfsha256'', ''prfsha1'', ''prfmd5'', ''default''. The ''default'' option can be used to default to the Authentication algorithm.'
ikeDiffieHellmanGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used in Phase 1. The value should be an array with one of the following algorithms: ''group14'', ''group5'', ''group2'', ''group1'''
ikeLifetime:
type: integer
description: The lifetime of the Phase 1 SA in seconds.
childCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- 'null'
- tripledes
description: 'This is the cipher algorithms to be used in Phase 2. The value should be an array with one or more of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'', ''null'''
childAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithms to be used in Phase 2. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
childPfsGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used for Perfect Forward Secrecy in Phase 2. The value should be an array with one of the following values: ''disabled'',''group14'', ''group5'', ''group2'', ''group1'''
childLifetime:
type: integer
description: The lifetime of the Phase 2 SA in seconds.
description: Custom IPSec policies for the VPN peer. If not included and a preset has not been chosen, the default preset for IPSec policies will be used.
ipsecPoliciesPreset:
type: string
description: 'One of the following available presets: ''default'', ''aws'', ''azure'', ''umbrella'', ''zscaler''. If this is provided, the ''ipsecPolicies'' parameter is ignored.'
secret:
type: string
description: The shared secret with the VPN peer
ikeVersion:
type: string
enum:
- '1'
- '2'
description: '[optional] The IKE version to be used for the IPsec VPN peer configuration. Defaults to ''1'' when omitted.'
default: '1'
networkTags:
type: array
items:
type: string
description: A list of network tags that will connect with this peer. Use ['all'] for all networks. Use ['none'] for no networks. If not included, the default is ['all'].
required:
- name
- privateSubnets
- secret
description: The list of VPN peers
example:
peers:
- name: Peer Name
publicIp: 123.123.123.1
publicHostname: example.com
privateSubnets:
- 192.168.1.0/24
- 192.168.128.0/24
localId: myMXId@meraki.com
remoteId: miles@meraki.com
ipsecPolicies:
ikeCipherAlgo:
- tripledes
ikeAuthAlgo:
- sha1
ikePrfAlgo:
- prfsha1
ikeDiffieHellmanGroup:
- group2
ikeLifetime: 28800
childCipherAlgo:
- aes128
childAuthAlgo:
- sha1
childPfsGroup:
- disabled
childLifetime: 28800
ipsecPoliciesPreset: default
secret: Sample Password
ikeVersion: '2'
networkTags:
- none
required:
- peers
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
peers:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the VPN peer
publicIp:
type: string
description: '[optional] The public IP of the VPN peer'
remoteId:
type: string
description: '[optional] The remote ID is used to identify the connecting VPN peer. This can either be a valid IPv4 Address, FQDN or User FQDN.'
localId:
type: string
description: '[optional] The local ID is used to identify the MX to the peer. This will apply to all MXs this peer applies to.'
secret:
type: string
description: The shared secret with the VPN peer
privateSubnets:
type: array
items:
type: string
description: The list of the private subnets of the VPN peer
ipsecPolicies:
type: object
properties:
ikeCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- tripledes
description: 'This is the cipher algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'''
ikeAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithm to be used in Phase 1. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
ikePrfAlgo:
type: array
items:
type: string
enum:
- default
- prfmd5
- prfsha1
- prfsha256
description: '[optional] This is the pseudo-random function to be used in IKE_SA. The value should be an array with one of the following algorithms: ''prfsha256'', ''prfsha1'', ''prfmd5'', ''default''. The ''default'' option can be used to default to the Authentication algorithm.'
ikeDiffieHellmanGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used in Phase 1. The value should be an array with one of the following algorithms: ''group14'', ''group5'', ''group2'', ''group1'''
ikeLifetime:
type: integer
description: The lifetime of the Phase 1 SA in seconds.
childCipherAlgo:
type: array
items:
type: string
enum:
- aes128
- aes192
- aes256
- des
- 'null'
- tripledes
description: 'This is the cipher algorithms to be used in Phase 2. The value should be an array with one or more of the following algorithms: ''aes256'', ''aes192'', ''aes128'', ''tripledes'', ''des'', ''null'''
childAuthAlgo:
type: array
items:
type: string
enum:
- md5
- sha1
- sha256
description: 'This is the authentication algorithms to be used in Phase 2. The value should be an array with one of the following algorithms: ''sha256'', ''sha1'', ''md5'''
childPfsGroup:
type: array
items:
type: string
description: 'This is the Diffie-Hellman group to be used for Perfect Forward Secrecy in Phase 2. The value should be an array with one of the following values: ''disabled'',''group14'', ''group5'', ''group2'', ''group1'''
childLifetime:
type: integer
description: The lifetime of the Phase 2 SA in seconds.
description: Custom IPSec policies for the VPN peer. If not included and a preset has not been chosen, the default preset for IPSec policies will be used.
ipsecPoliciesPreset:
type: string
description: 'One of the following available presets: ''default'', ''aws'', ''azure'', ''umbrella'', ''zscaler''. If this is provided, the ''ipsecPolicies'' parameter is ignored.'
ikeVersion:
type: string
enum:
- '1'
- '2'
description: '[optional] The IKE version to be used for the IPsec VPN peer configuration. Defaults to ''1'' when omitted.'
default: '1'
networkTags:
type: array
items:
type: string
description: A list of network tags that will connect with this peer. Use ['all'] for all networks. Use ['none'] for no networks. If not included, the default is ['all'].
description: The list of VPN peers
example:
peers:
- name: Peer Name
publicIp: 123.123.123.1
remoteId: miles@meraki.com
localId: myMXId@meraki.com
secret: secret
privateSubnets:
- 192.168.1.0/24
- 192.168.128.0/24
ipsecPolicies:
ikeCipherAlgo:
- tripledes
ikeAuthAlgo:
- sha1
ikePrfAlgo:
- prfsha1
ikeDiffieHellmanGroup:
- group2
ikeLifetime: 28800
childCipherAlgo:
- aes128
childAuthAlgo:
- sha1
childPfsGroup:
- disabled
childLifetime: 28800
ipsecPoliciesPreset: custom
ikeVersion: '1'
networkTags:
- all
summary: Update the third party VPN peers for an organization
tags:
- appliance.configure
/organizations/{organizationId}/appliance/vpn/vpnFirewallRules:
get:
description: Return the firewall rules for an organization's site-to-site VPN
operationId: getOrganizationApplianceVpnVpnFirewallRules
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
summary: Return the firewall rules for an organization's site-to-site VPN
tags:
- appliance.configure
put:
description: Update the firewall rules of an organization's site-to-site VPN
operationId: updateOrganizationApplianceVpnVpnFirewallRules
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
enum:
- allow
- deny
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
enum:
- any
- icmp
- icmp6
- tcp
- udp
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: Comma-separated list of source IP address(es) (in IP or CIDR notation), or 'any' (FQDN not supported)
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation) or 'any' (FQDN not supported)
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
required:
- policy
- protocol
- srcCidr
- destCidr
description: An ordered array of the firewall rules (not including the default rule)
syslogDefaultRule:
type: boolean
description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
syslogDefaultRule: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
rules:
type: array
items:
type: object
properties:
comment:
type: string
description: Description of the rule (optional)
policy:
type: string
description: '''allow'' or ''deny'' traffic specified by this rule'
protocol:
type: string
description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
srcPort:
type: string
description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
srcCidr:
type: string
description: 'Comma-separated list of source IP address(es) (in IP or CIDR notation), or ''any'' (note: FQDN not supported for source addresses)'
destPort:
type: string
description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
destCidr:
type: string
description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
syslogEnabled:
type: boolean
description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
description: An ordered array of the firewall rules (not including the default rule)
example:
rules:
- comment: Allow TCP traffic to subnet with HTTP servers.
policy: allow
protocol: tcp
srcPort: Any
srcCidr: Any
destPort: '443'
destCidr: 192.168.1.0/24
syslogEnabled: false
summary: Update the firewall rules of an organization's site-to-site VPN
tags:
- appliance.configure
/organizations/{organizationId}/cellularGateway/esims/inventory:
get:
description: The eSIM inventory of a given organization.
operationId: getOrganizationCellularGatewayEsimsInventory
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: eids
in: query
description: Optional parameter to filter the results by EID.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
items:
type: array
items:
type: object
properties:
device:
type: object
properties:
name:
type: string
description: Device name
model:
type: string
description: Device model
serial:
type: string
description: Device serial number
url:
type: string
description: Device URL
status:
type: string
description: Device status
description: Meraki Device properties
active:
type: boolean
description: Whether eSIM is currently active SIM on Device
eid:
type: string
description: eSIM EID
lastUpdatedAt:
type: string
description: Last update of eSIM
network:
type: object
properties:
id:
type: string
description: Network ID for this eSIM
description: Meraki Network properties
profiles:
type: array
items:
type: object
properties:
customApns:
type: array
items:
type: string
description: Available custom APNs for the profile
iccid:
type: string
description: eSIM profile ID
status:
type: string
description: eSIM profile status
serviceProvider:
type: object
properties:
name:
type: string
description: Service Provider name
plans:
type: array
items:
type: object
properties:
name:
type: string
description: Plan name
type:
type: string
description: Plan type (communication, rate)
description: Plans currently active on the eSIM
description: Service Provider information
description: eSIM Profile Information
description: List of eSIM Devices
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of eSIM Devices
remaining:
type: integer
description: Remaining number of eSIM Devices
description: Count of eSIM Devices available
description: Counts of involved entities
description: Meta details about the result
example:
- items:
- device:
name: My cellular gateway
model: mg52
serial: Q234-ABCD-5678
url: https://n1.meraki.com//n//manage/nodes/new_list/000000000000
status: online
active: true
eid: '89000000000000000000000000000000'
lastUpdatedAt: '2023-02-01T00:00:00Z'
network:
id: N_24329156
profiles:
- customApns:
- internet
iccid: '8900000000000000000'
status: activated
serviceProvider:
name: ATT
plans:
- name: 1 Cisco IoT SDO AT&T eSIM Test Plan downloadable
type: communication
meta:
counts:
items:
total: 1
remaining: 0
summary: The eSIM inventory of a given organization.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/inventory/{id}:
put:
description: Toggle the status of an eSIM
operationId: updateOrganizationCellularGatewayEsimsInventory
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: id
in: path
description: ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
status:
type: string
description: Status the eSIM will be updated to
example:
status: activated
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
device:
type: object
properties:
name:
type: string
description: Device name
model:
type: string
description: Device model
serial:
type: string
description: Device serial number
url:
type: string
description: Device URL
status:
type: string
description: Device status
description: Meraki Device properties
active:
type: boolean
description: Whether eSIM is currently active SIM on Device
eid:
type: string
description: eSIM EID
lastUpdatedAt:
type: string
description: Last update of eSIM
network:
type: object
properties:
id:
type: string
description: Network ID for this eSIM
description: Meraki Network properties
profiles:
type: array
items:
type: object
properties:
customApns:
type: array
items:
type: string
description: Available custom APNs for the profile
iccid:
type: string
description: eSIM profile ID
status:
type: string
description: eSIM profile status
serviceProvider:
type: object
properties:
name:
type: string
description: Service Provider name
plans:
type: array
items:
type: object
properties:
name:
type: string
description: Plan name
type:
type: string
description: Plan type (communication, rate)
description: Plans currently active on the eSIM
description: Service Provider information
description: eSIM Profile Information
example:
device:
name: My cellular gateway
model: mg52
serial: Q234-ABCD-5678
url: https://n1.meraki.com//n//manage/nodes/new_list/000000000000
status: online
active: true
eid: '89000000000000000000000000000000'
lastUpdatedAt: '2023-02-01T00:00:00Z'
network:
id: N_24329156
profiles:
- customApns:
- internet
iccid: '8900000000000000000'
status: activated
serviceProvider:
name: ATT
plans:
- name: 1 Cisco IoT SDO AT&T eSIM Test Plan downloadable
type: communication
summary: Toggle the status of an eSIM
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/serviceProviders:
get:
description: Service providers customers can add accounts for.
operationId: getOrganizationCellularGatewayEsimsServiceProviders
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
name:
type: string
description: Service provider name.
logo:
type: object
properties:
url:
type: string
description: URL of service provider's logo.
description: Service Provider logo data.
isBootstrap:
type: boolean
description: Indicates if service provider is the bootstrap provider.
terms:
type: object
properties:
content:
type: string
description: URL of service provider's terms.
name:
type: string
description: Label for service provider's terms.
description: Service provider terms.
description: List Cellular Service Providers
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of Service Providers
remaining:
type: integer
description: Remaining number of Service Providers
description: Service Providers available
description: Counts of involved entities
description: Meta details about the result
example:
items:
- name: AT&T
logo:
url: Logo URL
isBootstrap: false
terms:
content: Legal jargon
name: AT&T Terms and Conditions
meta:
counts:
items:
total: 42
remaining: 0
summary: Service providers customers can add accounts for.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/serviceProviders/accounts:
get:
description: Inventory of service provider accounts tied to the organization.
operationId: getOrganizationCellularGatewayEsimsServiceProvidersAccounts
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: accountIds
in: query
description: Optional parameter to filter the results by service provider account IDs.
schema:
type: array
items:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
items:
type: array
items:
type: object
properties:
accountId:
type: string
description: Service provider account ID
lastUpdatedAt:
type: string
description: Last updated at
serviceProvider:
type: object
properties:
name:
type: string
description: Name of the service provider.
logo:
type: object
properties:
url:
type: string
description: Service Provider logo url.
description: Service provider logo data.
description: Service provider data.
title:
type: string
description: Service provider account name
username:
type: string
description: Service provider account username
description: IList of Cellular Service Provider Accounts
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of Cellular Service Providers
remaining:
type: integer
description: Remaining number of Cellular Service Providers
description: Count of Cellular Service Providers available
description: Counts of involved entities
description: Meta details about the result
example:
- items:
- accountId: '0987654321'
lastUpdatedAt: '2023-08-21T00:00:00Z'
serviceProvider:
name: ATT
logo:
url: serviceproviderlogo.url
title: My AT&T account
username: MerakiUser
meta:
counts:
items:
total: 1
remaining: 0
summary: Inventory of service provider accounts tied to the organization.
tags:
- cellularGateway.configure
post:
description: Add a service provider account.
operationId: createOrganizationCellularGatewayEsimsServiceProvidersAccount
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
accountId:
type: string
description: Service provider account ID
apiKey:
type: string
description: Service provider account API key
serviceProvider:
type: object
properties:
name:
type: string
description: Service provider name
description: Service Provider information
title:
type: string
description: Service provider account name
username:
type: string
description: Service provider account username
example:
accountId: '0987654321'
apiKey: foobarfoobarfoobarfoobarfoobarfoobar
serviceProvider:
name: ATT
title: My AT&T account
username: MerakiUser
required:
- accountId
- apiKey
- serviceProvider
- title
- username
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
accountId:
type: string
description: Service provider account ID
lastUpdatedAt:
type: string
description: Last updated at
serviceProvider:
type: object
properties:
name:
type: string
description: Name of the service provider.
logo:
type: object
properties:
url:
type: string
description: Service Provider logo url.
description: Service provider logo data.
description: Service provider data.
title:
type: string
description: Service provider account name
username:
type: string
description: Service provider account username
example:
accountId: '0987654321'
lastUpdatedAt: '2023-08-21T00:00:00Z'
serviceProvider:
name: ATT
logo:
url: serviceproviderlogo.url
title: My AT&T account
username: MerakiUser
summary: Add a service provider account.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/serviceProviders/accounts/communicationPlans:
get:
description: The communication plans available for a given provider.
operationId: getOrganizationCellularGatewayEsimsServiceProvidersAccountsCommunicationPlans
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: accountIds
in: query
required: true
description: Account IDs that communication plans will be fetched for
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
accountId:
type: string
description: Account ID of plans to be fetched
apns:
type: array
items:
type: object
properties:
name:
type: string
description: APN name
description: Available APNs
name:
type: string
description: Communication plan name
description: List of Cellular Service Provider Communication Plans
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of Communication Plans
remaining:
type: integer
description: Remaining number of Communication Plans
description: Count of Communication Plans available
description: Counts of involved entities
description: Meta details about the result
example:
items:
- accountId: some account ID
apns:
- name: Some APN
name: A communication plan
meta:
counts:
items:
total: 2
remaining: 0
summary: The communication plans available for a given provider.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/serviceProviders/accounts/ratePlans:
get:
description: The rate plans available for a given provider.
operationId: getOrganizationCellularGatewayEsimsServiceProvidersAccountsRatePlans
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: accountIds
in: query
required: true
description: Account IDs that rate plans will be fetched for
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
accountId:
type: string
description: Account ID of plans to be fetched
name:
type: string
description: Rate plan name
description: List of Cellular Service Provider Rate Plans
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of Rate Plans
remaining:
type: integer
description: Remaining number of Rate Plans
description: Count of Rate Plans available
description: Counts of involved entities
description: Meta details about the result
example:
items:
- accountId: account ID
name: A rate plan
meta:
counts:
items:
total: 2
remaining: 0
summary: The rate plans available for a given provider.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/serviceProviders/accounts/{accountId}:
put:
description: Edit service provider account info stored in Meraki's database.
operationId: updateOrganizationCellularGatewayEsimsServiceProvidersAccount
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: accountId
in: path
description: Account ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
title:
type: string
description: Service provider account name used on the Meraki UI
apiKey:
type: string
description: Service provider account API key
example:
title: My AT&T account
apiKey: foobarfoobarfoobarfoobarfoobarfoobar
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
accountId:
type: string
description: Service provider account ID
lastUpdatedAt:
type: string
description: Last updated at
serviceProvider:
type: object
properties:
name:
type: string
description: Name of the service provider.
logo:
type: object
properties:
url:
type: string
description: Service Provider logo url.
description: Service provider logo data.
description: Service provider data.
title:
type: string
description: Service provider account name
username:
type: string
description: Service provider account username
example:
accountId: '0987654321'
lastUpdatedAt: '2023-08-21T00:00:00Z'
serviceProvider:
name: ATT
logo:
url: serviceproviderlogo.url
title: My AT&T account
username: MerakiUser
summary: Edit service provider account info stored in Meraki's database.
tags:
- cellularGateway.configure
delete:
description: Remove a service provider account's integration with the Dashboard.
operationId: deleteOrganizationCellularGatewayEsimsServiceProvidersAccount
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: accountId
in: path
description: Account ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Remove a service provider account's integration with the Dashboard.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/swap:
post:
description: Swap which profile an eSIM uses.
operationId: createOrganizationCellularGatewayEsimsSwap
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
swaps:
type: array
items:
type: object
properties:
eid:
type: string
description: eSIM EID
target:
type: object
properties:
accountId:
type: string
description: ID of the target account; can be the account currently tied to the eSIM
communicationPlan:
type: string
description: Name of the target communication plan
ratePlan:
type: string
description: Name of the target rate plan
required:
- accountId
- communicationPlan
- ratePlan
description: Target Profile attributes
required:
- eid
description: Each object represents a swap for one eSIM
example:
swaps:
- eid: '1234567890'
target:
accountId: '456'
communicationPlan: A comm plan
ratePlan: A rate plan
required:
- swaps
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
eid:
type: string
description: eSIM EID
iccid:
type: string
description: eSIM ICCID
status:
type: string
enum:
- Completed
- Failed
- In progress
description: Swap status
required:
- eid
- iccid
- status
example:
eid: '1234567890'
iccid: '9876543210'
status: Completed
summary: Swap which profile an eSIM uses.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/esims/swap/{id}:
put:
description: Get the status of a profile swap.
operationId: updateOrganizationCellularGatewayEsimsSwap
parameters:
- name: id
in: path
required: true
description: eSIM EID
schema:
type: string
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
eid:
type: string
description: eSIM EID
iccid:
type: string
description: eSIM ICCID
status:
type: string
enum:
- Completed
- Failed
- In progress
description: Swap status
required:
- eid
- iccid
- status
example:
eid: '1234567890'
iccid: '9876543210'
status: Completed
summary: Get the status of a profile swap.
tags:
- cellularGateway.configure
/organizations/{organizationId}/cellularGateway/uplink/statuses:
get:
description: List the uplink status of every Meraki MG cellular gateway in the organization
operationId: getOrganizationCellularGatewayUplinkStatuses
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: A list of network IDs. The returned devices will be filtered to only include these networks.
schema:
type: array
items:
type: string
- name: serials
in: query
description: A list of serial numbers. The returned devices will be filtered to only include these serials.
schema:
type: array
items:
type: string
- name: iccids
in: query
description: A list of ICCIDs. The returned devices will be filtered to only include these ICCIDs.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network Id
serial:
type: string
description: Serial number of the device
model:
type: string
description: Device model
lastReportedAt:
type: string
format: date-time
description: Last reported time for the device
uplinks:
type: array
items:
type: object
properties:
interface:
type: string
description: Uplink interface
status:
type: string
description: Uplink status
ip:
type: string
description: Uplink IP
provider:
type: string
description: Network Provider
publicIp:
type: string
description: Public IP
model:
type: string
description: Uplink model
signalStat:
type: object
properties:
rsrp:
type: string
description: Reference Signal Received Power
rsrq:
type: string
description: Reference Signal Received Quality
description: Tower Signal Status
connectionType:
type: string
description: Connection Type
apn:
type: string
description: Access Point Name
gateway:
type: string
description: Gateway IP
dns1:
type: string
description: Primary DNS IP
dns2:
type: string
description: Secondary DNS IP
signalType:
type: string
description: Signal Type
iccid:
type: string
description: Integrated Circuit Card Identification Number
description: Uplinks info
example:
- networkId: N_24329156
serial: Q234-ABCD-5678
model: MG21
lastReportedAt: '2018-02-11T00:00:00Z'
uplinks:
- interface: cellular
status: ready
ip: 1.2.3.4
provider: at&t
publicIp: 123.123.123.1
model: integrated
signalStat:
rsrp: '-120'
rsrq: '-13'
connectionType: 4g
apn: internet
gateway: 100.100.100.100
dns1: 111.111.111.111
dns2: 222.222.222.222
signalType: 4G
iccid: '123456789'
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the uplink status of every Meraki MG cellular gateway in the organization
tags:
- cellularGateway.monitor
/organizations/{organizationId}/configTemplates/{configTemplateId}/switch/profiles:
get:
description: List the switch templates for your switch template configuration
operationId: getOrganizationConfigTemplateSwitchProfiles
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: configTemplateId
in: path
description: Config template ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
switchProfileId:
type: string
description: Switch template id
name:
type: string
description: Switch template name
model:
type: string
description: Switch model
example:
- switchProfileId: '1234'
name: A Simple Switch Template
model: MS450-24
summary: List the switch templates for your switch template configuration
tags:
- switch.configure
/organizations/{organizationId}/configTemplates/{configTemplateId}/switch/profiles/{profileId}/ports:
get:
description: Return all the ports of a switch template
operationId: getOrganizationConfigTemplateSwitchProfilePorts
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: configTemplateId
in: path
description: Config template ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
portId:
type: string
description: The identifier of the switch template port.
name:
type: string
description: The name of the switch template port.
tags:
type: array
items:
type: string
description: The list of tags of the switch template port.
enabled:
type: boolean
description: The status of the switch template port.
poeEnabled:
type: boolean
description: The PoE status of the switch template port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch template port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch template port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch template port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch template port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch template port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch template port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch template port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch template port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch template port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch template port.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch template port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
- portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: Return all the ports of a switch template
tags:
- switch.configure
/organizations/{organizationId}/configTemplates/{configTemplateId}/switch/profiles/{profileId}/ports/{portId}:
get:
description: Return a switch template port
operationId: getOrganizationConfigTemplateSwitchProfilePort
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: configTemplateId
in: path
description: Config template ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
portId:
type: string
description: The identifier of the switch template port.
name:
type: string
description: The name of the switch template port.
tags:
type: array
items:
type: string
description: The list of tags of the switch template port.
enabled:
type: boolean
description: The status of the switch template port.
poeEnabled:
type: boolean
description: The PoE status of the switch template port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch template port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch template port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch template port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch template port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch template port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch template port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch template port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch template port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch template port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch template port.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch template port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: Return a switch template port
tags:
- switch.configure
put:
description: Update a switch template port
operationId: updateOrganizationConfigTemplateSwitchProfilePort
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: configTemplateId
in: path
description: Config template ID
schema:
type: string
required: true
- name: profileId
in: path
description: Profile ID
schema:
type: string
required: true
- name: portId
in: path
description: Port ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the switch template port.
tags:
type: array
items:
type: string
description: The list of tags of the switch template port.
enabled:
type: boolean
description: The status of the switch template port.
poeEnabled:
type: boolean
description: The PoE status of the switch template port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch template port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch template port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch template port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch template port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch template port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch template port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch template port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch template port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch template port.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch template port.
description: dot3az settings for the port
example:
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
portScheduleId: '1234'
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
dot3az:
enabled: false
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
portId:
type: string
description: The identifier of the switch template port.
name:
type: string
description: The name of the switch template port.
tags:
type: array
items:
type: string
description: The list of tags of the switch template port.
enabled:
type: boolean
description: The status of the switch template port.
poeEnabled:
type: boolean
description: The PoE status of the switch template port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch template port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch template port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch template port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch template port. Only applicable to trunk ports.
isolationEnabled:
type: boolean
description: The isolation status of the switch template port.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch template port.
linkNegotiationCapabilities:
type: array
items:
type: string
description: Available link speeds for the switch template port.
portScheduleId:
type: string
description: The ID of the port schedule. A value of null will clear the port schedule.
schedule:
type: object
properties:
id:
type: string
description: The ID of the port schedule.
name:
type: string
description: The name of the port schedule.
description: The port schedule data.
udld:
type: string
enum:
- Alert only
- Enforce
description: The action to take when Unidirectional Link is detected (Alert only, Enforce). Default configuration is Alert only.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch template port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
accessPolicyNumber:
type: integer
description: The number of a custom access policy to configure on the switch template port. Only applicable when 'accessPolicyType' is 'Custom access policy'.
macAllowList:
type: array
items:
type: string
description: Only devices with MAC addresses specified in this list will have access to this port. Up to 20 MAC addresses can be defined. Only applicable when 'accessPolicyType' is 'MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stormControlEnabled:
type: boolean
description: The storm control status of the switch template port.
flexibleStackingEnabled:
type: boolean
description: For supported switches (e.g. MS420/MS425), whether or not the port has flexible stacking enabled.
daiTrusted:
type: boolean
description: If true, ARP packets for this port will be considered trusted, and Dynamic ARP Inspection will allow the traffic.
profile:
type: object
properties:
enabled:
type: boolean
description: When enabled, override this port's configuration with a port profile.
id:
type: string
description: When enabled, the ID of the port profile used to override the port's configuration.
iname:
type: string
description: When enabled, the IName of the profile.
description: Profile attributes
module:
type: object
properties:
model:
type: string
description: The model of the expansion module.
description: Expansion module
mirror:
type: object
properties:
mode:
type: string
enum:
- Destination port
- Not mirroring traffic
- Source port
description: The port mirror mode. Can be one of ('Destination port', 'Source port' or 'Not mirroring traffic').
description: Port mirror
dot3az:
type: object
properties:
enabled:
type: boolean
description: The Energy Efficient Ethernet status of the switch template port.
description: dot3az settings for the port
stackwiseVirtual:
type: object
properties:
isStackWiseVirtualLink:
type: boolean
description: For SVL devices, whether or not the port is used for StackWise Virtual Link.
isDualActiveDetector:
type: boolean
description: For SVL devices, whether or not the port is used for Dual Active Detection.
description: Stackwise Virtual settings for the port
example:
portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
isolationEnabled: false
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
linkNegotiationCapabilities:
- Auto negotiate
- 1 Gigabit full duplex (auto)
portScheduleId: '1234'
schedule:
id: '1234'
name: Port Schedule
udld: Alert only
accessPolicyType: Sticky MAC allow list
accessPolicyNumber: 2
macAllowList:
- 34:56:fe:ce:8e:a0
- 34:56:fe:ce:8e:a1
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
stormControlEnabled: true
flexibleStackingEnabled: true
daiTrusted: false
profile:
enabled: false
id: '1284392014819'
iname: iname
module:
model: MA-MOD-4X10G
mirror:
mode: Not mirroring traffic
dot3az:
enabled: false
stackwiseVirtual:
isStackWiseVirtualLink: false
isDualActiveDetector: false
summary: Update a switch template port
tags:
- switch.configure
/organizations/{organizationId}/insight/applications:
get:
description: List all Insight tracked applications
operationId: getOrganizationInsightApplications
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
applicationId:
type: string
description: Application identifier
name:
type: string
description: Application name
thresholds:
type: object
properties:
type:
type: string
description: Threshold type (static or smart)
byNetwork:
type: array
items:
type: object
properties:
networkId:
type: string
description: Network identifier
goodput:
type: integer
description: Number of useful information bits delivered over a network per unit of time
responseDuration:
type: integer
description: Duration of the response, in milliseconds
description: Threshold for each network
description: Thresholds defined by a user or Meraki models for each application
example:
- applicationId: '19.12'
name: Meraki HTTPS
thresholds:
type: smart
byNetwork:
- networkId: N_12345678
goodput: 50000
responseDuration: 1000
summary: List all Insight tracked applications
tags:
- insight.configure
/organizations/{organizationId}/insight/monitoredMediaServers:
get:
description: List the monitored media servers for this organization. Only valid for organizations with Meraki Insight.
operationId: getOrganizationInsightMonitoredMediaServers
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
description: Monitored media server id
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead
example:
- id: '1284392014819'
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
summary: List the monitored media servers for this organization
tags:
- insight.configure
post:
description: Add a media server to be monitored for this organization. Only valid for organizations with Meraki Insight.
operationId: createOrganizationInsightMonitoredMediaServer
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead.
example:
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
required:
- name
- address
required: true
responses:
'201':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Monitored media server id
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead
example:
id: '1284392014819'
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
summary: Add a media server to be monitored for this organization
tags:
- insight.configure
/organizations/{organizationId}/insight/monitoredMediaServers/{monitoredMediaServerId}:
get:
description: Return a monitored media server for this organization. Only valid for organizations with Meraki Insight.
operationId: getOrganizationInsightMonitoredMediaServer
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: monitoredMediaServerId
in: path
description: Monitored media server ID
schema:
type: string
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Monitored media server id
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead
example:
id: '1284392014819'
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
summary: Return a monitored media server for this organization
tags:
- insight.configure
put:
description: Update a monitored media server for this organization. Only valid for organizations with Meraki Insight.
operationId: updateOrganizationInsightMonitoredMediaServer
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: monitoredMediaServerId
in: path
description: Monitored media server ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead.
example:
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
required: false
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
id:
type: string
description: Monitored media server id
name:
type: string
description: The name of the VoIP provider
address:
type: string
description: The IP address (IPv4 only) or hostname of the media server to monitor
bestEffortMonitoringEnabled:
type: boolean
description: Indicates that if the media server doesn't respond to ICMP pings, the nearest hop will be used in its stead
example:
id: '1284392014819'
name: Sample VoIP Provider
address: 123.123.123.1
bestEffortMonitoringEnabled: true
summary: Update a monitored media server for this organization
tags:
- insight.configure
delete:
description: Delete a monitored media server from this organization. Only valid for organizations with Meraki Insight.
operationId: deleteOrganizationInsightMonitoredMediaServer
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: monitoredMediaServerId
in: path
description: Monitored media server ID
schema:
type: string
required: true
responses:
'204':
description: Successful operation
summary: Delete a monitored media server from this organization
tags:
- insight.configure
/organizations/{organizationId}/summary/switch/power/history:
get:
description: Returns the total PoE power draw for all switch ports in the organization over the requested timespan (by default the last 24 hours). The returned array is a newest-first list of intervals. The time between intervals depends on the requested timespan with 20 minute intervals used for timespans up to 1 day, 4 hour intervals used for timespans up to 2 weeks, and 1 day intervals for timespans larger than 2 weeks.
operationId: getOrganizationSummarySwitchPowerHistory
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data.
schema:
type: string
- name: t1
in: query
description: The end of the timespan for the data. t1 can be a maximum of 186 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 less than or equal to 186 days. The default is 1 day.
schema:
type: number
format: float
maximum: 16070400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
ts:
type: string
format: date-time
description: Timestamp of the start of the interval.
draw:
type: number
format: float
description: The PoE power draw in watts for all switch ports in the organization for the given interval.
example:
- ts: '2021-06-20T01:00:00.000Z'
draw: 5.4321
summary: Returns the total PoE power draw for all switch ports in the organization over the requested timespan (by default the last 24 hours)
tags:
- switch.monitor
/organizations/{organizationId}/switch/devices/clone:
post:
description: 'Clone port-level and some switch-level configuration settings from a source switch to one or more target switches. Cloned settings include: Aggregation Groups, Power Settings, Multicast Settings, MTU Configuration, STP Bridge priority, Port Mirroring'
operationId: cloneOrganizationSwitchDevices
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
sourceSerial:
type: string
description: Serial number of the source switch (must be on a network not bound to a template)
targetSerials:
type: array
items:
type: string
description: Array of serial numbers of one or more target switches (must be on a network not bound to a template)
example:
sourceSerial: Q234-ABCD-5678
targetSerials:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
required:
- sourceSerial
- targetSerials
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
sourceSerial:
type: string
description: Serial number of the source switch (must be on a network not bound to a template)
targetSerials:
type: array
items:
type: string
description: Array of serial numbers of one or more target switches (must be on a network not bound to a template)
example:
sourceSerial: Q234-ABCD-5678
targetSerials:
- Q234-ABCD-0001
- Q234-ABCD-0002
- Q234-ABCD-0003
summary: Clone port-level and some switch-level configuration settings from a source switch to one or more target switches
tags:
- switch.configure
/organizations/{organizationId}/switch/ports/bySwitch:
get:
description: List the switchports in an organization by switch
operationId: getOrganizationSwitchPortsBySwitch
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 50. Default is 50.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: configurationUpdatedAfter
in: query
description: Optional parameter to filter items to switches where the configuration has been updated after the given timestamp.
schema:
type: string
format: date-time
- name: mac
in: query
description: Optional parameter to filter items to switches with MAC addresses that contain the search term or are an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter items to switches that have one of the provided MAC addresses.
schema:
type: array
items:
type: string
- name: name
in: query
description: Optional parameter to filter items to switches with names that contain the search term or are an exact match.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter items to switches in one of the provided networks.
schema:
type: array
items:
type: string
- name: portProfileIds
in: query
description: Optional parameter to filter items to switches that contain switchports belonging to one of the specified port profiles.
schema:
type: array
items:
type: string
- name: serial
in: query
description: Optional parameter to filter items to switches with serial number that contains the search term or are an exact match.
schema:
type: string
- name: serials
in: query
description: Optional parameter to filter items to switches that have one of the provided serials.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the switch.
serial:
type: string
description: The serial number of the switch.
mac:
type: string
description: The MAC address of the switch.
network:
type: object
properties:
name:
type: string
description: The name of the network.
id:
type: string
description: The ID of the network.
description: Identifying information of the switch's network.
model:
type: string
description: The model of the switch.
ports:
type: array
items:
type: object
properties:
portId:
type: string
description: The identifier of the switch port.
name:
type: string
description: The name of the switch port.
tags:
type: array
items:
type: string
description: The list of tags of the switch port.
enabled:
type: boolean
description: The status of the switch port.
poeEnabled:
type: boolean
description: The PoE status of the switch port.
type:
type: string
enum:
- access
- stack
- trunk
description: The type of the switch port ('trunk', 'access' or 'stack').
vlan:
type: integer
description: The VLAN of the switch port. For a trunk port, this is the native VLAN. A null value will clear the value set for trunk ports.
voiceVlan:
type: integer
description: The voice VLAN of the switch port. Only applicable to access ports.
allowedVlans:
type: string
description: The VLANs allowed on the switch port. Only applicable to trunk ports.
rstpEnabled:
type: boolean
description: The rapid spanning tree protocol status.
stpGuard:
type: string
enum:
- bpdu guard
- disabled
- loop guard
- root guard
description: The state of the STP guard ('disabled', 'root guard', 'bpdu guard' or 'loop guard').
linkNegotiation:
type: string
description: The link speed for the switch port.
accessPolicyType:
type: string
enum:
- Custom access policy
- MAC allow list
- Open
- Sticky MAC allow list
description: The type of the access policy of the switch port. Only applicable to access ports. Can be one of 'Open', 'Custom access policy', 'MAC allow list' or 'Sticky MAC allow list'.
stickyMacAllowList:
type: array
items:
type: string
description: The initial list of MAC addresses for sticky Mac allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
stickyMacAllowListLimit:
type: integer
description: The maximum number of MAC addresses for sticky MAC allow list. Only applicable when 'accessPolicyType' is 'Sticky MAC allow list'.
description: Ports belonging to the switch
example:
name: Example Switch
serial: Q555-5555-5555
mac: 01:23:45:67:ab:cd
network:
name: Example Network
id: L_12345
model: MS120-8
ports:
- portId: '1'
name: My switch port
tags:
- tag1
- tag2
enabled: true
poeEnabled: true
type: access
vlan: 10
voiceVlan: 20
allowedVlans: 1,3,5-10
rstpEnabled: true
stpGuard: disabled
linkNegotiation: Auto negotiate
accessPolicyType: Sticky MAC allow list
stickyMacAllowList:
- 34:56:fe:ce:8e:b0
- 34:56:fe:ce:8e:b1
stickyMacAllowListLimit: 5
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the switchports in an organization by switch
tags:
- switch.configure
/organizations/{organizationId}/switch/ports/clients/overview/byDevice:
get:
description: List the number of clients for all switchports with at least one online client in an organization.
operationId: getOrganizationSwitchPortsClientsOverviewByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 20. Default is 20.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: configurationUpdatedAfter
in: query
description: Optional parameter to filter items to switches where the configuration has been updated after the given timestamp.
schema:
type: string
format: date-time
- name: mac
in: query
description: Optional parameter to filter items to switches with MAC addresses that contain the search term or are an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter items to switches that have one of the provided MAC addresses.
schema:
type: array
items:
type: string
- name: name
in: query
description: Optional parameter to filter items to switches with names that contain the search term or are an exact match.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter items to switches in one of the provided networks.
schema:
type: array
items:
type: string
- name: portProfileIds
in: query
description: Optional parameter to filter items to switches that contain switchports belonging to one of the specified port profiles.
schema:
type: array
items:
type: string
- name: serial
in: query
description: Optional parameter to filter items to switches with serial number that contains the search term or are an exact match.
schema:
type: string
- name: serials
in: query
description: Optional parameter to filter items to switches that have one of the provided serials.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the switch.
serial:
type: string
description: The serial number of the switch.
mac:
type: string
description: The MAC address of the switch.
network:
type: object
properties:
name:
type: string
description: The name of the network.
id:
type: string
description: The ID of the network.
description: Identifying information of the switch's network.
model:
type: string
description: The model of the switch.
ports:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
counts:
type: object
properties:
byStatus:
type: object
properties:
online:
type: integer
description: Active client count.
description: Associated client count on access point by status.
description: Number of clients on the port in a given time.
description: The number of online clients of the ports on the switch.
description: Switches
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- name: Example Switch
serial: Q555-5555-5555
mac: 01:23:45:67:ab:cd
network:
name: Example Network
id: L_12345
model: MS120-8
ports:
- portId: '1'
counts:
byStatus:
online: 0
meta:
counts:
items:
total: 1
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the number of clients for all switchports with at least one online client in an organization.
tags:
- switch.monitor
/organizations/{organizationId}/switch/ports/overview:
get:
description: Returns the counts of all active ports for the requested timespan, grouped by speed. An active port is a port that at any point during the timeframe is observed to be connected to a responsive device and isn't configured to be disabled. For a port that is observed at multiple speeds during the timeframe, it will be counted at the highest speed observed. The number of inactive ports, and the total number of ports are also provided. Only ports on switches online during the timeframe will be represented and a port is only guaranteed to be present if its switch was online for at least 6 hours of the timeframe.
operationId: getOrganizationSwitchPortsOverview
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data.
schema:
type: string
- name: t1
in: query
description: The end of the timespan for the data. t1 can be a maximum of 186 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 12 hours and be less than or equal to 186 days. The default is 1 day.
schema:
type: number
format: float
minimum: 43200
maximum: 16070400
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
counts:
type: object
properties:
total:
type: integer
description: The total number of ports
byStatus:
type: object
properties:
active:
type: object
properties:
total:
type: integer
description: The total number of active ports
byMediaAndLinkSpeed:
type: object
properties:
rj45:
type: object
properties:
'10':
type: integer
description: The number of active 10 Mbps RJ45 ports
'100':
type: integer
description: The number of active 100 Mbps RJ45 ports
'1000':
type: integer
description: The number of active 1 Gbps RJ45 ports
'2500':
type: integer
description: The number of active 2 Gbps RJ45 ports
'5000':
type: integer
description: The number of active 5 Gbps RJ45 ports
'10000':
type: integer
description: The number of active 10 Gbps RJ45 ports
total:
type: integer
description: The total number of active RJ45 ports
description: The count data for RJ45 ports, indexed by speed in Mb
sfp:
type: object
properties:
'100':
type: integer
description: The number of active 100 Mbps SFP ports
'1000':
type: integer
description: The number of active 1 Gbps SFP ports
'10000':
type: integer
description: The number of active 10 Gbps SFP ports
'20000':
type: integer
description: The number of active 20 Gbps SFP ports
'25000':
type: integer
description: The number of active 25 Gbps SFP ports
'40000':
type: integer
description: The number of active 40 Gbps SFP ports
'50000':
type: integer
description: The number of active 50 Gbps SFP ports
'100000':
type: integer
description: The number of active 100 Gbps SFP ports
total:
type: integer
description: The total number of active SFP ports
description: The count data for SFP ports, indexed by speed in Mb
description: The active count data, indexed by media type (RJ45 or SFP)
description: The count data for active ports
inactive:
type: object
properties:
total:
type: integer
description: The total number of inactive ports
byMedia:
type: object
properties:
rj45:
type: object
properties:
total:
type: integer
description: The total number of inactive RJ45 ports
description: The count data for inactive RJ45 ports
sfp:
type: object
properties:
total:
type: integer
description: The total number of inactive SFP ports
description: The count data for inactive SFP ports
description: The inactive count data, indexed by media type (RJ45 or SFP)
description: The count data for inactive ports
description: The count data, indexed by active or inactive status
description: The count data of all ports
example:
counts:
total: 120
byStatus:
active:
total: 87
byMediaAndLinkSpeed:
rj45:
'10': 0
'100': 0
'1000': 24
'2500': 0
'5000': 0
'10000': 0
total: 24
sfp:
'100': 8
'1000': 40
'10000': 10
'20000': 0
'25000': 0
'40000': 1
'50000': 0
'100000': 0
total: 63
inactive:
total: 33
byMedia:
rj45:
total: 16
sfp:
total: 17
summary: Returns the counts of all active ports for the requested timespan, grouped by speed
tags:
- switch.monitor
/organizations/{organizationId}/switch/ports/statuses/bySwitch:
get:
description: List the switchports in an organization
operationId: getOrganizationSwitchPortsStatusesBySwitch
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 20. Default is 10.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: configurationUpdatedAfter
in: query
description: Optional parameter to filter items to switches where the configuration has been updated after the given timestamp.
schema:
type: string
format: date-time
- name: mac
in: query
description: Optional parameter to filter items to switches with MAC addresses that contain the search term or are an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter items to switches that have one of the provided MAC addresses.
schema:
type: array
items:
type: string
- name: name
in: query
description: Optional parameter to filter items to switches with names that contain the search term or are an exact match.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter items to switches in one of the provided networks.
schema:
type: array
items:
type: string
- name: portProfileIds
in: query
description: Optional parameter to filter items to switches that contain switchports belonging to one of the specified port profiles.
schema:
type: array
items:
type: string
- name: serial
in: query
description: Optional parameter to filter items to switches with serial number that contains the search term or are an exact match.
schema:
type: string
- name: serials
in: query
description: Optional parameter to filter items to switches that have one of the provided serials.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the switch.
serial:
type: string
description: The serial number of the switch.
mac:
type: string
description: The MAC address of the switch.
network:
type: object
properties:
name:
type: string
description: The name of the network.
id:
type: string
description: The ID of the network.
description: Identifying information of the switch's network.
model:
type: string
description: The model of the switch.
ports:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
enabled:
type: boolean
description: Whether the port is configured to be enabled.
status:
type: string
enum:
- Connected
- Disabled
- Disconnected
description: The current connection status of the port.
isUplink:
type: boolean
description: Whether the port is the switch's uplink.
errors:
type: array
items:
type: string
description: All errors present on the port.
warnings:
type: array
items:
type: string
description: All warnings present on the port.
speed:
type: string
enum:
- ''
- 1 Gbps
- 10 Gbps
- 10 Mbps
- 100 Gbps
- 100 Mbps
- 2.5 Gbps
- 20 Gbps
- 25 Gbps
- 40 Gbps
- 5 Gbps
- 50 Gbps
description: The current data transfer rate which the port is operating at.
duplex:
type: string
enum:
- ''
- full
- half
description: The current duplex of a connected port.
spanningTree:
type: object
properties:
statuses:
type: array
items:
type: string
description: The current Spanning Tree Protocol statuses of the port.
description: The Spanning Tree Protocol (STP) information of the connected device.
poe:
type: object
properties:
isAllocated:
type: boolean
description: Whether the port is drawing power
description: PoE status of the port.
securePort:
type: object
properties:
active:
type: boolean
description: Whether Secure Port is currently active for this port.
authenticationStatus:
type: string
enum:
- Authentication failure
- Authentication in progress
- Authentication successful
- Authentication timed out
- Disabled
- Enabled
description: The current Secure Port status.
description: The Secure Port status of the port.
description: The statuses of the ports on the switch.
description: Switches
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- name: Example Switch
serial: Q555-5555-5555
mac: 01:23:45:67:ab:cd
network:
name: Example Network
id: L_12345
model: MS120-8
ports:
- portId: '1'
enabled: true
status: Connected
isUplink: false
errors:
- PoE overload
- Very high proportion of CRC errors
warnings:
- SecurePort authentication in progress
- PoE port was denied power
- High proportion of CRC errors
speed: 10 Gbps
duplex: full
spanningTree:
statuses:
- Learning
poe:
isAllocated: false
securePort:
active: true
authenticationStatus: Authentication in progress
meta:
counts:
items:
total: 1
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the switchports in an organization
tags:
- switch.monitor
/organizations/{organizationId}/switch/ports/topology/discovery/byDevice:
get:
description: List most recently seen LLDP/CDP discovery and topology information per switch port in an organization.
operationId: getOrganizationSwitchPortsTopologyDiscoveryByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
schema:
type: string
- name: timespan
in: query
description: The timespan for which the information will be fetched. If specifying timespan, do not specify parameter t0. The value must be in seconds and be less than or equal to 31 days. The default is 1 day.
schema:
type: number
format: float
maximum: 2678400
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 20. Default is 10.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: configurationUpdatedAfter
in: query
description: Optional parameter to filter items to switches where the configuration has been updated after the given timestamp.
schema:
type: string
format: date-time
- name: mac
in: query
description: Optional parameter to filter items to switches with MAC addresses that contain the search term or are an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter items to switches that have one of the provided MAC addresses.
schema:
type: array
items:
type: string
- name: name
in: query
description: Optional parameter to filter items to switches with names that contain the search term or are an exact match.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter items to switches in one of the provided networks.
schema:
type: array
items:
type: string
- name: portProfileIds
in: query
description: Optional parameter to filter items to switches that contain switchports belonging to one of the specified port profiles.
schema:
type: array
items:
type: string
- name: serial
in: query
description: Optional parameter to filter items to switches with serial number that contains the search term or are an exact match.
schema:
type: string
- name: serials
in: query
description: Optional parameter to filter items to switches that have one of the provided serials.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the switch.
serial:
type: string
description: The serial number of the switch.
mac:
type: string
description: The MAC address of the switch.
network:
type: object
properties:
name:
type: string
description: The name of the network.
id:
type: string
description: The ID of the network.
description: Identifying information of the switch's network.
model:
type: string
description: The model of the switch.
ports:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
lastUpdatedAt:
type: string
description: Timestamp for most recent discovery info on this port.
cdp:
type: array
items:
type: object
properties:
name:
type: string
description: CDP RFC/official name of TLV
value:
type: string
description: Value of the named TLV.
description: The Cisco Discovery Protocol (CDP) information of the connected device.
lldp:
type: array
items:
type: object
properties:
name:
type: string
description: LLDP RFC/official name of TLV
value:
type: string
description: Value of the named TLV.
description: The Link Layer Discovery Protocol (LLDP) information of the connected device.
description: Ports belonging to the switch with LLDP/CDP discovery info.
description: Switches
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- name: Example Switch
serial: Q555-5555-5555
mac: 01:23:45:67:ab:cd
network:
name: Example Network
id: L_12345
model: MS120-8
ports:
- portId: '1'
lastUpdatedAt: ISO8061Z
cdp:
- name: System name
value: MS350-24X - Test
lldp:
- name: System name
value: MS350-24X - Test
meta:
counts:
items:
total: 1
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List most recently seen LLDP/CDP discovery and topology information per switch port in an organization.
tags:
- switch.monitor
/organizations/{organizationId}/switch/ports/usage/history/byDevice/byInterval:
get:
description: List the historical usage and traffic data of switchports in an organization.
operationId: getOrganizationSwitchPortsUsageHistoryByDeviceByInterval
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 1 day. If interval is provided, the timespan will be autocalculated.
schema:
type: number
format: float
maximum: 2678400
- name: interval
in: query
description: 'The time interval in seconds for returned data. The valid intervals are: 300, 1200, 14400, 86400. The default is 1200. Interval is calculated if time params are provided.'
schema:
type: integer
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 50. Default is 10.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: configurationUpdatedAfter
in: query
description: Optional parameter to filter items to switches where the configuration has been updated after the given timestamp.
schema:
type: string
format: date-time
- name: mac
in: query
description: Optional parameter to filter items to switches with MAC addresses that contain the search term or are an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter items to switches that have one of the provided MAC addresses.
schema:
type: array
items:
type: string
- name: name
in: query
description: Optional parameter to filter items to switches with names that contain the search term or are an exact match.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter items to switches in one of the provided networks.
schema:
type: array
items:
type: string
- name: portProfileIds
in: query
description: Optional parameter to filter items to switches that contain switchports belonging to one of the specified port profiles.
schema:
type: array
items:
type: string
- name: serial
in: query
description: Optional parameter to filter items to switches with serial number that contains the search term or are an exact match.
schema:
type: string
- name: serials
in: query
description: Optional parameter to filter items to switches that have one of the provided serials.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
name:
type: string
description: The name of the switch.
serial:
type: string
description: The serial number of the switch.
mac:
type: string
description: The MAC address of the switch.
network:
type: object
properties:
name:
type: string
description: The name of the network.
id:
type: string
description: The ID of the network.
description: Identifying information of the switch's network.
model:
type: string
description: The model of the switch.
ports:
type: array
items:
type: object
properties:
portId:
type: string
description: The string identifier of this port on the switch. This is commonly just the port number but may contain additional identifying information such as the slot and module-type if the port is located on a port module.
intervals:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The starting timestamp of the given interval.
endTs:
type: string
format: date-time
description: The end timestamp of the given interval.
data:
type: object
properties:
usage:
type: object
properties:
total:
type: integer
description: The total amount of data sent and received (in kilobytes).
upstream:
type: integer
description: The amount of data sent (in kilobytes).
downstream:
type: integer
description: The amount of data received (in kilobytes).
description: Usage data for the given interval.
description: A breakdown of how many kilobytes have passed through this port during the interval timespan.
bandwidth:
type: object
properties:
usage:
type: object
properties:
total:
type: number
format: float
description: The average speed of the data sent and received (in kilobits-per-second).
upstream:
type: number
format: float
description: The average speed of the data sent (in kilobits-per-second).
downstream:
type: number
format: float
description: The average speed of the data received (in kilobits-per-second).
description: Bandwidth usage data for the given interval.
description: A breakdown of the average speed of data that has passed through this port during the interval.
energy:
type: object
properties:
usage:
type: object
properties:
total:
type: number
format: float
description: The total energy in watt-hours delivered by this port during the interval
description: Energy data for the given interval.
description: How much energy (in watt-hours) has been delivered by this port during the interval.
description: An array of intervals for a port with bandwidth, traffic, and power usage data.
description: The number of ports on the switch with usage data.
description: Switches
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- name: Example Switch
serial: Q555-5555-5555
mac: 01:23:45:67:ab:cd
network:
name: Example Network
id: L_12345
model: MS120-8
ports:
- portId: '1'
intervals:
- startTs: '2024-02-11T00:00:00.090210Z'
endTs: '2024-02-11T00:20:00.090210Z'
data:
usage:
total: 40867
upstream: 23008
downstream: 17859
bandwidth:
usage:
total: 2.2
upstream: 1.2
downstream: 1
energy:
usage:
total: 2.2
meta:
counts:
items:
total: 1
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the historical usage and traffic data of switchports in an organization.
tags:
- switch.monitor
/organizations/{organizationId}/wireless/airMarshal/rules:
get:
description: Returns the current Air Marshal rules for this organization
operationId: getOrganizationWirelessAirMarshalRules
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: (optional) The set of network IDs to include.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Network ID
name:
type: string
description: Network name
description: Network details
ruleId:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
updatedAt:
type: string
format: date-time
description: Updated at timestamp
createdAt:
type: string
format: date-time
description: Created at timestamp
match:
type: object
properties:
string:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
type:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
description: Indicates whether or not clients are allowed to connect to rogue SSIDs by default. (blocked by default)
description: List of rules
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Count of rules
description: Items
description: Counts
description: Meta details about the result
example:
items:
- network:
id: N_12345
name: Network 1
ruleId: '5239'
type: allow
updatedAt: '2023-05-23 12:02:46.298'
createdAt: '2023-05-23 12:02:46.298'
match:
string: ipsum
type: contains
meta:
counts:
items:
total: 1
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Returns the current Air Marshal rules for this organization
tags:
- wireless.configure
/organizations/{organizationId}/wireless/airMarshal/settings/byNetwork:
get:
description: Returns the current Air Marshal settings for this network
operationId: getOrganizationWirelessAirMarshalSettingsByNetwork
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: The network IDs to include in the result set.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
networkId:
type: string
description: The network ID
defaultPolicy:
type: string
description: Indicates whether or not clients are allowed to connect to rogue SSIDs. (blocked by default)
description: List of settings
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: Total number of items
remaining:
type: integer
description: Remaining number of items
description: Items
description: Counts
description: Metadata
example:
items:
- networkId: N_12345
defaultPolicy: allow
meta:
counts:
items:
total: 1
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Returns the current Air Marshal settings for this network
tags:
- wireless.configure
/organizations/{organizationId}/wireless/clients/overview/byDevice:
get:
description: List access point client count at the moment in an organization
operationId: getOrganizationWirelessClientsOverviewByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Optional parameter to filter access points client counts by network ID. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Optional parameter to filter access points client counts by its serial numbers. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: campusGatewayClusterIds
in: query
description: Optional parameter to filter access points client counts by MCG cluster IDs. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Access point network ID
description: Access point network
serial:
type: string
description: Access point Serial number
counts:
type: object
properties:
byStatus:
type: object
properties:
online:
type: integer
description: Active client count
description: Associated client count on access point by status
description: Associated client count on access point
description: Access point client count
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- network:
id: N_24329156
serial: Q234-ABCD-5678
counts:
byStatus:
online: 1
meta:
counts:
items:
total: 10
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List access point client count at the moment in an organization
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/channelUtilization/byDevice:
get:
description: Get average channel utilization for all bands in a network, split by AP
operationId: getOrganizationWirelessDevicesChannelUtilizationByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 90 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 90 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 less than or equal to 90 days. The default is 7 days.
schema:
type: number
format: float
maximum: 7776000
- name: interval
in: query
description: 'The time interval in seconds for returned data. The valid intervals are: 300, 600, 3600, 7200, 14400, 21600. The default is 3600.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number for the device.
mac:
type: string
description: The MAC address of the device.
network:
type: object
properties:
id:
type: string
description: Network ID of the given utilization metrics.
description: Network for the given utilization metrics.
byBand:
type: array
items:
type: object
properties:
band:
type: string
description: The band for the given metrics.
wifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of wifi channel utiliation for the given band.
description: An object containing wifi utilization.
nonWifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of non-wifi channel utiliation for the given band.
description: An object containing non-wifi utilization.
total:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of total channel utiliation for the given band.
description: An object containing total channel utilization.
description: Channel utilization broken down by band.
example:
- serial: Q234-ABCD-5678
mac: '00:11:22:33:44:55'
network:
id: N_24329156
byBand:
- band: '5'
wifi:
percentage: 33.12
nonWifi:
percentage: 1.84
total:
percentage: 34.96
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get average channel utilization for all bands in a network, split by AP
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/channelUtilization/byNetwork:
get:
description: Get average channel utilization across all bands for all networks in the organization
operationId: getOrganizationWirelessDevicesChannelUtilizationByNetwork
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 90 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 90 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 less than or equal to 90 days. The default is 7 days.
schema:
type: number
format: float
maximum: 7776000
- name: interval
in: query
description: 'The time interval in seconds for returned data. The valid intervals are: 300, 600, 3600, 7200, 14400, 21600. The default is 3600.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Network ID of the given utilization metrics.
description: Network for the given utilization metrics.
byBand:
type: array
items:
type: object
properties:
band:
type: string
description: The band for the given metrics.
wifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of wifi channel utiliation for the given band.
description: An object containing wifi utilization.
nonWifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of non-wifi channel utiliation for the given band.
description: An object containing non-wifi utilization.
total:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of total channel utiliation for the given band.
description: An object containing total channel utilization.
description: Channel utilization broken down by band.
example:
- network:
id: N_24329156
byBand:
- band: '5'
wifi:
percentage: 33.12
nonWifi:
percentage: 1.84
total:
percentage: 34.96
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get average channel utilization across all bands for all networks in the organization
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/channelUtilization/history/byDevice/byInterval:
get:
description: Get a time-series of average channel utilization for all bands, segmented by device.
operationId: getOrganizationWirelessDevicesChannelUtilizationHistoryByDeviceByInterval
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: interval
in: query
description: 'The time interval in seconds for returned data. The valid intervals are: 300, 600, 3600, 7200, 14400, 21600. The default is 3600.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the channel utilization interval.
endTs:
type: string
format: date-time
description: The end time of the channel utilization interval.
serial:
type: string
description: The serial number for the device.
mac:
type: string
description: The MAC address of the device.
network:
type: object
properties:
id:
type: string
description: Network ID of the given utilization metrics.
description: Network for the given utilization metrics.
byBand:
type: array
items:
type: object
properties:
band:
type: string
description: The band for the given metrics.
wifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of wifi channel utiliation for the given band.
description: An object containing wifi utilization.
nonWifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of non-wifi channel utiliation for the given band.
description: An object containing non-wifi utilization.
total:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of total channel utiliation for the given band.
description: An object containing total channel utilization.
description: Channel utilization broken down by band.
example:
- startTs: '2018-02-11T00:00:00Z'
endTs: '2018-05-12T00:00:00Z'
serial: Q234-ABCD-5678
mac: '00:11:22:33:44:55'
network:
id: N_24329156
byBand:
- band: '5'
wifi:
percentage: 33.12
nonWifi:
percentage: 1.84
total:
percentage: 34.96
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get a time-series of average channel utilization for all bands, segmented by device.
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/channelUtilization/history/byNetwork/byInterval:
get:
description: Get a time-series of average channel utilization for all bands
operationId: getOrganizationWirelessDevicesChannelUtilizationHistoryByNetworkByInterval
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 31 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 31 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 less than or equal to 31 days. The default is 7 days.
schema:
type: number
format: float
maximum: 2678400
- name: interval
in: query
description: 'The time interval in seconds for returned data. The valid intervals are: 300, 600, 3600, 7200, 14400, 21600. The default is 3600.'
schema:
type: integer
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
startTs:
type: string
format: date-time
description: The start time of the channel utilization interval.
endTs:
type: string
format: date-time
description: The end time of the channel utilization interval.
network:
type: object
properties:
id:
type: string
description: Network ID of the given utilization metrics.
description: Network for the given utilization metrics.
byBand:
type: array
items:
type: object
properties:
band:
type: string
description: The band for the given metrics.
wifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of wifi channel utiliation for the given band.
description: An object containing wifi utilization.
nonWifi:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of non-wifi channel utiliation for the given band.
description: An object containing non-wifi utilization.
total:
type: object
properties:
percentage:
type: number
format: float
description: Percentage of total channel utiliation for the given band.
description: An object containing total channel utilization.
description: Channel utilization broken down by band.
example:
- startTs: '2018-02-11T00:00:00Z'
endTs: '2018-05-12T00:00:00Z'
network:
id: N_24329156
byBand:
- band: '5'
wifi:
percentage: 33.12
nonWifi:
percentage: 1.84
total:
percentage: 34.96
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get a time-series of average channel utilization for all bands
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/ethernet/statuses:
get:
description: List the most recent Ethernet link speed, duplex, aggregation and power mode and status information for wireless devices.
operationId: getOrganizationWirelessDevicesEthernetStatuses
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: 'A list of Meraki network IDs to filter results to contain only specified networks. E.g.: networkIds[]=N_12345678&networkIds[]=L_3456'
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
serial:
type: string
description: The serial number of the AP
name:
type: string
description: The name of the AP
network:
type: object
properties:
id:
type: string
description: The network ID the AP is associated to
description: Network details object
power:
type: object
properties:
mode:
type: string
description: The PoE power mode for the AP. Can be 'full' or 'low'
ac:
type: object
properties:
isConnected:
type: boolean
description: AC power connected
description: AC power details object
poe:
type: object
properties:
isConnected:
type: boolean
description: PoE power connected
description: PoE power details object
description: Power details object
ports:
type: array
items:
type: object
properties:
name:
type: string
description: Label of the port
poe:
type: object
properties:
standard:
type: string
description: The PoE Standard for the port. Can be '802.3at', '802.3af', '802.3bt', or null
description: PoE details object for the port
linkNegotiation:
type: object
properties:
duplex:
type: string
description: The duplex mode of the port. Can be 'full' or 'half' will return null on Catalyst devices
speed:
type: integer
description: Show the speed of the port. The port speed will return null on Catalyst devices
description: Link negotiation details object for the port
description: List of port details
aggregation:
type: object
properties:
enabled:
type: boolean
description: Link Aggregation enabled flag will return null on Catalyst devices
speed:
type: integer
description: Link Aggregation speed will return null on Catalyst devices
description: Aggregation details object
example:
- serial: Q234-ABCD-5678
name: My appliance
network:
id: N_24329156
power:
mode: full
ac:
isConnected: false
poe:
isConnected: true
ports:
- name: Ethernet 0
poe:
standard: 802.3at
linkNegotiation:
duplex: full
speed: 5000
aggregation:
enabled: true
speed: 10000
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the most recent Ethernet link speed, duplex, aggregation and power mode and status information for wireless devices.
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/packetLoss/byClient:
get:
description: Get average packet loss for the given timespan for all clients in the organization.
operationId: getOrganizationWirelessDevicesPacketLossByClient
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: ssids
in: query
description: Filter results by SSID number.
schema:
type: array
items:
type: integer
- name: bands
in: query
description: 'Filter results by band. Valid bands are: 2.4, 5, and 6.'
schema:
type: array
items:
type: string
- name: macs
in: query
description: Filter results by client mac address(es).
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 90 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 90 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 5 minutes and be less than or equal to 90 days. The default is 7 days.
schema:
type: number
format: float
minimum: 300
maximum: 7776000
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
downstream:
type: object
properties:
total:
type: integer
description: Total packets received by a client.
lost:
type: integer
description: Total packets sent by an AP that did not reach the client.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from an AP to a client.
upstream:
type: object
properties:
total:
type: integer
description: Total packets sent by a client to an AP.
lost:
type: integer
description: Total packets sent by a client and did not reach the AP.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from a client to an AP.
client:
type: object
properties:
id:
type: string
description: Client ID.
mac:
type: string
description: MAC address.
description: Client.
network:
type: object
properties:
id:
type: string
description: Network ID.
name:
type: string
description: Name of the network.
description: Network.
example:
- downstream:
total: 1000
lost: 10
lossPercentage: 1
upstream:
total: 1200
lost: 15
lossPercentage: 1.3
client:
id: k74272e
mac: '22:33:44:55:66:77'
network:
id: N_24329156
name: Main Office
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get average packet loss for the given timespan for all clients in the organization.
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/packetLoss/byDevice:
get:
description: Get average packet loss for the given timespan for all devices in the organization. Does not include device's own traffic.
operationId: getOrganizationWirelessDevicesPacketLossByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: ssids
in: query
description: Filter results by SSID number.
schema:
type: array
items:
type: integer
- name: bands
in: query
description: 'Filter results by band. Valid bands are: 2.4, 5, and 6.'
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 90 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 90 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 5 minutes and be less than or equal to 90 days. The default is 7 days.
schema:
type: number
format: float
minimum: 300
maximum: 7776000
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
downstream:
type: object
properties:
total:
type: integer
description: Total packets received by a client.
lost:
type: integer
description: Total packets sent by an AP that did not reach the client.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from an AP to a client.
upstream:
type: object
properties:
total:
type: integer
description: Total packets sent by a client to an AP.
lost:
type: integer
description: Total packets sent by a client and did not reach the AP.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from a client to an AP.
network:
type: object
properties:
id:
type: string
description: Network ID.
name:
type: string
description: Name of the network.
description: Network.
device:
type: object
properties:
name:
type: string
description: Name
serial:
type: string
description: Serial Number
mac:
type: string
description: MAC address
description: Device.
example:
- downstream:
total: 1000
lost: 10
lossPercentage: 1
upstream:
total: 1200
lost: 15
lossPercentage: 1.3
network:
id: N_24329156
name: Main Office
device:
name: My AP
serial: Q234-ABCD-5678
mac: '00:11:22:33:44:55'
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get average packet loss for the given timespan for all devices in the organization
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/packetLoss/byNetwork:
get:
description: Get average packet loss for the given timespan for all networks in the organization.
operationId: getOrganizationWirelessDevicesPacketLossByNetwork
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Filter results by network.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Filter results by device.
schema:
type: array
items:
type: string
- name: ssids
in: query
description: Filter results by SSID number.
schema:
type: array
items:
type: integer
- name: bands
in: query
description: 'Filter results by band. Valid bands are: 2.4, 5, and 6.'
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: t0
in: query
description: The beginning of the timespan for the data. The maximum lookback period is 90 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 90 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 5 minutes and be less than or equal to 90 days. The default is 7 days.
schema:
type: number
format: float
minimum: 300
maximum: 7776000
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
downstream:
type: object
properties:
total:
type: integer
description: Total packets received by a client.
lost:
type: integer
description: Total packets sent by an AP that did not reach the client.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from an AP to a client.
upstream:
type: object
properties:
total:
type: integer
description: Total packets sent by a client to an AP.
lost:
type: integer
description: Total packets sent by a client and did not reach the AP.
lossPercentage:
type: number
format: float
description: Percentage of lost packets.
description: Packets sent from a client to an AP.
network:
type: object
properties:
id:
type: string
description: Network ID.
name:
type: string
description: Name of the network.
description: Network.
example:
- downstream:
total: 1000
lost: 10
lossPercentage: 1
upstream:
total: 1200
lost: 15
lossPercentage: 1.3
network:
id: N_24329156
name: Main Office
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: Get average packet loss for the given timespan for all networks in the organization.
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/devices/wirelessControllers/byDevice:
get:
description: List of Catalyst access points information
operationId: getOrganizationWirelessDevicesWirelessControllersByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Optional parameter to filter access points by network ID. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Optional parameter to filter access points by its cloud ID. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: controllerSerials
in: query
description: Optional parameter to filter access points by its wireless LAN controller cloud ID. This filter uses multiple exact matches.
schema:
type: array
items:
type: string
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: Catalyst access point network ID
description: Catalyst access point network
serial:
type: string
description: AP cloud ID
controller:
type: object
properties:
serial:
type: string
description: Associated wireless controller cloud ID
description: Associated wireless controller
joinedAt:
type: string
description: The time when AP joins wireless controller
model:
type: string
description: AP model
tags:
type: array
items:
type: object
properties:
policy:
type: string
description: Policy tag
site:
type: string
description: Site tag
rf:
type: string
description: RF tag
description: The tags of the catalyst access point
mode:
type: string
description: AP mode (local, flex, etc.)
countryCode:
type: string
description: Country code (2 characters)
details:
type: array
items:
type: object
properties:
name:
type: string
description: Item name
value:
type: string
description: Item value
description: Catalyst access point details
description: List of Catalyst access points information
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items in the dataset
remaining:
type: integer
description: The number of items in the dataset that are available on subsequent pages
description: Counts relating to the paginated items
description: Counts relating to the paginated dataset
description: Metadata relevant to the paginated dataset
example:
items:
- network:
id: N_24329156
serial: Q234-ABCD-5678
controller:
serial: Q234-ABCD-5678
joinedAt: '2020-01-01T00:00:00Z'
model: C9115AXI-H
tags:
- policy: 4F
site: default-site-tag
rf: default-rf-tag
mode: local
countryCode: CA
details:
- name: catalyst serial
value: FGL2446L7QQ
meta:
counts:
items:
total: 10
remaining: 0
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List of Catalyst access points information
tags:
- wireless.monitor
/organizations/{organizationId}/wireless/radio/autoRf/channels/recalculate:
post:
description: 'Recalculates automatically assigned channels for every AP within specified the specified network(s). Note: This could cause a brief loss in connectivity for wireless clients.'
operationId: recalculateOrganizationWirelessRadioAutoRfChannels
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
properties:
networkIds:
type: array
items:
type: string
description: 'A list of network ids (limit: 15).'
example:
networkIds:
- N_678910
- L_12345
required:
- networkIds
required: true
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
estimatedCompletedAt:
type: string
description: Estimated time of completion.
example:
estimatedCompletedAt: '2019-01-01T00:00:00Z'
summary: Recalculates automatically assigned channels for every AP within specified the specified network(s)
tags:
- wireless.configure
/organizations/{organizationId}/wireless/rfProfiles/assignments/byDevice:
get:
description: List the RF profiles of an organization by device
operationId: getOrganizationWirelessRfProfilesAssignmentsByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: networkIds
in: query
description: Optional parameter to filter devices by network.
schema:
type: array
items:
type: string
- name: productTypes
in: query
description: Optional parameter to filter devices by product type. Valid types are wireless, appliance, switch, systemsManager, camera, cellularGateway, sensor, wirelessController, and secureConnect.
schema:
type: array
items:
type: string
enum:
- appliance
- camera
- cellularGateway
- secureConnect
- sensor
- switch
- systemsManager
- wireless
- wirelessController
- name: name
in: query
description: Optional parameter to filter RF profiles by device name. All returned devices will have a name that contains the search term or is an exact match.
schema:
type: string
- name: mac
in: query
description: Optional parameter to filter RF profiles by device MAC address. All returned devices will have a MAC address that contains the search term or is an exact match.
schema:
type: string
- name: serial
in: query
description: Optional parameter to filter RF profiles by device serial number. All returned devices will have a serial number that contains the search term or is an exact match.
schema:
type: string
- name: model
in: query
description: Optional parameter to filter RF profiles by device model. All returned devices will have a model that contains the search term or is an exact match.
schema:
type: string
- name: macs
in: query
description: Optional parameter to filter RF profiles by one or more device MAC addresses. All returned devices will have a MAC address that is an exact match.
schema:
type: array
items:
type: string
- name: serials
in: query
description: Optional parameter to filter RF profiles by one or more device serial numbers. All returned devices will have a serial number that is an exact match.
schema:
type: array
items:
type: string
- name: models
in: query
description: Optional parameter to filter RF profiles by one or more device models. All returned devices will have a model that is an exact match.
schema:
type: array
items:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: array
items:
type: object
properties:
items:
type: array
items:
type: object
properties:
network:
type: object
properties:
id:
type: string
description: The network ID.
description: Information regarding the network the device belongs to.
name:
type: string
description: Name of the device.
serial:
type: string
description: Unique serial number for device.
model:
type: string
description: Model number of the device.
rfProfile:
type: object
properties:
id:
type: string
description: The ID of the RF Profile the device belongs to.
name:
type: string
description: The name of the RF Profile the device belongs to.
isIndoorDefault:
type: boolean
description: Status to show if this profile is default indoor profile.
isOutdoorDefault:
type: boolean
description: Status to show if this profile is default outdoor profile.
description: Information regarding the RF Profile of the device.
description: The top-level propery containing all status data.
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of serials.
remaining:
type: integer
description: The number of serials remaining based on current pagination location within the dataset.
description: The count metadata.
description: Count metadata related to this result set.
description: Other metadata related to this result set.
example:
- items:
- network:
id: '1234'
name: Device_name
serial: Q234-ABCD-0001
model: MR34
rfProfile:
id: '123456'
name: Basic Outdoor Profile
isIndoorDefault: false
isOutdoorDefault: true
meta:
counts:
items:
total: 1200
remaining: 200
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List the RF profiles of an organization by device
tags:
- wireless.configure
/organizations/{organizationId}/wireless/ssids/statuses/byDevice:
get:
description: List status information of all BSSIDs in your organization
operationId: getOrganizationWirelessSsidsStatusesByDevice
parameters:
- name: organizationId
in: path
description: Organization ID
schema:
type: string
required: true
- name: networkIds
in: query
description: Optional parameter to filter the result set by the included set of network IDs
schema:
type: array
items:
type: string
- name: serials
in: query
description: A list of serial numbers. The returned devices will be filtered to only include these serials.
schema:
type: array
items:
type: string
- name: bssids
in: query
description: A list of BSSIDs. The returned devices will be filtered to only include these BSSIDs.
schema:
type: array
items:
type: string
- name: hideDisabled
in: query
description: 'If true, the returned devices will not include disabled SSIDs. (default: true)'
schema:
type: boolean
- name: perPage
in: query
description: The number of entries per page returned. Acceptable range is 3 - 500. Default is 100.
schema:
type: integer
- name: startingAfter
in: query
description: A token used by the server to indicate the start of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
- name: endingBefore
in: query
description: A token used by the server to indicate the end of the page. Often this is a timestamp or an ID but it is not limited to those. This parameter should not be defined by client applications. The link for the first, last, prev, or next page in the HTTP Link header should define it.
schema:
type: string
responses:
'200':
description: Successful operation
content:
application/json:
schema:
type: object
properties:
items:
type: array
items:
type: object
properties:
serial:
type: string
description: Unique serial number for device.
name:
type: string
description: Name of device.
network:
type: object
properties:
id:
type: string
description: Unique identifier for network.
name:
type: string
description: Name of network.
description: Group of devices and settings.
basicServiceSets:
type: array
items:
type: object
properties:
bssid:
type: string
description: Unique identifier for wireless access point.
ssid:
type: object
properties:
name:
type: string
description: Name of wireless network.
number:
type: integer
description: Unique identifier for wireless network.
enabled:
type: boolean
description: Status of wireless network.
advertised:
type: boolean
description: Availability of wireless network for devices to connect to.
description: Wireless access point and network identifier.
radio:
type: object
properties:
band:
type: string
enum:
- '2.4'
- '5'
- '6'
description: Frequency range used for wireless communication.
channel:
type: integer
description: Frequency channel used for wireless communication.
channelWidth:
type: integer
description: Width of frequency channel used for wireless communication.
power:
type: integer
description: Strength of wireless signal.
isBroadcasting:
type: boolean
description: Indicates whether or not this radio is currently broadcasting.
index:
type: string
description: The radio index.
description: Wireless access point radio identifier.
description: Status information for wireless access points.
description: The top-level propery containing all status data.
meta:
type: object
properties:
counts:
type: object
properties:
items:
type: object
properties:
total:
type: integer
description: The total number of items.
remaining:
type: integer
description: The number of items remaining based on current pagination location within the dataset.
description: The count metadata.
description: Count metadata related to this result set.
description: Other metadata related to this result set.
example:
items:
- serial: QQ3A-QHWY-DQ2Z
name: My AP
network:
id: N_24329156
name: Main Office
basicServiceSets:
- bssid: 8A:15:04:00:00:00
ssid:
name: My SSID
number: 0
enabled: true
advertised: true
radio:
band: '2.4'
channel: 11
channelWidth: 20
power: 18
isBroadcasting: true
index: '0'
meta:
counts:
items:
total: 1738
remaining: 1238
headers:
Link:
schema:
type: string
description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
summary: List status information of all BSSIDs in your organization
tags:
- wireless.monitor
components:
securitySchemes:
OAuth2ClientCredentials:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://api-prd.kpn.com/oauth/client_credential/accesstoken?grant_type=client_credentials
scopes: {}
security:
- OAuth2ClientCredentials: []