openapi: 3.0.0
servers:
  - url: https://api.meraki.com/api/v0
info:
  contact:
    name: Meraki Developer Community
    url: https://meraki.io/community
    x-twitter: meraki
  description: |
    The Cisco Meraki Dashboard API is a modern REST API based on the OpenAPI specification.

    > Date: 23 April, 2023
    >
    > [Recent Updates](https://meraki.io/whats-new/)

    ---

    [API Documentation](https://meraki.io/api)

    [Community Support](https://meraki.io/community)

    [Meraki Homepage](https://www.meraki.com)
  title: Meraki Dashboard API
  version: 0.0.0-streaming
  x-apisguru-categories:
    - iot
    - enterprise
  x-logo:
    url: https://n140.meraki.com/images/cisco-meraki.png
  x-origin:
    - format: openapi
      url: https://api.meraki.com/api/v0/openapiSpec
      version: "3.0"
  x-preferred: true
  x-providerName: meraki.com
security:
  - meraki_api_key: []
tags:
  - name: API usage
  - name: Action batches
  - name: Admins
  - name: Alert settings
  - name: Bluetooth clients
  - name: Bluetooth settings
  - name: Camera quality retention profiles
  - name: Cameras
  - name: Change log
  - name: Clients
  - name: Config templates
  - name: Content filtering categories
  - name: Content filtering rules
  - name: Devices
  - name: Events
  - name: Firewalled services
  - name: Floor plans
  - name: Intrusion settings
  - name: Licenses
  - name: Link aggregations
  - name: MG LAN settings
  - name: MG port forwarding rules
  - name: MR L3 firewall
  - name: MV Sense
  - name: MX 1:1 NAT rules
  - name: MX 1:Many NAT rules
  - name: MX L3 inbound firewall
  - name: MX L3 outbound firewall
  - name: MX L7 application categories
  - name: MX L7 firewall
  - name: MX VLAN ports
  - name: MX VPN firewall
  - name: MX cellular firewall
  - name: MX port forwarding rules
  - name: MX static routes
  - name: MX warm spare settings
  - name: Malware settings
  - name: Meraki auth users
  - name: Named tag scope
  - name: Networks
  - name: OpenAPI Spec
  - name: Organizations
  - name: PII
  - name: Radio settings
  - name: SAML roles
  - name: SM
  - name: SNMP settings
  - name: SSIDs
  - name: Security events
  - name: Splash login attempts
  - name: Splash settings
  - name: Switch access policies
  - name: Switch port schedules
  - name: Switch ports
  - name: Switch profiles
  - name: Switch settings
  - name: Switch stacks
  - name: Syslog servers
  - name: Traffic shaping uplink settings
  - name: VLANs
  - name: Wireless health
  - name: Wireless settings
paths:
  "/devices/{serial}/camera/analytics/live":
    get:
      description: Returns live state from camera of analytics zones
      operationId: getDeviceCameraAnalyticsLive
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ts: 2018-08-15T18:32:38.123Z
                    zones:
                      "0":
                        person: 0
              schema:
                type: object
          description: Successful operation
      summary: Returns live state from camera of analytics zones
      tags:
        - MV Sense
  "/devices/{serial}/camera/analytics/overview":
    get:
      description: Returns an overview of aggregate analytics data for a timespan
      operationId: getDeviceCameraAnalyticsOverview
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 365 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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 1 hour.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: "[optional] The object type for which analytics will be retrieved. The default object type is person. The available types are [person, vehicle]."
          in: query
          name: objectType
          schema:
            enum:
              - person
              - vehicle
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - averageCount: 5
                      endTs: 2018-08-15T18:33:38.123Z
                      entrances: 254
                      startTs: 2018-08-15T18:32:38.123Z
                      zoneId: 0
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Returns an overview of aggregate analytics data for a timespan
      tags:
        - MV Sense
  "/devices/{serial}/camera/analytics/recent":
    get:
      description: Returns most recent record for analytics zones
      operationId: getDeviceCameraAnalyticsRecent
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: "[optional] The object type for which analytics will be retrieved. The default object type is person. The available types are [person, vehicle]."
          in: query
          name: objectType
          schema:
            enum:
              - person
              - vehicle
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - averageCount: 2.54
                      endTs: 2018-08-15T18:33:38.123Z
                      entrances: 10
                      startTs: 2018-08-15T18:32:38.123Z
                      zoneId: 0
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Returns most recent record for analytics zones
      tags:
        - MV Sense
  "/devices/{serial}/camera/analytics/zones":
    get:
      description: Returns all configured analytic zones for this camera
      operationId: getDeviceCameraAnalyticsZones
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "0"
                      label: Full Frame
                      regionOfInterest:
                        x0: "0.00"
                        x1: "1.00"
                        y0: "0.00"
                        y1: "1.00"
                      type: occupancy
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Returns all configured analytic zones for this camera
      tags:
        - MV Sense
  "/devices/{serial}/camera/analytics/zones/{zoneId}/history":
    get:
      description: Return historical records for analytic zones
      operationId: getDeviceCameraAnalyticsZoneHistory
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - in: path
          name: zoneId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 365 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 14 hours after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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 hours. The default is 1 hour.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: "The time resolution in seconds for returned data. The valid resolutions are: 60. The default is 60."
          in: query
          name: resolution
          schema:
            type: integer
        - description: "[optional] The object type for which analytics will be retrieved. The default object type is person. The available types are [person, vehicle]."
          in: query
          name: objectType
          schema:
            enum:
              - person
              - vehicle
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - averageCount: 1.5
                      endTs: 2018-08-15T18:33:38.123Z
                      entrances: 5
                      startTs: 2018-08-15T18:32:38.123Z
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return historical records for analytic zones
      tags:
        - MV Sense
  "/devices/{serial}/camera/video/settings":
    get:
      description: Returns video settings for the given camera
      operationId: getDeviceCameraVideoSettings
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    externalRtspEnabled: true
                    rtspUrl: rtsp://10.0.0.1:9000/live
              schema:
                type: object
          description: Successful operation
      summary: Returns video settings for the given camera
      tags:
        - Cameras
    put:
      description: Update video settings for the given camera
      operationId: updateDeviceCameraVideoSettings
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                externalRtspEnabled: true
              properties:
                externalRtspEnabled:
                  description: Boolean indicating if external rtsp stream is exposed
                  type: boolean
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    externalRtspEnabled: true
                    rtspUrl: rtsp://10.0.0.1:9000/live
              schema:
                type: object
          description: Successful operation
      summary: Update video settings for the given camera
      tags:
        - Cameras
  "/devices/{serial}/cellularGateway/settings":
    get:
      description: Show the LAN Settings of a MG
      operationId: getDeviceCellularGatewaySettings
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    deviceLanIp: 192.168.0.33
                    deviceName: name of the MG
                    deviceSubnet: 192.168.0.32/27
                    fixedIpAssignments:
                      - ip: 192.168.0.10
                        mac: 0b:00:00:00:00:ac
                        name: server 1
                      - ip: 192.168.0.20
                        mac: 0b:00:00:00:00:ab
                        name: server 2
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
              schema:
                type: object
          description: Successful operation
      summary: Show the LAN Settings of a MG
      tags:
        - MG LAN settings
    put:
      description: Update the LAN Settings for a single MG.
      operationId: updateDeviceCellularGatewaySettings
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                deviceLanIp: 192.168.0.33
                deviceName: name of the MG
                deviceSubnet: 192.168.0.32/27
                fixedIpAssignments:
                  - ip: 192.168.0.10
                    mac: 0b:00:00:00:00:ac
                    name: server 1
                  - ip: 192.168.0.20
                    mac: 0b:00:00:00:00:ab
                    name: server 2
                reservedIpRanges:
                  - comment: A reserved IP range
                    end: 192.168.1.1
                    start: 192.168.1.0
              properties:
                fixedIpAssignments:
                  description: list of all fixed IP assignments for a single MG
                  items:
                    properties:
                      ip:
                        description: The IP address you want to assign to a specific server or device
                        type: string
                      mac:
                        description: The MAC address of the server or device that hosts the internal resource that you wish to receive the specified IP address
                        type: string
                      name:
                        description: A descriptive name of the assignment
                        type: string
                    required:
                      - ip
                      - mac
                    type: object
                  type: array
                reservedIpRanges:
                  description: list of all reserved IP ranges for a single MG
                  items:
                    properties:
                      comment:
                        description: Comment explaining the reserved IP range
                        type: string
                      end:
                        description: Ending IP included in the reserved range of IPs
                        type: string
                      start:
                        description: Starting IP included in the reserved range of IPs
                        type: string
                    required:
                      - start
                      - end
                      - comment
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    deviceLanIp: 192.168.0.33
                    deviceName: name of the MG
                    deviceSubnet: 192.168.0.32/27
                    fixedIpAssignments:
                      - ip: 192.168.0.10
                        mac: 0b:00:00:00:00:ac
                        name: server 1
                      - ip: 192.168.0.20
                        mac: 0b:00:00:00:00:ab
                        name: server 2
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
              schema:
                type: object
          description: Successful operation
      summary: Update the LAN Settings for a single MG.
      tags:
        - MG LAN settings
  "/devices/{serial}/cellularGateway/settings/portForwardingRules":
    get:
      description: Returns the port forwarding rules for a single MG.
      operationId: getDeviceCellularGatewaySettingsPortForwardingRules
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - access: any
                        lanIp: 172.31.128.5
                        localPort: "4"
                        name: test
                        protocol: tcp
                        publicPort: 11-12
                        uplink: both
                      - access: restricted
                        allowedIps:
                          - 10.10.10.10
                          - 10.10.10.11
                        lanIp: 172.31.128.5
                        localPort: "5"
                        name: test 2
                        protocol: tcp
                        publicPort: "99"
                        uplink: both
              schema:
                type: object
          description: Successful operation
      summary: Returns the port forwarding rules for a single MG.
      tags:
        - MG port forwarding rules
    put:
      description: Updates the port forwarding rules for a single MG.
      operationId: updateDeviceCellularGatewaySettingsPortForwardingRules
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - access: any
                    lanIp: 172.31.128.5
                    localPort: "4"
                    name: test
                    protocol: tcp
                    publicPort: 11-12
                    uplink: both
                  - access: restricted
                    allowedIps:
                      - 10.10.10.10
                      - 10.10.10.11
                    lanIp: 172.31.128.5
                    localPort: "5"
                    name: test 2
                    protocol: tcp
                    publicPort: "99"
                    uplink: both
              properties:
                rules:
                  description: An array of port forwarding params
                  items:
                    properties:
                      access:
                        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."
                        type: string
                      allowedIps:
                        description: An array of ranges of WAN IP addresses that are allowed to make inbound connections on the specified ports or port ranges.
                        items:
                          type: string
                        type: array
                      lanIp:
                        description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
                        type: string
                      localPort:
                        description: A port or port ranges that will receive the forwarded traffic from the WAN
                        type: string
                      name:
                        description: A descriptive name for the rule
                        type: string
                      protocol:
                        description: TCP or UDP
                        type: string
                      publicPort:
                        description: A port or port ranges that will be forwarded to the host on the LAN
                        type: string
                    required:
                      - lanIp
                      - publicPort
                      - localPort
                      - protocol
                      - access
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - access: any
                        lanIp: 172.31.128.5
                        localPort: "4"
                        name: test
                        protocol: tcp
                        publicPort: 11-12
                        uplink: both
                      - access: restricted
                        allowedIps:
                          - 10.10.10.10
                          - 10.10.10.11
                        lanIp: 172.31.128.5
                        localPort: "5"
                        name: test 2
                        protocol: tcp
                        publicPort: "99"
                        uplink: both
              schema:
                type: object
          description: Successful operation
      summary: Updates the port forwarding rules for a single MG.
      tags:
        - MG port forwarding rules
  "/devices/{serial}/clients":
    get:
      description: List the clients of a device, up to a maximum of a month ago. The usage of each client is returned in kilobytes. If the device is a switch, the switchport is returned; otherwise the switchport field is null.
      operationId: getDeviceClients
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - description: Miles's phone
                      dhcpHostname: MilesPhone
                      id: k74272e
                      ip: 1.2.3.4
                      mac: 22:33:44:55:66:77
                      mdnsName: Miles's phone
                      switchport: null
                      usage:
                        recv: 61
                        sent: 138
                      user: milesmeraki
                      vlan: 255
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the clients of a device, up to a maximum of a month ago
      tags:
        - Clients
  "/devices/{serial}/switch/ports/cycle":
    post:
      description: Cycle a set of switch ports
      operationId: cycleDeviceSwitchPorts
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ports:
                  - "1"
                  - 2-5
                  - 1_MA-MOD-8X10G_1
                  - 1_MA-MOD-8X10G_2-1_MA-MOD-8X10G_8
              properties:
                ports:
                  description: "List of switch ports. Example: [1, 2-5, 1_MA-MOD-8X10G_1, 1_MA-MOD-8X10G_2-1_MA-MOD-8X10G_8]"
                  items:
                    type: string
                  type: array
              required:
                - ports
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ports:
                      - "1"
                      - 2-5
                      - 1_MA-MOD-8X10G_1
                      - 1_MA-MOD-8X10G_2-1_MA-MOD-8X10G_8
              schema:
                type: object
          description: Successful operation
      summary: Cycle a set of switch ports
      tags:
        - Devices
  "/devices/{serial}/switchPortStatuses":
    get:
      description: Return the status for all the ports of a switch
      operationId: getDeviceSwitchPortStatuses
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - cdp:
                        address: 10.0,0.1
                        capabilities: Switch
                        deviceId: 0c8ddbddee:ff
                        managementAddress: 10.0.0.100
                        nativeVlan: 1
                        platform: MS350-24X
                        portId: Port 20
                        systemName: ""
                        version: "1"
                        vtpManagementDomain: ""
                      clientCount: 10
                      duplex: full
                      enabled: true
                      errors:
                        - PoE overload
                        - Very high proportion of CRC errors
                      isUplink: false
                      lldp:
                        chassisId: 0c:8d:db:dd:ee:ff
                        managementAddress: 10.0.0.100
                        managementVlan: 1
                        portDescription: Port 20
                        portId: "20"
                        portVlan: 1
                        systemCapabilities: switch
                        systemDescription: MS350-24X Cloud Managed PoE Switch
                        systemName: MS350-24X - Test
                      portId: "1"
                      powerUsageInWh: 55.9
                      securePort:
                        active: true
                        authenticationStatus: Authentication in progress
                        configOverrides:
                          allowedVlans: all
                          type: trunk
                          vlan: 12
                          voiceVlan: 34
                        enabled: true
                      speed: 10 Gbps
                      status: Connected
                      trafficInKbps:
                        recv: 1
                        sent: 1.2
                        total: 2.2
                      usageInKb:
                        recv: 17859
                        sent: 23008
                        total: 40867
                      warnings:
                        - SecureConnect authentication in progress
                        - PoE port was denied power
                        - High proportion of CRC errors
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the status for all the ports of a switch
      tags:
        - Switch ports
  "/devices/{serial}/switchPortStatuses/packets":
    get:
      description: Return the packet counters for all the ports of a switch
      operationId: getDeviceSwitchPortStatusesPackets
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 1 day from today.
          in: query
          name: t0
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - packets:
                        - desc: Total
                          ratePerSec:
                            recv: 0
                            sent: 1
                            total: 1
                          recv: 7946
                          sent: 104135
                          total: 112081
                        - desc: Broadcast
                          ratePerSec:
                            recv: 0
                            sent: 0
                            total: 0
                          recv: 514
                          sent: 30370
                          total: 30884
                        - desc: Multicast
                          ratePerSec:
                            recv: 0
                            sent: 0
                            total: 0
                          recv: 771
                          sent: 66849
                          total: 67620
                        - desc: CRC align errors
                          ratePerSec:
                            recv: 0
                            sent: 0
                            total: 0
                          recv: 0
                          sent: 0
                          total: 0
                      portId: "1"
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the packet counters for all the ports of a switch
      tags:
        - Switch ports
  "/devices/{serial}/wireless/bluetooth/settings":
    put:
      description: Update the bluetooth settings for a wireless device
      operationId: updateDeviceWirelessBluetoothSettings
      parameters:
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                major: 13
                minor: 125
                uuid: 00000000-0000-0000-000-000000000000
              properties:
                major:
                  description: Desired major value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                  type: integer
                minor:
                  description: Desired minor value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                  type: integer
                uuid:
                  description: Desired UUID of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    major: 13
                    minor: 125
                    uuid: 00000000-0000-0000-000-000000000000
              schema:
                properties:
                  major:
                    description: Desired major value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                    type: integer
                  minor:
                    description: Desired minor value of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                    type: integer
                  uuid:
                    description: Desired UUID of the beacon. If the value is set to null it will reset to Dashboard's automatically generated value.
                    type: string
                type: object
          description: Successful operation
      summary: Update the bluetooth settings for a wireless device
      tags:
        - Bluetooth settings
  "/networks/{networkId}":
    delete:
      description: Delete a network
      operationId: deleteNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a network
      tags:
        - Networks
    get:
      description: Return a network
      operationId: getNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    disableMyMerakiCom: false
                    enrollmentString: my-enrollment-string
                    id: N_24329156
                    name: Main Office
                    organizationId: "2930418"
                    productTypes:
                      - appliance
                      - switch
                      - wireless
                    tags: " tag1 tag2 "
                    timeZone: America/Los_Angeles
                    type: combined
              schema:
                type: object
          description: Successful operation
      summary: Return a network
      tags:
        - Networks
    put:
      description: Update a network
      operationId: updateNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                disableMyMerakiCom: false
                name: Main Office
                tags: " tag1 tag2 "
                timeZone: America/Los_Angeles
              properties:
                disableMyMerakiCom:
                  description: Disables the local device status pages (<a target='_blank' href='http://my.meraki.com/'>my.meraki.com, </a><a target='_blank' href='http://ap.meraki.com/'>ap.meraki.com, </a><a target='_blank' href='http://switch.meraki.com/'>switch.meraki.com, </a><a target='_blank' href='http://wired.meraki.com/'>wired.meraki.com</a>). Optional (defaults to false)
                  type: boolean
                disableRemoteStatusPage:
                  description: Disables access to the device status page (<a target='_blank'>http://[device's LAN IP])</a>. Optional. Can only be set if disableMyMerakiCom is set to false
                  type: boolean
                enrollmentString:
                  description: A unique identifier which can be used for device enrollment or easy access through the Meraki SM Registration page or the Self Service Portal. Please note that changing this field may cause existing bookmarks to break.
                  type: string
                name:
                  description: The name of the network
                  type: string
                tags:
                  description: A space-separated list of tags to be applied to the network
                  type: string
                timeZone:
                  description: The timezone of the network. For a list of allowed timezones, please see the 'TZ' column in the table in <a target='_blank' href='https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'>this article.</a>
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    disableMyMerakiCom: false
                    enrollmentString: my-enrollment-string
                    id: N_24329156
                    name: Main Office
                    organizationId: "2930418"
                    productTypes:
                      - appliance
                      - switch
                      - wireless
                    tags: " tag1 tag2 "
                    timeZone: America/Los_Angeles
                    type: combined
              schema:
                type: object
          description: Successful operation
      summary: Update a network
      tags:
        - Networks
  "/networks/{networkId}/accessPolicies":
    get:
      description: List the access policies for this network. Only valid for MS networks.
      operationId: getNetworkAccessPolicies
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - accessType: 8021.x
                      guestVlan: 3700
                      name: My access policy
                      number: 1
                      radiusServers:
                        - ip: 1.2.3.4
                          port: 1337
                        - ip: 2.3.4.5
                          port: 1337
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the access policies for this network
      tags:
        - Switch access policies
  "/networks/{networkId}/airMarshal":
    get:
      description: List Air Marshal scan results from a network
      operationId: getNetworkAirMarshal
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - bssids:
                        - bssid: 00:11:22:33:44:55
                          contained: false
                          detectedBy:
                            - device: Q234-ABCD-5678
                              rssi: 17
                      channels:
                        - 36
                        - 40
                      firstSeen: 1518365681
                      lastSeen: 1526087474
                      ssid: linksys
                      wiredLastSeen: 1526087474
                      wiredMacs:
                        - 00:11:22:33:44:55
                      wiredVlans:
                        - 0
                        - 108
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List Air Marshal scan results from a network
      tags:
        - Networks
  "/networks/{networkId}/alertSettings":
    get:
      description: Return the alert configuration for this network
      operationId: getNetworkAlertSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    alerts:
                      - alertDestinations:
                          allAdmins: false
                          emails:
                            - miles@meraki.com
                          httpServerIds:
                            - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                          snmp: false
                        enabled: true
                        filters:
                          timeout: 60
                        type: gatewayDown
                    defaultDestinations:
                      allAdmins: true
                      emails:
                        - miles@meraki.com
                      httpServerIds:
                        - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                      snmp: true
              schema:
                type: object
          description: Successful operation
      summary: Return the alert configuration for this network
      tags:
        - Alert settings
    put:
      description: Update the alert configuration for this network
      operationId: updateNetworkAlertSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                alerts:
                  - alertDestinations:
                      allAdmins: false
                      emails:
                        - miles@meraki.com
                      httpServerIds:
                        - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                      snmp: false
                    enabled: true
                    filters:
                      timeout: 60
                    type: gatewayDown
                defaultDestinations:
                  allAdmins: true
                  emails:
                    - miles@meraki.com
                  httpServerIds:
                    - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                  snmp: true
              properties:
                alerts:
                  description: Alert-specific configuration for each type. Only alerts that pertain to the network can be updated.
                  items:
                    properties:
                      alertDestinations:
                        description: A hash of destinations for this specific alert
                        properties:
                          allAdmins:
                            description: If true, then all network admins will receive emails for this alert
                            type: boolean
                          emails:
                            description: A list of emails that will receive information about the alert
                            items:
                              type: string
                            type: array
                          httpServerIds:
                            description: A list of HTTP server IDs to send a Webhook to for this alert
                            items:
                              type: string
                            type: array
                          snmp:
                            description: If true, then an SNMP trap will be sent for this alert if there is an SNMP trap server configured for this network
                            type: boolean
                        type: object
                      enabled:
                        description: A boolean depicting if the alert is turned on or off
                        type: boolean
                      filters:
                        description: A hash of specific configuration data for the alert. Only filters specific to the alert will be updated.
                        properties: {}
                        type: object
                      type:
                        description: The type of alert
                        type: string
                    required:
                      - type
                    type: object
                  type: array
                defaultDestinations:
                  description: The network-wide destinations for all alerts on the network.
                  properties:
                    allAdmins:
                      description: If true, then all network admins will receive emails.
                      type: boolean
                    emails:
                      description: A list of emails that will recieve the alert(s).
                      items:
                        type: string
                      type: array
                    httpServerIds:
                      description: A list of HTTP server IDs to send a Webhook to
                      items:
                        type: string
                      type: array
                    snmp:
                      description: If true, then an SNMP trap will be sent if there is an SNMP trap server configured for this network.
                      type: boolean
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    alerts:
                      - alertDestinations:
                          allAdmins: false
                          emails:
                            - miles@meraki.com
                          httpServerIds:
                            - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                          snmp: false
                        enabled: true
                        filters:
                          timeout: 60
                        type: gatewayDown
                    defaultDestinations:
                      allAdmins: true
                      emails:
                        - miles@meraki.com
                      httpServerIds:
                        - aHR0cHM6Ly93d3cuZXhhbXBsZS5jb20vd2ViaG9va3M=
                      snmp: true
              schema:
                type: object
          description: Successful operation
      summary: Update the alert configuration for this network
      tags:
        - Alert settings
  "/networks/{networkId}/appliance/firewall/inboundFirewallRules":
    get:
      description: Return the inbound firewall rules for an MX network
      operationId: getNetworkApplianceFirewallInboundFirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - comment: Allow TCP traffic to subnet with HTTP servers.
                        destCidr: 192.168.1.0/24
                        destPort: "443"
                        policy: allow
                        protocol: tcp
                        srcCidr: Any
                        srcPort: Any
                        syslogEnabled: false
                    syslogDefaultRule: true
              schema:
                type: object
          description: Successful operation
      summary: Return the inbound firewall rules for an MX network
      tags:
        - MX L3 inbound firewall
    put:
      description: Update the inbound firewall rules of an MX network
      operationId: updateNetworkApplianceFirewallInboundFirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/updateNetworkApplianceFirewallInboundFirewallRulesUpdatenetworkappliancefirewallinboundfirewallrules"
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - comment: Allow TCP traffic to subnet with HTTP servers.
                        destCidr: 192.168.1.0/24
                        destPort: "443"
                        policy: allow
                        protocol: tcp
                        srcCidr: Any
                        srcPort: Any
                        syslogEnabled: false
                    syslogDefaultRule: true
              schema:
                type: object
          description: Successful operation
      summary: Update the inbound firewall rules of an MX network
      tags:
        - MX L3 inbound firewall
  "/networks/{networkId}/appliancePorts":
    get:
      description: List per-port VLAN settings for all ports of a MX.
      operationId: getNetworkAppliancePorts
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - accessPolicy: open
                      dropUntaggedTraffic: false
                      enabled: true
                      number: 1
                      type: access
                      vlan: 3
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List per-port VLAN settings for all ports of a MX.
      tags:
        - MX VLAN ports
  "/networks/{networkId}/appliancePorts/{appliancePortId}":
    get:
      description: Return per-port VLAN settings for a single MX port.
      operationId: getNetworkAppliancePort
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: appliancePortId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    accessPolicy: open
                    dropUntaggedTraffic: false
                    enabled: true
                    number: 1
                    type: access
                    vlan: 3
              schema:
                type: object
          description: Successful operation
      summary: Return per-port VLAN settings for a single MX port.
      tags:
        - MX VLAN ports
    put:
      description: Update the per-port VLAN settings for a single MX port.
      operationId: updateNetworkAppliancePort
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: appliancePortId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                accessPolicy: open
                dropUntaggedTraffic: false
                enabled: true
                type: access
                vlan: 3
              properties:
                accessPolicy:
                  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."
                  type: string
                allowedVlans:
                  description: Comma-delimited list of the VLAN ID's allowed on the port, or 'all' to permit all VLAN's on the port.
                  type: string
                dropUntaggedTraffic:
                  description: Trunk port can Drop all Untagged traffic. When true, no VLAN is required. Access ports cannot have dropUntaggedTraffic set to true.
                  type: boolean
                enabled:
                  description: The status of the port
                  type: boolean
                type:
                  description: "The type of the port: 'access' or 'trunk'."
                  type: string
                vlan:
                  description: Native VLAN when the port is in Trunk mode. Access VLAN when the port is in Access mode.
                  type: integer
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    accessPolicy: open
                    dropUntaggedTraffic: false
                    enabled: true
                    number: 1
                    type: access
                    vlan: 3
              schema:
                type: object
          description: Successful operation
      summary: Update the per-port VLAN settings for a single MX port.
      tags:
        - MX VLAN ports
  "/networks/{networkId}/bind":
    post:
      description: Bind a network to a template.
      operationId: bindNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                autoBind: false
                configTemplateId: N_23952905
              properties:
                autoBind:
                  description: Optional boolean indicating whether the network's switches should automatically bind to profiles of the same model. Defaults to false if left unspecified. This option only affects switch networks and switch templates. Auto-bind is not valid unless the switch template has at least one profile and has at most one profile per switch model.
                  type: boolean
                configTemplateId:
                  description: The ID of the template to which the network should be bound.
                  type: string
              required:
                - configTemplateId
              type: object
        required: true
      responses:
        "200":
          description: Successful operation
      summary: Bind a network to a template.
      tags:
        - Networks
  "/networks/{networkId}/bluetoothClients":
    get:
      description: List the Bluetooth clients seen by APs in this network
      operationId: getNetworkBluetoothClients
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 7 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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 7 days. The default is 1 day.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 5 - 1000. Default is 10.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
        - description: Include the connectivity history for this client
          in: query
          name: includeConnectivityHistory
          schema:
            type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - deviceName: Bose QuietComfort 35
                      id: "1284392014819"
                      inSightAlert: false
                      lastSeen: 1526087474
                      mac: 22:33:44:55:66:77
                      manufacturer: Bose
                      name: Miles's phone
                      networkId: N_24329156
                      outOfSightAlert: false
                      seenByDeviceMac: 00:11:22:33:44:55
                      tags:
                        - tag1
                        - tag2
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the Bluetooth clients seen by APs in this network
      tags:
        - Bluetooth clients
  "/networks/{networkId}/bluetoothClients/{bluetoothClientId}":
    get:
      description: Return a Bluetooth client. Bluetooth clients can be identified by their ID or their MAC.
      operationId: getNetworkBluetoothClient
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: bluetoothClientId
          required: true
          schema:
            type: string
        - description: Include the connectivity history for this client
          in: query
          name: includeConnectivityHistory
          schema:
            type: boolean
        - description: The timespan, in seconds, for the connectivityHistory data. By default 1 day, 86400, will be used.
          in: query
          name: connectivityHistoryTimespan
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    deviceName: Bose QuietComfort 35
                    id: "1284392014819"
                    inSightAlert: false
                    lastSeen: 1526087474
                    mac: 22:33:44:55:66:77
                    manufacturer: Bose
                    name: Miles's phone
                    networkId: N_24329156
                    outOfSightAlert: false
                    seenByDeviceMac: 00:11:22:33:44:55
                    tags:
                      - tag1
                      - tag2
              schema:
                type: object
          description: Successful operation
      summary: Return a Bluetooth client
      tags:
        - Bluetooth clients
  "/networks/{networkId}/bluetoothSettings":
    get:
      description: Return the Bluetooth settings for a network. <a href="https://documentation.meraki.com/MR/Bluetooth/Bluetooth_Low_Energy_(BLE)">Bluetooth settings</a> must be enabled on the network.
      operationId: getNetworkBluetoothSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    advertisingEnabled: true
                    major: 1
                    majorMinorAssignmentMode: Non-unique
                    minor: 1
                    scanningEnabled: true
                    uuid: 00000000-0000-0000-000-000000000000
              schema:
                properties:
                  advertisingEnabled:
                    description: Whether APs will advertise beacons.
                    type: boolean
                  major:
                    description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                    type: integer
                  majorMinorAssignmentMode:
                    description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
                    type: string
                  minor:
                    description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                    type: integer
                  scanningEnabled:
                    description: Whether APs will scan for Bluetooth enabled clients.
                    type: boolean
                  uuid:
                    description: The UUID to be used in the beacon identifier.
                    type: string
                type: object
          description: Successful operation
      summary: Return the Bluetooth settings for a network. <a href="https://documentation.meraki.com/MR/Bluetooth/Bluetooth_Low_Energy_(BLE)">Bluetooth settings</a> must be enabled on the network.
      tags:
        - Bluetooth settings
    put:
      description: Update the Bluetooth settings for a network. See the docs page for <a href="https://documentation.meraki.com/MR/Bluetooth/Bluetooth_Low_Energy_(BLE)">Bluetooth settings</a>.
      operationId: updateNetworkBluetoothSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                advertisingEnabled: true
                major: 1
                majorMinorAssignmentMode: Non-unique
                minor: 1
                scanningEnabled: true
                uuid: 00000000-0000-0000-000-000000000000
              properties:
                advertisingEnabled:
                  description: Whether APs will advertise beacons.
                  type: boolean
                major:
                  description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                  type: integer
                majorMinorAssignmentMode:
                  description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
                  enum:
                    - Non-unique
                    - Unique
                  type: string
                minor:
                  description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                  type: integer
                scanningEnabled:
                  description: Whether APs will scan for Bluetooth enabled clients.
                  type: boolean
                uuid:
                  description: The UUID to be used in the beacon identifier.
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    advertisingEnabled: true
                    major: 1
                    majorMinorAssignmentMode: Non-unique
                    minor: 1
                    scanningEnabled: true
                    uuid: 00000000-0000-0000-000-000000000000
              schema:
                properties:
                  advertisingEnabled:
                    description: Whether APs will advertise beacons.
                    type: boolean
                  major:
                    description: The major number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                    type: integer
                  majorMinorAssignmentMode:
                    description: The way major and minor number should be assigned to nodes in the network. ('Unique', 'Non-unique')
                    type: string
                  minor:
                    description: The minor number to be used in the beacon identifier. Only valid in 'Non-unique' mode.
                    type: integer
                  scanningEnabled:
                    description: Whether APs will scan for Bluetooth enabled clients.
                    type: boolean
                  uuid:
                    description: The UUID to be used in the beacon identifier.
                    type: string
                type: object
          description: Successful operation
      summary: Update the Bluetooth settings for a network
      tags:
        - Bluetooth settings
  "/networks/{networkId}/camera/qualityRetentionProfiles":
    get:
      description: List the quality retention profiles for this network
      operationId: getNetworkCameraQualityRetentionProfiles
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - audioRecordingEnabled: false
                      cloudArchiveEnabled: false
                      id: "1234"
                      maxRetentionDays: 7
                      motionBasedRetentionEnabled: false
                      motionDetectorVersion: 2
                      name: Sample quality retention profile
                      networkId: N_24329156
                      restrictedBandwidthModeEnabled: true
                      scheduleId: null
                      videoSettings:
                        MV12/MV22/MV72:
                          quality: High
                          resolution: 1920x1080
                        MV12WE:
                          quality: High
                          resolution: 1920x1080
                        MV21/MV71:
                          quality: High
                          resolution: 1280x720
                        MV32:
                          quality: Enhanced
                          resolution: 1080x1080
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the quality retention profiles for this network
      tags:
        - Camera quality retention profiles
    post:
      description: Creates new quality retention profile for this network.
      operationId: createNetworkCameraQualityRetentionProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: Sample quality retention profile
              properties:
                audioRecordingEnabled:
                  description: Whether or not to record audio. Can be either true or false. Defaults to false.
                  type: boolean
                cloudArchiveEnabled:
                  description: Create redundant video backup using Cloud Archive. Can be either true or false. Defaults to false.
                  type: boolean
                maxRetentionDays:
                  description: The maximum number of days for which the data will be stored, or 'null' to keep data until storage space runs out. If the former, it can be one of [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 14, 30, 60, 90] days.
                  type: integer
                motionBasedRetentionEnabled:
                  description: Deletes footage older than 3 days in which no motion was detected. Can be either true or false. Defaults to false. This setting does not apply to MV2 cameras.
                  type: boolean
                motionDetectorVersion:
                  description: The version of the motion detector that will be used by the camera. Only applies to Gen 2 cameras. Defaults to v2.
                  type: integer
                name:
                  description: The name of the new profile. Must be unique. This parameter is required.
                  type: string
                restrictedBandwidthModeEnabled:
                  description: Disable features that require additional bandwidth such as Motion Recap. Can be either true or false. Defaults to false. This setting does not apply to MV2 cameras.
                  type: boolean
                scheduleId:
                  description: Schedule for which this camera will record video, or 'null' to always record.
                  type: string
                videoSettings:
                  description: Video quality and resolution settings for all the camera models.
                  properties:
                    MV12/MV22/MV72:
                      description: Quality and resolution for MV12/MV22/MV72 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720' or '1920x1080'.
                          enum:
                            - 1280x720
                            - 1920x1080
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV12WE:
                      description: Quality and resolution for MV12WE camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720' or '1920x1080'.
                          enum:
                            - 1280x720
                            - 1920x1080
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV13:
                      description: Quality and resolution for MV13 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2688x1512'.
                          enum:
                            - 1080x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV21/MV71:
                      description: Quality and resolution for MV21/MV71 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720'.
                          enum:
                            - 1280x720
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV22X/MV72X:
                      description: Quality and resolution for MV22X/MV72X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720', '1920x1080' or '2688x1512'.
                          enum:
                            - 1280x720
                            - 1920x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV32:
                      description: Quality and resolution for MV32 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2058x2058'.
                          enum:
                            - 1080x1080
                            - 2058x2058
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV33:
                      description: Quality and resolution for MV33 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2112x2112'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV52:
                      description: Quality and resolution for MV52 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720', '1920x1080', '2688x1512' or '3840x2160'.
                          enum:
                            - 1280x720
                            - 1920x1080
                            - 2688x1512
                            - 3840x2160
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV63:
                      description: Quality and resolution for MV63 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1920x1080' or '2688x1512'.
                          enum:
                            - 1920x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV63X:
                      description: Quality and resolution for MV63X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1920x1080', '2688x1512' or '3840x2160'.
                          enum:
                            - 1920x1080
                            - 2688x1512
                            - 3840x2160
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV93:
                      description: Quality and resolution for MV93 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2112x2112'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV93X:
                      description: Quality and resolution for MV93X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080', '2112x2112' or '2880x2880'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                            - 2880x2880
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                  type: object
              required:
                - name
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    audioRecordingEnabled: false
                    cloudArchiveEnabled: false
                    id: "1234"
                    maxRetentionDays: 7
                    motionBasedRetentionEnabled: false
                    motionDetectorVersion: 2
                    name: Sample quality retention profile
                    networkId: N_24329156
                    restrictedBandwidthModeEnabled: true
                    scheduleId: null
                    videoSettings:
                      MV12/MV22/MV72:
                        quality: High
                        resolution: 1920x1080
                      MV12WE:
                        quality: High
                        resolution: 1920x1080
                      MV21/MV71:
                        quality: High
                        resolution: 1280x720
                      MV32:
                        quality: Enhanced
                        resolution: 1080x1080
              schema:
                type: object
          description: Successful operation
      summary: Creates new quality retention profile for this network.
      tags:
        - Camera quality retention profiles
  "/networks/{networkId}/camera/qualityRetentionProfiles/{qualityRetentionProfileId}":
    delete:
      description: Delete an existing quality retention profile for this network.
      operationId: deleteNetworkCameraQualityRetentionProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qualityRetentionProfileId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete an existing quality retention profile for this network.
      tags:
        - Camera quality retention profiles
    get:
      description: Retrieve a single quality retention profile
      operationId: getNetworkCameraQualityRetentionProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qualityRetentionProfileId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    audioRecordingEnabled: false
                    cloudArchiveEnabled: false
                    id: "1234"
                    maxRetentionDays: 7
                    motionBasedRetentionEnabled: false
                    motionDetectorVersion: 2
                    name: Sample quality retention profile
                    networkId: N_24329156
                    restrictedBandwidthModeEnabled: true
                    scheduleId: null
                    videoSettings:
                      MV12/MV22/MV72:
                        quality: High
                        resolution: 1920x1080
                      MV12WE:
                        quality: High
                        resolution: 1920x1080
                      MV21/MV71:
                        quality: High
                        resolution: 1280x720
                      MV32:
                        quality: Enhanced
                        resolution: 1080x1080
              schema:
                type: object
          description: Successful operation
      summary: Retrieve a single quality retention profile
      tags:
        - Camera quality retention profiles
    put:
      description: Update an existing quality retention profile for this network.
      operationId: updateNetworkCameraQualityRetentionProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qualityRetentionProfileId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example: {}
              properties:
                audioRecordingEnabled:
                  description: Whether or not to record audio. Can be either true or false. Defaults to false.
                  type: boolean
                cloudArchiveEnabled:
                  description: Create redundant video backup using Cloud Archive. Can be either true or false. Defaults to false.
                  type: boolean
                maxRetentionDays:
                  description: The maximum number of days for which the data will be stored, or 'null' to keep data until storage space runs out. If the former, it can be one of [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 14, 30, 60, 90] days.
                  type: integer
                motionBasedRetentionEnabled:
                  description: Deletes footage older than 3 days in which no motion was detected. Can be either true or false. Defaults to false. This setting does not apply to MV2 cameras.
                  type: boolean
                motionDetectorVersion:
                  description: The version of the motion detector that will be used by the camera. Only applies to Gen 2 cameras. Defaults to v2.
                  type: integer
                name:
                  description: The name of the new profile. Must be unique.
                  type: string
                restrictedBandwidthModeEnabled:
                  description: Disable features that require additional bandwidth such as Motion Recap. Can be either true or false. Defaults to false. This setting does not apply to MV2 cameras.
                  type: boolean
                scheduleId:
                  description: Schedule for which this camera will record video, or 'null' to always record.
                  type: string
                videoSettings:
                  description: Video quality and resolution settings for all the camera models.
                  properties:
                    MV12/MV22/MV72:
                      description: Quality and resolution for MV12/MV22/MV72 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720' or '1920x1080'.
                          enum:
                            - 1280x720
                            - 1920x1080
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV12WE:
                      description: Quality and resolution for MV12WE camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720' or '1920x1080'.
                          enum:
                            - 1280x720
                            - 1920x1080
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV13:
                      description: Quality and resolution for MV13 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2688x1512'.
                          enum:
                            - 1080x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV21/MV71:
                      description: Quality and resolution for MV21/MV71 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720'.
                          enum:
                            - 1280x720
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV22X/MV72X:
                      description: Quality and resolution for MV22X/MV72X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720', '1920x1080' or '2688x1512'.
                          enum:
                            - 1280x720
                            - 1920x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV32:
                      description: Quality and resolution for MV32 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2058x2058'.
                          enum:
                            - 1080x1080
                            - 2058x2058
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV33:
                      description: Quality and resolution for MV33 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2112x2112'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV52:
                      description: Quality and resolution for MV52 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1280x720', '1920x1080', '2688x1512' or '3840x2160'.
                          enum:
                            - 1280x720
                            - 1920x1080
                            - 2688x1512
                            - 3840x2160
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV63:
                      description: Quality and resolution for MV63 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1920x1080' or '2688x1512'.
                          enum:
                            - 1920x1080
                            - 2688x1512
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV63X:
                      description: Quality and resolution for MV63X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1920x1080', '2688x1512' or '3840x2160'.
                          enum:
                            - 1920x1080
                            - 2688x1512
                            - 3840x2160
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV93:
                      description: Quality and resolution for MV93 camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080' or '2112x2112'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                    MV93X:
                      description: Quality and resolution for MV93X camera models.
                      properties:
                        quality:
                          description: Quality of the camera. Can be one of 'Standard', 'Enhanced' or 'High'.
                          enum:
                            - Enhanced
                            - High
                            - Standard
                          type: string
                        resolution:
                          description: Resolution of the camera. Can be one of '1080x1080', '2112x2112' or '2880x2880'.
                          enum:
                            - 1080x1080
                            - 2112x2112
                            - 2880x2880
                          type: string
                      required:
                        - quality
                        - resolution
                      type: object
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    audioRecordingEnabled: false
                    cloudArchiveEnabled: false
                    id: "1234"
                    maxRetentionDays: 7
                    motionBasedRetentionEnabled: false
                    motionDetectorVersion: 2
                    name: Sample quality retention profile
                    networkId: N_24329156
                    restrictedBandwidthModeEnabled: true
                    scheduleId: null
                    videoSettings:
                      MV12/MV22/MV72:
                        quality: High
                        resolution: 1920x1080
                      MV12WE:
                        quality: High
                        resolution: 1920x1080
                      MV21/MV71:
                        quality: High
                        resolution: 1280x720
                      MV32:
                        quality: Enhanced
                        resolution: 1080x1080
              schema:
                type: object
          description: Successful operation
      summary: Update an existing quality retention profile for this network.
      tags:
        - Camera quality retention profiles
  "/networks/{networkId}/camera/schedules":
    get:
      description: Returns a list of all camera recording schedules.
      operationId: getNetworkCameraSchedules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "123"
                      name: Weekday schedule
                    - id: "124"
                      name: Office hours
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Returns a list of all camera recording schedules.
      tags:
        - Cameras
  "/networks/{networkId}/cameras/{serial}/snapshot":
    post:
      description: Generate a snapshot of what the camera sees at the specified time and return a link to that image.
      operationId: generateNetworkCameraSnapshot
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                fullframe: false
                timestamp: 2021-04-30T15:18:08Z
              properties:
                fullframe:
                  description: '[optional] If set to "true" the snapshot will be taken at full sensor resolution. This will error if used with timestamp.'
                  type: boolean
                timestamp:
                  description: "[optional] The snapshot will be taken from this time on the camera. The timestamp is expected to be in ISO 8601 format. If no timestamp is specified, we will assume current time."
                  format: date-time
                  type: string
              type: object
      responses:
        "202":
          content:
            application/json:
              examples:
                response:
                  value:
                    expiry: Access to the image will expire at 2018-12-11T03:12:39Z.
                    url: https://spn4.meraki.com/stream/jpeg/snapshot/b2d123asdf423qd22d2
              schema:
                type: object
          description: Successful operation
      summary: Generate a snapshot of what the camera sees at the specified time and return a link to that image.
      tags:
        - Cameras
  "/networks/{networkId}/cameras/{serial}/videoLink":
    get:
      description: Returns video link to the specified camera. If a timestamp is supplied, it links to that timestamp.
      operationId: getNetworkCameraVideoLink
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: "[optional] The video link will start at this timestamp. The timestamp is in UNIX Epoch time (milliseconds). If no timestamp is specified, we will assume current time."
          in: query
          name: timestamp
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    url: https://nxx.meraki.com/office-cameras/n/bs0a1k/manage/nodes/new_list/29048243992402?timestamp=1535732570077
              schema:
                type: object
          description: Successful operation
      summary: Returns video link to the specified camera
      tags:
        - Cameras
  "/networks/{networkId}/cellularFirewallRules":
    get:
      description: Return the cellular firewall rules for an MX network
      operationId: getNetworkCellularFirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the cellular firewall rules for an MX network
      tags:
        - MX cellular firewall
    put:
      description: Update the cellular firewall rules of an MX network
      operationId: updateNetworkCellularFirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - comment: Allow TCP traffic to subnet with HTTP servers.
                    destCidr: 192.168.1.0/24
                    destPort: "443"
                    policy: allow
                    protocol: tcp
                    srcCidr: Any
                    srcPort: Any
                    syslogEnabled: false
              properties:
                rules:
                  description: An ordered array of the firewall rules (not including the default rule)
                  items:
                    properties:
                      comment:
                        description: Description of the rule (optional)
                        type: string
                      destCidr:
                        description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
                        type: string
                      destPort:
                        description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
                        type: string
                      policy:
                        description: "'allow' or 'deny' traffic specified by this rule"
                        enum:
                          - allow
                          - deny
                        type: string
                      protocol:
                        description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
                        enum:
                          - any
                          - icmp
                          - icmp6
                          - tcp
                          - udp
                        type: string
                      srcCidr:
                        description: "Comma-separated list of source IP address(es) (in IP or CIDR notation), or 'any' (note: FQDN not supported for source addresses)"
                        type: string
                      srcPort:
                        description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
                        type: string
                      syslogEnabled:
                        description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
                        type: boolean
                    required:
                      - policy
                      - protocol
                      - srcCidr
                      - destCidr
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the cellular firewall rules of an MX network
      tags:
        - MX cellular firewall
  "/networks/{networkId}/clients":
    get:
      description: List the clients that have used this network in the timespan
      operationId: getNetworkClients
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 10.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    description: Miles's phone
                    firstSeen: 1518365681
                    groupPolicy8021x: Student_Access
                    id: k74272e
                    ip: 1.2.3.4
                    ip6: 2001:db8:3c4d:15::1
                    ip6Local: fe80:0:0:0:1430:aac1:6826:75ab
                    lastSeen: 1526087474
                    mac: 22:33:44:55:66:77
                    manufacturer: Apple
                    notes: My AP's note
                    os: iOS
                    recentDeviceMac: 22:33:44:55:66:77
                    recentDeviceName: Q234-ABCD-5678
                    recentDeviceSerial: 00:11:22:33:44:55
                    smInstalled: true
                    ssid: My SSID
                    status: Online
                    switchport: My switch port
                    usage:
                      recv: 61
                      sent: 138
                    user: milesmeraki
                    vlan: "100"
              schema:
                properties:
                  description:
                    description: Short description of the client
                    type: string
                  firstSeen:
                    description: Timestamp client was first seen in the network
                    type: integer
                  groupPolicy8021x:
                    description: 802.1x group policy of the client
                    type: string
                  id:
                    description: The ID of the client
                    type: string
                  ip:
                    description: The IP address of the client
                    type: string
                  ip6:
                    description: The IPv6 address of the client
                    type: string
                  ip6Local:
                    description: Local IPv6 address of the client
                    type: string
                  lastSeen:
                    description: Timestamp client was last seen in the network
                    type: integer
                  mac:
                    description: The MAC address of the client
                    type: string
                  manufacturer:
                    description: Manufacturer of the client
                    type: string
                  notes:
                    description: Notes on the client
                    type: string
                  os:
                    description: The operating system of the client
                    type: string
                  recentDeviceMac:
                    description: The MAC address of the node that the device was last connected to
                    type: string
                  recentDeviceName:
                    description: The name of the node the device was last connected to
                    type: string
                  recentDeviceSerial:
                    description: The serial of the node the device was last connected to
                    type: string
                  smInstalled:
                    description: Status of SM for the client
                    type: boolean
                  ssid:
                    description: The name of the SSID that the client is connected to
                    type: string
                  status:
                    description: The connection status of the client
                    enum:
                      - Offline
                      - Online
                    type: string
                  switchport:
                    description: The switch port that the client is connected to
                    type: string
                  usage:
                    description: Usage, sent and received
                    properties:
                      recv:
                        description: Usage received by the client
                        format: float
                        type: number
                      sent:
                        description: Usage sent by the client
                        format: float
                        type: number
                    type: object
                  user:
                    description: The username of the user of the client
                    type: string
                  vlan:
                    description: The name of the VLAN that the client is connected to
                    type: string
                type: object
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the clients that have used this network in the timespan
      tags:
        - Clients
  "/networks/{networkId}/clients/connectionStats":
    get:
      description: Aggregated connectivity info for this network, grouped by clients
      operationId: getNetworkClientsConnectionStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - connectionStats:
                        assoc: 0
                        auth: 4
                        dhcp: 0
                        dns: 0
                        success: 10
                      mac: 00:61:71:c8:51:27
                    - connectionStats:
                        assoc: 0
                        auth: 1
                        dhcp: 0
                        dns: 0
                        success: 24
                      mac: 1c:4d:70:7f:5e:5e
                    - connectionStats:
                        assoc: 1
                        auth: 0
                        dhcp: 0
                        dns: 0
                        success: 16
                      mac: 1c:4d:70:81:8d:0a
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Aggregated connectivity info for this network, grouped by clients
      tags:
        - Wireless health
  "/networks/{networkId}/clients/latencyStats":
    get:
      description: Aggregated latency info for this network, grouped by clients
      operationId: getNetworkClientsLatencyStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - 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.'
          in: query
          name: fields
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - latencyStats:
                        backgroundTraffic:
                          avg: 606.52
                          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
                        bestEffortTraffic: same shape as backgroundTraffic
                        videoTraffic: same shape as backgroundTraffic
                        voiceTraffic: same shape as backgroundTraffic
                      mac: 00:61:71:c8:51:27
                    - latencyStats:
                        backgroundTraffic:
                          avg: 606.52
                          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
                        bestEffortTraffic: same shape as backgroundTraffic
                        videoTraffic: same shape as backgroundTraffic
                        voiceTraffic: same shape as backgroundTraffic
                      mac: 1c:4d:70:7f:5e:5e
                    - latencyStats:
                        backgroundTraffic:
                          avg: 606.52
                          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
                        bestEffortTraffic: same shape as backgroundTraffic
                        videoTraffic: same shape as backgroundTraffic
                        voiceTraffic: same shape as backgroundTraffic
                      mac: 1c:4d:70:81:8d:0a
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Aggregated latency info for this network, grouped by clients
      tags:
        - Wireless health
  "/networks/{networkId}/clients/provision":
    post:
      description: Provisions a client with a name and policy. Clients can be provisioned before they associate to the network.
      operationId: provisionNetworkClients
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                devicePolicy: Group policy
                groupPolicyId: "101"
                mac: 00:11:22:33:44:55
                name: Miles's phone
              properties:
                devicePolicy:
                  description: The policy to apply to the specified client. Can be 'Group policy', 'Whitelisted', 'Allowed', 'Blocked', 'Per connection' or 'Normal'. Required.
                  enum:
                    - Allowed
                    - Blocked
                    - Group policy
                    - Normal
                    - Per connection
                    - Whitelisted
                  type: string
                groupPolicyId:
                  description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                  type: string
                mac:
                  description: The MAC address of the client. Required.
                  type: string
                name:
                  description: The display name for the client. Optional. Limited to 255 bytes.
                  type: string
                policiesBySecurityAppliance:
                  description: An object, describing what the policy-connection association is for the security appliance. (Only relevant if the security appliance is actually within the network)
                  properties:
                    devicePolicy:
                      description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked' or 'Normal'. Required.
                      enum:
                        - Blocked
                        - Normal
                        - Whitelisted
                      type: string
                  type: object
                policiesBySsid:
                  description: An object, describing the policy-connection associations for each active SSID within the network. Keys should be the number of enabled SSIDs, mapping to an object describing the client's policy
                  properties:
                    "0":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "1":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "2":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "3":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "4":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "5":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "6":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "7":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "8":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "9":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "10":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "11":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "12":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "13":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                    "14":
                      description: The number for the SSID
                      properties:
                        devicePolicy:
                          description: The policy to apply to the specified client. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                          enum:
                            - Blocked
                            - Group policy
                            - Normal
                            - Whitelisted
                          type: string
                        groupPolicyId:
                          description: The ID of the desired group policy to apply to the client. Required if 'devicePolicy' is set to "Group policy". Otherwise this is ignored.
                          type: string
                      required:
                        - devicePolicy
                      type: object
                  type: object
              required:
                - mac
                - devicePolicy
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    clientId: k74272e
                    devicePolicy: Group policy
                    groupPolicyId: "101"
                    mac: 00:11:22:33:44:55
                    name: Miles's phone
              schema:
                type: object
          description: Successful operation
      summary: Provisions a client with a name and policy
      tags:
        - Clients
  "/networks/{networkId}/clients/{clientId}":
    get:
      description: Return the client associated with the given identifier. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: getNetworkClient
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    cdp: null
                    clientVpnConnections:
                      - connectedAt: 1522613355
                        disconnectedAt: 1522613360
                        remoteIp: 1.2.3.4
                    description: Miles's phone
                    firstSeen: 1518365681
                    id: k74272e
                    ip: 1.2.3.4
                    ip6: ""
                    lastSeen: 1526087474
                    lldp:
                      - - System name
                        - Some system name
                      - - System description
                        - Some system description
                      - - Port ID
                        - "1"
                      - - Chassis ID
                        - 00:18:0a:00:00:00
                      - - Port description
                        - eth0
                      - - System capabilities
                        - Two-port MAC Relay
                    mac: 22:33:44:55:66:77
                    manufacturer: Apple
                    os: iOS
                    recentDeviceMac: 00:11:22:33:44:55
                    smInstalled: true
                    ssid: My SSID
                    status: Online
                    switchport: null
                    user: "null"
                    vlan: "255"
                    wirelessCapabilities: 802.11ac - 2.4 and 5 GHz
              schema:
                type: object
          description: Successful operation
      summary: Return the client associated with the given identifier
      tags:
        - Clients
  "/networks/{networkId}/clients/{clientId}/connectionStats":
    get:
      description: Aggregated connectivity info for a given client on this network. Clients are identified by their MAC.
      operationId: getNetworkClientConnectionStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    connectionStats:
                      assoc: 0
                      auth: 4
                      dhcp: 0
                      dns: 0
                      success: 10
                    mac: 00:61:71:c8:51:27
              schema:
                type: object
          description: Successful operation
      summary: Aggregated connectivity info for a given client on this network
      tags:
        - Wireless health
  "/networks/{networkId}/clients/{clientId}/events":
    get:
      description: Return the events associated with this 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: getNetworkClientEvents
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 100. Default is 100.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - details:
                        on_packet: "true"
                        vap: "1"
                      deviceSerial: Q234-ABCD-5678
                      occurredAt: 1518365681
                      type: l3roaming_assoc_start
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: Return the events associated with this client
      tags:
        - Clients
  "/networks/{networkId}/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: getNetworkClientLatencyHistory
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 791 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 791 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: "The time resolution in seconds for returned data. The valid resolutions are: 86400. The default is 86400."
          in: query
          name: resolution
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - latencyBinsByCategory:
                        backgroundTraffic:
                          "0.5": 41750
                          "1.0": 21552
                          "1024.0": 0
                          "128.0": 0
                          "16.0": 0
                          "2.0": 59940
                          "2048.0": 0
                          "256.0": 1896
                          "32.0": 9954
                          "4.0": 146622
                          "512.0": 0
                          "64.0": 0
                          "8.0": 57354
                        bestEffortTraffic:
                          "0.5": 1840899
                          "1.0": 1644506
                          "1024.0": 4943
                          "128.0": 191977
                          "16.0": 1329568
                          "2.0": 629958
                          "2048.0": 12072
                          "256.0": 30560
                          "32.0": 282168
                          "4.0": 449564
                          "512.0": 26032
                          "64.0": 97573
                          "8.0": 2009658
                        videoTraffic:
                          "0.5": 0
                          "1.0": 0
                          "1024.0": 0
                          "128.0": 0
                          "16.0": 0
                          "2.0": 0
                          "2048.0": 0
                          "256.0": 0
                          "32.0": 0
                          "4.0": 0
                          "512.0": 0
                          "64.0": 0
                          "8.0": 0
                        voiceTraffic:
                          "0.5": 716
                          "1.0": 948
                          "1024.0": 0
                          "128.0": 0
                          "16.0": 0
                          "2.0": 474
                          "2048.0": 0
                          "256.0": 0
                          "32.0": 0
                          "4.0": 78
                          "512.0": 0
                          "64.0": 0
                          "8.0": 0
                      t0: 1550534400
                      t1: 1550620800
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the latency history for a client
      tags:
        - Clients
  "/networks/{networkId}/clients/{clientId}/latencyStats":
    get:
      description: Aggregated latency info for a given client on this network. Clients are identified by their MAC.
      operationId: getNetworkClientLatencyStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - 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.'
          in: query
          name: fields
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    latencyStats:
                      backgroundTraffic:
                        avg: 606.52
                        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
                      bestEffortTraffic: same shape as backgroundTraffic
                      videoTraffic: same shape as backgroundTraffic
                      voiceTraffic: same shape as backgroundTraffic
                    mac: 00:61:71:c8:51:27
              schema:
                type: object
          description: Successful operation
      summary: Aggregated latency info for a given client on this network
      tags:
        - Wireless health
  "/networks/{networkId}/clients/{clientId}/policy":
    get:
      description: Return the policy assigned to a client on the network. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: getNetworkClientPolicy
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    groupPolicyId: "101"
                    mac: 00:11:22:33:44:55
                    type: Group policy
              schema:
                type: object
          description: Successful operation
      summary: Return the policy assigned to a client on the network
      tags:
        - Clients
    put:
      description: Update the policy assigned to a client on the network. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: updateNetworkClientPolicy
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                groupPolicyId: "101"
                mac: 00:11:22:33:44:55
                type: Group policy
              properties:
                devicePolicy:
                  description: The policy to assign. Can be 'Whitelisted', 'Blocked', 'Normal' or 'Group policy'. Required.
                  type: string
                groupPolicyId:
                  description: "[optional] If 'devicePolicy' is set to 'Group policy' this param is used to specify the group policy ID."
                  type: string
              required:
                - devicePolicy
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    groupPolicyId: "101"
                    mac: 00:11:22:33:44:55
                    type: Group policy
              schema:
                type: object
          description: Successful operation
      summary: Update the policy assigned to a client on the network
      tags:
        - Clients
  "/networks/{networkId}/clients/{clientId}/splashAuthorizationStatus":
    get:
      description: Return the splash authorization for a client, for each SSID they've associated with through splash. Only enabled SSIDs with Click-through splash enabled will be included. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: getNetworkClientSplashAuthorizationStatus
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ssids:
                      "0":
                        authorizedAt: 2017-07-19 16:24:13 UTC
                        expiresAt: 2017-07-20 16:24:13 UTC
                        isAuthorized: true
                      "2":
                        isAuthorized: false
              schema:
                type: object
          description: Successful operation
      summary: Return the splash authorization for a client, for each SSID they've associated with through splash
      tags:
        - Clients
    put:
      description: Update a client's splash authorization. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: updateNetworkClientSplashAuthorizationStatus
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ssids:
                  "0":
                    isAuthorized: true
                  "2":
                    isAuthorized: false
              properties:
                ssids:
                  description: The target SSIDs. Each SSID must be enabled and must have Click-through splash enabled. For each SSID where isAuthorized is true, the expiration time will automatically be set according to the SSID's splash frequency. Not all networks support configuring all SSIDs
                  properties:
                    "0":
                      description: Splash authorization for SSID 0
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "1":
                      description: Splash authorization for SSID 1
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "2":
                      description: Splash authorization for SSID 2
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "3":
                      description: Splash authorization for SSID 3
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "4":
                      description: Splash authorization for SSID 4
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "5":
                      description: Splash authorization for SSID 5
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "6":
                      description: Splash authorization for SSID 6
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "7":
                      description: Splash authorization for SSID 7
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "8":
                      description: Splash authorization for SSID 8
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "9":
                      description: Splash authorization for SSID 9
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "10":
                      description: Splash authorization for SSID 10
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "11":
                      description: Splash authorization for SSID 11
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "12":
                      description: Splash authorization for SSID 12
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "13":
                      description: Splash authorization for SSID 13
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                    "14":
                      description: Splash authorization for SSID 14
                      properties:
                        isAuthorized:
                          description: New authorization status for the SSID (true, false).
                          type: boolean
                      type: object
                  type: object
              required:
                - ssids
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ssids:
                      "0":
                        authorizedAt: 2017-07-19 16:24:13 UTC
                        expiresAt: 2017-07-20 16:24:13 UTC
                        isAuthorized: true
                      "2":
                        isAuthorized: false
              schema:
                type: object
          description: Successful operation
      summary: Update a client's splash authorization
      tags:
        - Clients
  "/networks/{networkId}/clients/{clientId}/usageHistory":
    get:
      description: Return the client's daily usage history. Usage data is in kilobytes. Clients can be identified by a client key or either the MAC or IP depending on whether the network uses Track-by-IP.
      operationId: getNetworkClientUsageHistory
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: clientId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - received: 680
                      sent: 500
                      ts: 1518365681
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the client's daily usage history
      tags:
        - Clients
  "/networks/{networkId}/connectionStats":
    get:
      description: Aggregated connectivity info for this network
      operationId: getNetworkConnectionStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    assoc: 1
                    auth: 5
                    dhcp: 0
                    dns: 0
                    success: 51
              schema:
                type: object
          description: Successful operation
      summary: Aggregated connectivity info for this network
      tags:
        - Wireless health
  "/networks/{networkId}/contentFiltering":
    get:
      description: Return the content filtering settings for an MX network
      operationId: getNetworkContentFiltering
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    allowedUrlPatterns:
                      - http://www.example.org
                      - http://help.com.au
                    blockedUrlCategories:
                      - id: meraki:contentFiltering/category/1
                        name: Real Estate
                      - id: meraki:contentFiltering/category/7
                        name: Shopping
                    blockedUrlPatterns:
                      - http://www.example.com
                      - http://www.betting.com
                    urlCategoryListSize: topSites
              schema:
                type: object
          description: Successful operation
      summary: Return the content filtering settings for an MX network
      tags:
        - Content filtering rules
    put:
      description: Update the content filtering settings for an MX network
      operationId: updateNetworkContentFiltering
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                allowedUrlPatterns:
                  - http://www.example.org
                  - http://help.com.au
                blockedUrlCategories:
                  - meraki:contentFiltering/category/1
                  - meraki:contentFiltering/category/7
                blockedUrlPatterns:
                  - http://www.example.com
                  - http://www.betting.com
                urlCategoryListSize: topSites
              properties:
                allowedUrlPatterns:
                  description: A list of URL patterns that are allowed
                  items:
                    type: string
                  type: array
                blockedUrlCategories:
                  description: A list of URL categories to block
                  items:
                    type: string
                  type: array
                blockedUrlPatterns:
                  description: A list of URL patterns that are blocked
                  items:
                    type: string
                  type: array
                urlCategoryListSize:
                  description: URL category list size which is either 'topSites' or 'fullList'
                  enum:
                    - fullList
                    - topSites
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    allowedUrlPatterns:
                      - http://www.example.org
                      - http://help.com.au
                    blockedUrlCategories:
                      - id: meraki:contentFiltering/category/1
                        name: Real Estate
                      - id: meraki:contentFiltering/category/7
                        name: Shopping
                    blockedUrlPatterns:
                      - http://www.example.com
                      - http://www.betting.com
                    urlCategoryListSize: topSites
              schema:
                type: object
          description: Successful operation
      summary: Update the content filtering settings for an MX network
      tags:
        - Content filtering rules
  "/networks/{networkId}/contentFiltering/categories":
    get:
      description: List all available content filtering categories for an MX network
      operationId: getNetworkContentFilteringCategories
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    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
              schema:
                type: object
          description: Successful operation
      summary: List all available content filtering categories for an MX network
      tags:
        - Content filtering categories
  "/networks/{networkId}/devices":
    get:
      description: List the devices in a network
      operationId: getNetworkDevices
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - address: 1600 Pennsylvania Ave
                      beaconIdParams:
                        major: 5
                        minor: 3
                        uuid: 00000000-0000-0000-0000-000000000000
                      firmware: wireless-25-14
                      floorPlanId: g_1234567
                      lanIp: 1.2.3.4
                      lat: 37.4180951010362
                      lng: -122.098531723022
                      mac: 00:11:22:33:44:55
                      model: MR34
                      name: My AP
                      networkId: N_24329156
                      notes: My AP's note
                      serial: Q234-ABCD-5678
                      tags: " recently-added "
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the devices in a network
      tags:
        - Devices
  "/networks/{networkId}/devices/claim":
    post:
      description: "Claim devices into a network. (Note: for recently claimed devices, it may take a few minutes for API requests against that device to succeed)"
      operationId: claimNetworkDevices
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                serials:
                  - Q234-ABCD-0001
                  - Q234-ABCD-0002
                  - Q234-ABCD-0003
              properties:
                serial:
                  description: "[DEPRECATED] The serial of a device to claim"
                  type: string
                serials:
                  description: A list of serials of devices to claim
                  items:
                    type: string
                  type: array
              type: object
      responses:
        "200":
          description: Successful operation
      summary: "Claim devices into a network. (Note: for recently claimed devices, it may take a few minutes for API requests against that device to succeed)"
      tags:
        - Devices
  "/networks/{networkId}/devices/connectionStats":
    get:
      description: Aggregated connectivity info for this network, grouped by node
      operationId: getNetworkDevicesConnectionStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - connectionStats:
                        assoc: 0
                        auth: 1
                        dhcp: 0
                        dns: 0
                        success: 43
                      serial: Q2JC-2MJM-FHRD
                    - connectionStats:
                        assoc: 1
                        auth: 4
                        dhcp: 0
                        dns: 0
                        success: 8
                      serial: Q2FJ-3SHB-Y2K2
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Aggregated connectivity info for this network, grouped by node
      tags:
        - Wireless health
  "/networks/{networkId}/devices/latencyStats":
    get:
      description: Aggregated latency info for this network, grouped by node
      operationId: getNetworkDevicesLatencyStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - 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.'
          in: query
          name: fields
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - latencyStats:
                        backgroundTraffic:
                          avg: 606.52
                          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
                        bestEffortTraffic: same shape as backgroundTraffic
                        videoTraffic: same shape as backgroundTraffic
                        voiceTraffic: same shape as backgroundTraffic
                      serial: Q2JC-2MJM-FHRD
                    - latencyStats:
                        backgroundTraffic:
                          avg: 606.52
                          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
                        bestEffortTraffic: same shape as backgroundTraffic
                        videoTraffic: same shape as backgroundTraffic
                        voiceTraffic: same shape as backgroundTraffic
                      serial: Q2FJ-3SHB-Y2K2
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Aggregated latency info for this network, grouped by node
      tags:
        - Wireless health
  "/networks/{networkId}/devices/{serial}":
    get:
      description: Return a single device
      operationId: getNetworkDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    address: 1600 Pennsylvania Ave
                    beaconIdParams:
                      major: 5
                      minor: 3
                      uuid: 00000000-0000-0000-0000-000000000000
                    firmware: wireless-25-14
                    floorPlanId: g_1234567
                    lanIp: 1.2.3.4
                    lat: 37.4180951010362
                    lng: -122.098531723022
                    mac: 00:11:22:33:44:55
                    model: MR34
                    name: My AP
                    networkId: N_24329156
                    notes: My AP's note
                    serial: Q234-ABCD-5678
                    tags: " recently-added "
              schema:
                type: object
          description: Successful operation
      summary: Return a single device
      tags:
        - Devices
    put:
      description: Update the attributes of a device
      operationId: updateNetworkDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                lat: 37.4180951010362
                lng: -122.098531723022
                mac: 00:11:22:33:44:55
                name: My AP
                serial: Q234-ABCD-5678
                tags: " recently-added "
              properties:
                address:
                  description: The address of a device
                  type: string
                floorPlanId:
                  description: The floor plan to associate to this device. null disassociates the device from the floorplan.
                  type: string
                lat:
                  description: The latitude of a device
                  format: float
                  type: number
                lng:
                  description: The longitude of a device
                  format: float
                  type: number
                moveMapMarker:
                  description: Whether or not to set the latitude and longitude of a device based on the new address. Only applies when lat and lng are not specified.
                  type: boolean
                name:
                  description: The name of a device
                  type: string
                notes:
                  description: The notes for the device. String. Limited to 255 characters.
                  type: string
                switchProfileId:
                  description: The ID of a switch profile to bind to the device (for available switch profiles, see the 'Switch Profiles' endpoint). Use null to unbind the switch device from the current profile. For a device to be bindable to a switch profile, it must (1) be a switch, and (2) belong to a network that is bound to a configuration template.
                  type: string
                tags:
                  description: The tags of a device
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    address: 1600 Pennsylvania Ave
                    beaconIdParams:
                      major: 5
                      minor: 3
                      uuid: 00000000-0000-0000-0000-000000000000
                    firmware: wireless-25-14
                    floorPlanId: g_1234567
                    lanIp: 1.2.3.4
                    lat: 37.4180951010362
                    lng: -122.098531723022
                    mac: 00:11:22:33:44:55
                    model: MR34
                    name: My AP
                    networkId: N_24329156
                    notes: My AP's note
                    serial: Q234-ABCD-5678
                    tags: " recently-added "
              schema:
                type: object
          description: Successful operation
      summary: Update the attributes of a device
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/connectionStats":
    get:
      description: Aggregated connectivity info for a given AP on this network
      operationId: getNetworkDeviceConnectionStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    connectionStats:
                      assoc: 0
                      auth: 1
                      dhcp: 0
                      dns: 0
                      success: 43
                    serial: Q2JC-2MJM-FHRD
              schema:
                type: object
          description: Successful operation
      summary: Aggregated connectivity info for a given AP on this network
      tags:
        - Wireless health
  "/networks/{networkId}/devices/{serial}/latencyStats":
    get:
      description: Aggregated latency info for a given AP on this network
      operationId: getNetworkDeviceLatencyStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - 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.'
          in: query
          name: fields
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    latencyStats:
                      backgroundTraffic:
                        avg: 606.52
                        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
                      bestEffortTraffic: same shape as backgroundTraffic
                      videoTraffic: same shape as backgroundTraffic
                      voiceTraffic: same shape as backgroundTraffic
                    serial: Q2JC-2MJM-FHRD
              schema:
                type: object
          description: Successful operation
      summary: Aggregated latency info for a given AP on this network
      tags:
        - Wireless health
  "/networks/{networkId}/devices/{serial}/lossAndLatencyHistory":
    get:
      description: Get the uplink loss percentage and latency in milliseconds for a wired network device.
      operationId: getNetworkDeviceLossAndLatencyHistory
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 60 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: "The time resolution in seconds for returned data. The valid resolutions are: 60, 600, 3600, 86400. The default is 60."
          in: query
          name: resolution
          schema:
            type: integer
        - description: The WAN uplink used to obtain the requested stats. Valid uplinks are wan1, wan2, cellular. The default is wan1.
          in: query
          name: uplink
          schema:
            enum:
              - cellular
              - wan1
              - wan2
            type: string
        - description: The destination IP used to obtain the requested stats. This is required.
          in: query
          name: ip
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - endTime: 2018-10-09T22:19:27Z
                      latencyMs: 324.12
                      lossPercent: 5.23
                      startTime: 2018-10-09T22:18:27Z
                    - endTime: 2018-10-09T22:20:27Z
                      latencyMs: 43
                      lossPercent: 1
                      startTime: 2018-10-09T22:19:27Z
                    - endTime: 2018-10-09T22:21:27Z
                      latencyMs: 44.02
                      lossPercent: 0.01
                      startTime: 2018-10-09T22:20:27Z
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Get the uplink loss percentage and latency in milliseconds for a wired network device.
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/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: getNetworkDevicePerformance
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    perfScore: 10
              schema:
                type: object
          description: Successful operation
      summary: Return the performance score for a single MX
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/reboot":
    post:
      description: Reboot a device
      operationId: rebootNetworkDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success: true
              schema:
                type: object
          description: Successful operation
      summary: Reboot a device
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/remove":
    post:
      description: Remove a single device
      operationId: removeNetworkDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Remove a single device
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/uplink":
    get:
      description: Return the uplink information for a device.
      operationId: getNetworkDeviceUplink
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - dns: 8.8.8.8, 8.8.4.4
                      gateway: 1.2.3.5
                      interface: WAN 1
                      ip: 1.2.3.4
                      publicIp: 123.123.123.1
                      status: Active
                      usingStaticIp: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the uplink information for a device.
      tags:
        - Devices
  "/networks/{networkId}/devices/{serial}/wireless/status":
    get:
      description: Return the SSID statuses of an access point
      operationId: getNetworkDeviceWirelessStatus
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: serial
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    basicServiceSets:
                      - band: 2.4 GHz
                        broadcasting: true
                        bssid: 8A:15:04:00:00:00
                        channel: 11
                        channelWidth: 20 MHz
                        enabled: true
                        power: 18 dBm
                        ssidName: My SSID
                        ssidNumber: 0
                        visible: true
                      - band: 5 GHz
                        broadcasting: true
                        bssid: 8A:15:14:00:00:00
                        channel: 64
                        channelWidth: 40 MHz
                        enabled: true
                        power: 18 dBm
                        ssidName: My SSID
                        ssidNumber: 0
                        visible: true
                      - band: 6 GHz
                        broadcasting: true
                        bssid: 8A:15:24:00:00:00
                        channel: 145
                        channelWidth: 80 MHz
                        enabled: true
                        power: 18 dBm
                        ssidName: My SSID
                        ssidNumber: 0
                        visible: true
              schema:
                type: object
          description: Successful operation
      summary: Return the SSID statuses of an access point
      tags:
        - SSIDs
  "/networks/{networkId}/events":
    get:
      description: List the events for the network
      operationId: getNetworkEvents
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The product type to fetch events for. This parameter is required for networks with multiple device types. Valid types are wireless, appliance, switch, systemsManager, camera, cellularGateway, and environmental
          in: query
          name: productType
          schema:
            type: string
        - description: A list of event types. The returned events will be filtered to only include events with these types.
          explode: false
          in: query
          name: includedEventTypes
          schema:
            items:
              type: string
            type: array
          style: form
        - description: A list of event types. The returned events will be filtered to exclude events with these types.
          explode: false
          in: query
          name: excludedEventTypes
          schema:
            items:
              type: string
            type: array
          style: form
        - description: The MAC address of the Meraki device which the list of events will be filtered with
          in: query
          name: deviceMac
          schema:
            type: string
        - description: The serial of the Meraki device which the list of events will be filtered with
          in: query
          name: deviceSerial
          schema:
            type: string
        - description: The name of the Meraki device which the list of events will be filtered with
          in: query
          name: deviceName
          schema:
            type: string
        - description: The IP of the client which the list of events will be filtered with. Only supported for track-by-IP networks.
          in: query
          name: clientIp
          schema:
            type: string
        - description: The MAC address of the client which the list of events will be filtered with. Only supported for track-by-MAC networks.
          in: query
          name: clientMac
          schema:
            type: string
        - description: The name, or partial name, of the client which the list of events will be filtered with
          in: query
          name: clientName
          schema:
            type: string
        - description: The MAC address of the Systems Manager device which the list of events will be filtered with
          in: query
          name: smDeviceMac
          schema:
            type: string
        - description: The name of the Systems Manager device which the list of events will be filtered with
          in: query
          name: smDeviceName
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 10.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    events:
                      - category: "80211"
                        clientDescription: Miles's phone
                        clientId: k74272e
                        clientMac: 22:33:44:55:66:77
                        description: 802.11 association
                        deviceName: My AP
                        deviceSerial: Q234-ABCD-5678
                        eventData:
                          aid: "2104009183"
                          channel: "36"
                          client_ip: 1.2.3.4
                          client_mac: 22:33:44:55:66:77
                          radio: "1"
                          rssi: "12"
                          vap: "1"
                        networkId: N_24329156
                        occurredAt: 2018-02-11T00:00:00.090210Z
                        ssidName: My SSID
                        ssidNumber: 1
                        type: association
                    message: Some error
                    pageEndAt: 2018-02-11T00:00:00.090210Z
                    pageStartAt: 2018-02-11T00:00:00.090210Z
              schema:
                type: object
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the events for the network
      tags:
        - Events
  "/networks/{networkId}/events/eventTypes":
    get:
      description: List the event type to human-readable description
      operationId: getNetworkEventsEventTypes
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - category: "802.11"
                      description: 802.11 association
                      type: association
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the event type to human-readable description
      tags:
        - Events
  "/networks/{networkId}/failedConnections":
    get:
      description: List of all failed client connection events on this network in a given time range
      operationId: getNetworkFailedConnections
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - description: Filter by AP
          in: query
          name: serial
          schema:
            type: string
        - description: Filter by client MAC
          in: query
          name: clientId
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - clientMac: 00:61:71:c8:51:27
                      failureStep: auth
                      serial: Q2JC-2MJM-FHRD
                      ssidNumber: 0
                      ts: 1532032592
                      type: 802.1X auth fail
                      vlan: -1
                    - clientMac: 00:61:71:c8:51:27
                      failureStep: auth
                      nodeId: Q2FJ-3SHB-Y2K2
                      ssidNumber: 0
                      ts: 1532032593
                      type: 802.1X auth fail
                      vlan: -1
                    - clientMac: 00:61:71:c8:51:27
                      failureStep: auth
                      nodeId: Q2FJ-3SHB-Y2K2
                      ssidNumber: 0
                      ts: 1532032594
                      type: 802.1X auth fail
                      vlan: -1
                    - clientMac: 00:61:71:c8:51:27
                      failureStep: auth
                      nodeId: Q2FJ-3SHB-Y2K2
                      ssidNumber: 0
                      ts: 1532032595
                      type: 802.1X auth fail
                      vlan: -1
                    - clientMac: 1c:4d:70:7f:5e:5e
                      failureStep: assoc
                      nodeId: Q2FJ-3SHB-Y2K2
                      ssidNumber: 0
                      ts: 1532032592
                      type: 802.1X auth fail
                      vlan: -1
                    - clientMac: 1c:4d:70:81:8d:0a
                      failureStep: auth
                      nodeId: Q2FJ-3SHB-Y2K2
                      ssidNumber: 0
                      ts: 1532032595
                      type: 802.1X auth fail
                      vlan: -1
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List of all failed client connection events on this network in a given time range
      tags:
        - Wireless health
  "/networks/{networkId}/firewalledServices":
    get:
      description: List the appliance services and their accessibility rules
      operationId: getNetworkFirewalledServices
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - access: restricted
                      allowedIps:
                        - 123.123.123.1
                      service: web
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the appliance services and their accessibility rules
      tags:
        - Firewalled services
  "/networks/{networkId}/firewalledServices/{service}":
    get:
      description: Return the accessibility settings of the given service ('ICMP', 'web', or 'SNMP')
      operationId: getNetworkFirewalledService
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: service
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    access: restricted
                    allowedIps:
                      - 123.123.123.1
                    service: web
              schema:
                type: object
          description: Successful operation
      summary: Return the accessibility settings of the given service ('ICMP', 'web', or 'SNMP')
      tags:
        - Firewalled services
  "/networks/{networkId}/floorPlans":
    get:
      description: List the floor plans that belong to your network
      operationId: getNetworkFloorPlans
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - bottomLeftCorner:
                        lat: 37.7696461495
                        lng: -122.3880815506
                      bottomRightCorner:
                        lat: 37.771524649766654
                        lng: -122.38795275055205
                      center:
                        lat: 37.770040510499996
                        lng: -122.38714009525
                      devices:
                        - address: 1600 Pennsylvania Ave
                          beaconIdParams:
                            major: 5
                            minor: 3
                            uuid: 00000000-0000-0000-0000-000000000000
                          firmware: wireless-25-14
                          floorPlanId: g_1234567
                          lanIp: 1.2.3.4
                          lat: 37.4180951010362
                          lng: -122.098531723022
                          mac: 00:11:22:33:44:55
                          model: MR34
                          name: My AP
                          networkId: N_24329156
                          notes: My AP's note
                          serial: Q234-ABCD-5678
                          tags: " recently-added "
                      floorPlanId: g_1234567
                      height: 150.1
                      imageExtension: png
                      imageMd5: 2a9edd3f4ffd80130c647d13eacb59f3
                      imageUrl: https://meraki-na.s3.amazonaws.com/assets/...
                      imageUrlExpiresAt: 2019-06-11 16:04:54 +00:00
                      name: HQ Floor Plan
                      topLeftCorner:
                        lat: 37.769700101836364
                        lng: -122.3888684251381
                      topRightCorner:
                        lat: 37.77157860210302
                        lng: -122.38873962509012
                      width: 100
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the floor plans that belong to your network
      tags:
        - Floor plans
    post:
      description: Upload a floor plan
      operationId: createNetworkFloorPlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example: {}
              properties:
                bottomLeftCorner:
                  description: The longitude and latitude of the bottom left corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                bottomRightCorner:
                  description: The longitude and latitude of the bottom right corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                center:
                  description: The longitude and latitude of the center of your floor plan. The 'center' or two adjacent corners (e.g. 'topLeftCorner' and 'bottomLeftCorner') must be specified. If 'center' is specified, the floor plan is placed over that point with no rotation. If two adjacent corners are specified, the floor plan is rotated to line up with the two specified points. The aspect ratio of the floor plan's image is preserved regardless of which corners/center are specified. (This means if that more than two corners are specified, only two corners may be used to preserve the floor plan's aspect ratio.). No two points can have the same latitude, longitude pair.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                imageContents:
                  description: The file contents (a base 64 encoded string) of your image. Supported formats are PNG, GIF, and JPG. Note that all images are saved as PNG files, regardless of the format they are uploaded in.
                  format: byte
                  type: string
                name:
                  description: The name of your floor plan.
                  type: string
                topLeftCorner:
                  description: The longitude and latitude of the top left corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                topRightCorner:
                  description: The longitude and latitude of the top right corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
              required:
                - name
                - imageContents
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    bottomLeftCorner:
                      lat: 37.7696461495
                      lng: -122.3880815506
                    bottomRightCorner:
                      lat: 37.771524649766654
                      lng: -122.38795275055205
                    center:
                      lat: 37.770040510499996
                      lng: -122.38714009525
                    devices:
                      - address: 1600 Pennsylvania Ave
                        beaconIdParams:
                          major: 5
                          minor: 3
                          uuid: 00000000-0000-0000-0000-000000000000
                        firmware: wireless-25-14
                        floorPlanId: g_1234567
                        lanIp: 1.2.3.4
                        lat: 37.4180951010362
                        lng: -122.098531723022
                        mac: 00:11:22:33:44:55
                        model: MR34
                        name: My AP
                        networkId: N_24329156
                        notes: My AP's note
                        serial: Q234-ABCD-5678
                        tags: " recently-added "
                    floorPlanId: g_1234567
                    height: 150.1
                    imageExtension: png
                    imageMd5: 2a9edd3f4ffd80130c647d13eacb59f3
                    imageUrl: https://meraki-na.s3.amazonaws.com/assets/...
                    imageUrlExpiresAt: 2019-06-11 16:04:54 +00:00
                    name: HQ Floor Plan
                    topLeftCorner:
                      lat: 37.769700101836364
                      lng: -122.3888684251381
                    topRightCorner:
                      lat: 37.77157860210302
                      lng: -122.38873962509012
                    width: 100
              schema:
                type: object
          description: Successful operation
      summary: Upload a floor plan
      tags:
        - Floor plans
  "/networks/{networkId}/floorPlans/{floorPlanId}":
    delete:
      description: Destroy a floor plan
      operationId: deleteNetworkFloorPlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: floorPlanId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Destroy a floor plan
      tags:
        - Floor plans
    get:
      description: Find a floor plan by ID
      operationId: getNetworkFloorPlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: floorPlanId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    bottomLeftCorner:
                      lat: 37.7696461495
                      lng: -122.3880815506
                    bottomRightCorner:
                      lat: 37.771524649766654
                      lng: -122.38795275055205
                    center:
                      lat: 37.770040510499996
                      lng: -122.38714009525
                    devices:
                      - address: 1600 Pennsylvania Ave
                        beaconIdParams:
                          major: 5
                          minor: 3
                          uuid: 00000000-0000-0000-0000-000000000000
                        firmware: wireless-25-14
                        floorPlanId: g_1234567
                        lanIp: 1.2.3.4
                        lat: 37.4180951010362
                        lng: -122.098531723022
                        mac: 00:11:22:33:44:55
                        model: MR34
                        name: My AP
                        networkId: N_24329156
                        notes: My AP's note
                        serial: Q234-ABCD-5678
                        tags: " recently-added "
                    floorPlanId: g_1234567
                    height: 150.1
                    imageExtension: png
                    imageMd5: 2a9edd3f4ffd80130c647d13eacb59f3
                    imageUrl: https://meraki-na.s3.amazonaws.com/assets/...
                    imageUrlExpiresAt: 2019-06-11 16:04:54 +00:00
                    name: HQ Floor Plan
                    topLeftCorner:
                      lat: 37.769700101836364
                      lng: -122.3888684251381
                    topRightCorner:
                      lat: 37.77157860210302
                      lng: -122.38873962509012
                    width: 100
              schema:
                type: object
          description: Successful operation
      summary: Find a floor plan by ID
      tags:
        - Floor plans
    put:
      description: Update a floor plan's geolocation and other meta data
      operationId: updateNetworkFloorPlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: floorPlanId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example: {}
              properties:
                bottomLeftCorner:
                  description: The longitude and latitude of the bottom left corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                bottomRightCorner:
                  description: The longitude and latitude of the bottom right corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                center:
                  description: The longitude and latitude of the center of your floor plan. If you want to change the geolocation data of your floor plan, either the 'center' or two adjacent corners (e.g. 'topLeftCorner' and 'bottomLeftCorner') must be specified. If 'center' is specified, the floor plan is placed over that point with no rotation. If two adjacent corners are specified, the floor plan is rotated to line up with the two specified points. The aspect ratio of the floor plan's image is preserved regardless of which corners/center are specified. (This means if that more than two corners are specified, only two corners may be used to preserve the floor plan's aspect ratio.). No two points can have the same latitude, longitude pair.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                imageContents:
                  description: The file contents (a base 64 encoded string) of your new image. Supported formats are PNG, GIF, and JPG. Note that all images are saved as PNG files, regardless of the format they are uploaded in. If you upload a new image, and you do NOT specify any new geolocation fields ('center, 'topLeftCorner', etc), the floor plan will be recentered with no rotation in order to maintain the aspect ratio of your new image.
                  format: byte
                  type: string
                name:
                  description: The name of your floor plan.
                  type: string
                topLeftCorner:
                  description: The longitude and latitude of the top left corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
                topRightCorner:
                  description: The longitude and latitude of the top right corner of your floor plan.
                  properties:
                    lat:
                      description: Latitude
                      format: float
                      type: number
                    lng:
                      description: Longitude
                      format: float
                      type: number
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    bottomLeftCorner:
                      lat: 37.7696461495
                      lng: -122.3880815506
                    bottomRightCorner:
                      lat: 37.771524649766654
                      lng: -122.38795275055205
                    center:
                      lat: 37.770040510499996
                      lng: -122.38714009525
                    devices:
                      - address: 1600 Pennsylvania Ave
                        beaconIdParams:
                          major: 5
                          minor: 3
                          uuid: 00000000-0000-0000-0000-000000000000
                        firmware: wireless-25-14
                        floorPlanId: g_1234567
                        lanIp: 1.2.3.4
                        lat: 37.4180951010362
                        lng: -122.098531723022
                        mac: 00:11:22:33:44:55
                        model: MR34
                        name: My AP
                        networkId: N_24329156
                        notes: My AP's note
                        serial: Q234-ABCD-5678
                        tags: " recently-added "
                    floorPlanId: g_1234567
                    height: 150.1
                    imageExtension: png
                    imageMd5: 2a9edd3f4ffd80130c647d13eacb59f3
                    imageUrl: https://meraki-na.s3.amazonaws.com/assets/...
                    imageUrlExpiresAt: 2019-06-11 16:04:54 +00:00
                    name: HQ Floor Plan
                    topLeftCorner:
                      lat: 37.769700101836364
                      lng: -122.3888684251381
                    topRightCorner:
                      lat: 37.77157860210302
                      lng: -122.38873962509012
                    width: 100
              schema:
                type: object
          description: Successful operation
      summary: Update a floor plan's geolocation and other meta data
      tags:
        - Floor plans
  "/networks/{networkId}/l3FirewallRules":
    get:
      description: Return the L3 firewall rules for an MX network
      operationId: getNetworkL3FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the L3 firewall rules for an MX network
      tags:
        - MX L3 outbound firewall
    put:
      description: Update the L3 firewall rules of an MX network
      operationId: updateNetworkL3FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/updateNetworkApplianceFirewallInboundFirewallRulesUpdatenetworkappliancefirewallinboundfirewallrules"
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the L3 firewall rules of an MX network
      tags:
        - MX L3 outbound firewall
  "/networks/{networkId}/l7FirewallRules":
    get:
      description: List the MX L7 firewall rules for an MX network
      operationId: getNetworkL7FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    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
              schema:
                type: object
          description: Successful operation
      summary: List the MX L7 firewall rules for an MX network
      tags:
        - MX L7 firewall
    put:
      description: Update the MX L7 firewall rules for an MX network
      operationId: updateNetworkL7FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              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
              properties:
                rules:
                  description: An ordered array of the MX L7 firewall rules
                  items:
                    properties:
                      policy:
                        description: "'Deny' traffic specified by this rule"
                        enum:
                          - deny
                        type: string
                      type:
                        description: "Type of the L7 rule. One of: 'application', 'applicationCategory', 'host', 'port', 'ipRange'"
                        enum:
                          - application
                          - applicationCategory
                          - host
                          - ipRange
                          - port
                        type: string
                      value:
                        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.
                        type: string
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    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
              schema:
                type: object
          description: Successful operation
      summary: Update the MX L7 firewall rules for an MX network
      tags:
        - MX L7 firewall
  "/networks/{networkId}/l7FirewallRules/applicationCategories":
    get:
      description: Return the L7 firewall application categories and their associated applications for an MX network
      operationId: getNetworkL7FirewallRulesApplicationCategories
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    applicationCategories:
                      - applications:
                          - id: meraki:layer7/application/5
                            name: Advertising.com
                          - id: meraki:layer7/application/0
                            name: AppNexus
                          - id: meraki:layer7/application/1
                            name: Brightroll
                        id: meraki:layer7/category/24
                        name: Advertising
              schema:
                type: object
          description: Successful operation
      summary: Return the L7 firewall application categories and their associated applications for an MX network
      tags:
        - MX L7 application categories
  "/networks/{networkId}/latencyStats":
    get:
      description: Aggregated latency info for this network
      operationId: getNetworkLatencyStats
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 180 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 7 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Filter results by band (either '2.4' or '5'). Note that data prior to February 2020 will not have band information.
          in: query
          name: band
          schema:
            enum:
              - "2.4"
              - "5"
            type: string
        - description: Filter results by SSID
          in: query
          name: ssid
          schema:
            type: integer
        - description: Filter results by VLAN
          in: query
          name: vlan
          schema:
            type: integer
        - description: Filter results by AP Tag
          in: query
          name: apTag
          schema:
            type: string
        - 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.'
          in: query
          name: fields
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    backgroundTraffic:
                      avg: 606.52
                      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
                    bestEffortTraffic: same shape as backgroundTraffic
                    videoTraffic: same shape as backgroundTraffic
                    voiceTraffic: same shape as backgroundTraffic
              schema:
                type: object
          description: Successful operation
      summary: Aggregated latency info for this network
      tags:
        - Wireless health
  "/networks/{networkId}/merakiAuthUsers":
    get:
      description: List the splash or RADIUS users configured under Meraki Authentication for a network
      operationId: getNetworkMerakiAuthUsers
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - accountType: Guest
                      authorizations:
                        - authorizedByEmail: miles@meraki.com
                          authorizedByName: Miles Meraki
                          authorizedZone: Store WiFi
                          expiresAt: 1526087474
                      createdAt: 1518365681
                      email: miles@meraki.com
                      id: aGlAaGkuY29t
                      name: Miles Meraki
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the splash or RADIUS users configured under Meraki Authentication for a network
      tags:
        - Meraki auth users
  "/networks/{networkId}/merakiAuthUsers/{merakiAuthUserId}":
    get:
      description: Return the Meraki Auth splash or RADIUS user
      operationId: getNetworkMerakiAuthUser
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: merakiAuthUserId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    accountType: Guest
                    authorizations:
                      - authorizedByEmail: miles@meraki.com
                        authorizedByName: Miles Meraki
                        authorizedZone: Store WiFi
                        expiresAt: 1526087474
                    createdAt: 1518365681
                    email: miles@meraki.com
                    id: aGlAaGkuY29t
                    name: Miles Meraki
              schema:
                type: object
          description: Successful operation
      summary: Return the Meraki Auth splash or RADIUS user
      tags:
        - Meraki auth users
  "/networks/{networkId}/oneToManyNatRules":
    get:
      description: Return the 1:Many NAT mapping rules for an MX network
      operationId: getNetworkOneToManyNatRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - portRules:
                          - allowedIps:
                              - any
                            localIp: 192.168.128.1
                            localPort: "443"
                            name: Rule 1
                            protocol: tcp
                            publicPort: "9443"
                          - allowedIps:
                              - 10.82.110.0/24
                              - 10.82.111.0/24
                            localIp: 192.168.128.1
                            localPort: "80"
                            name: Rule 2
                            protocol: tcp
                            publicPort: "8080"
                        publicIp: 146.11.11.13
                        uplink: internet1
              schema:
                type: object
          description: Successful operation
      summary: Return the 1:Many NAT mapping rules for an MX network
      tags:
        - MX 1:Many NAT rules
    put:
      description: Set the 1:Many NAT mapping rules for an MX network
      operationId: updateNetworkOneToManyNatRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - portRules:
                      - allowedIps:
                          - any
                        localIp: 192.168.128.1
                        localPort: "443"
                        name: Rule 1
                        protocol: tcp
                        publicPort: "9443"
                      - allowedIps:
                          - 10.82.110.0/24
                          - 10.82.111.0/24
                        localIp: 192.168.128.1
                        localPort: "80"
                        name: Rule 2
                        protocol: tcp
                        publicPort: "8080"
                    publicIp: 146.11.11.13
                    uplink: internet1
              properties:
                rules:
                  description: An array of 1:Many nat rules
                  items:
                    properties:
                      portRules:
                        description: An array of associated forwarding rules
                        items:
                          properties:
                            allowedIps:
                              description: Remote IP addresses or ranges that are permitted to access the internal resource via this port forwarding rule, or 'any'
                              items:
                                type: string
                              type: array
                            localIp:
                              description: Local IP address to which traffic will be forwarded
                              type: string
                            localPort:
                              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
                              type: string
                            name:
                              description: A description of the rule
                              type: string
                            protocol:
                              description: "'tcp' or 'udp'"
                              enum:
                                - tcp
                                - udp
                              type: string
                            publicPort:
                              description: Destination port of the traffic that is arriving on the WAN
                              type: string
                          type: object
                        type: array
                      publicIp:
                        description: The IP address that will be used to access the internal resource from the WAN
                        type: string
                      uplink:
                        description: The physical WAN interface on which the traffic will arrive ('internet1' or, if available, 'internet2')
                        enum:
                          - internet1
                          - internet2
                        type: string
                    required:
                      - publicIp
                      - uplink
                      - portRules
                    type: object
                  type: array
              required:
                - rules
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - portRules:
                          - allowedIps:
                              - any
                            localIp: 192.168.128.1
                            localPort: "443"
                            name: Rule 1
                            protocol: tcp
                            publicPort: "9443"
                          - allowedIps:
                              - 10.82.110.0/24
                              - 10.82.111.0/24
                            localIp: 192.168.128.1
                            localPort: "80"
                            name: Rule 2
                            protocol: tcp
                            publicPort: "8080"
                        publicIp: 146.11.11.13
                        uplink: internet1
              schema:
                type: object
          description: Successful operation
      summary: Set the 1:Many NAT mapping rules for an MX network
      tags:
        - MX 1:Many NAT rules
  "/networks/{networkId}/oneToOneNatRules":
    get:
      description: Return the 1:1 NAT mapping rules for an MX network
      operationId: getNetworkOneToOneNatRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - allowedInbound:
                          - allowedIps:
                              - 10.82.112.0/24
                              - 10.82.0.0/16
                            destinationPorts:
                              - "80"
                            protocol: tcp
                          - allowedIps:
                              - 10.81.110.5
                              - 10.81.0.0/16
                            destinationPorts:
                              - "8080"
                            protocol: udp
                        lanIp: 192.168.128.22
                        name: Service behind NAT
                        publicIp: 146.12.3.33
                        uplink: internet1
              schema:
                type: object
          description: Successful operation
      summary: Return the 1:1 NAT mapping rules for an MX network
      tags:
        - MX 1:1 NAT rules
    put:
      description: Set the 1:1 NAT mapping rules for an MX network
      operationId: updateNetworkOneToOneNatRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - allowedInbound:
                      - allowedIps:
                          - 10.82.112.0/24
                          - 10.82.0.0/16
                        destinationPorts:
                          - "80"
                        protocol: tcp
                      - allowedIps:
                          - 10.81.110.5
                          - 10.81.0.0/16
                        destinationPorts:
                          - "8080"
                        protocol: udp
                    lanIp: 192.168.128.22
                    name: Service behind NAT
                    publicIp: 146.12.3.33
                    uplink: internet1
              properties:
                rules:
                  description: An array of 1:1 nat rules
                  items:
                    properties:
                      allowedInbound:
                        description: The ports this mapping will provide access on, and the remote IPs that will be allowed access to the resource
                        items:
                          properties:
                            allowedIps:
                              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'
                              items:
                                type: string
                              type: array
                            destinationPorts:
                              description: An array of ports or port ranges that will be forwarded to the host on the LAN
                              items:
                                type: string
                              type: array
                            protocol:
                              description: "Either of the following: 'tcp', 'udp', 'icmp-ping' or 'any'"
                              enum:
                                - any
                                - icmp-ping
                                - tcp
                                - udp
                              type: string
                          type: object
                        type: array
                      lanIp:
                        description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
                        type: string
                      name:
                        description: A descriptive name for the rule
                        type: string
                      publicIp:
                        description: The IP address that will be used to access the internal resource from the WAN
                        type: string
                      uplink:
                        description: The physical WAN interface on which the traffic will arrive ('internet1' or, if available, 'internet2')
                        enum:
                          - internet1
                          - internet2
                        type: string
                    required:
                      - lanIp
                    type: object
                  type: array
              required:
                - rules
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - allowedInbound:
                          - allowedIps:
                              - 10.82.112.0/24
                              - 10.82.0.0/16
                            destinationPorts:
                              - "80"
                            protocol: tcp
                          - allowedIps:
                              - 10.81.110.5
                              - 10.81.0.0/16
                            destinationPorts:
                              - "8080"
                            protocol: udp
                        lanIp: 192.168.128.22
                        name: Service behind NAT
                        publicIp: 146.12.3.33
                        uplink: internet1
              schema:
                type: object
          description: Successful operation
      summary: Set the 1:1 NAT mapping rules for an MX network
      tags:
        - MX 1:1 NAT rules
  "/networks/{networkId}/pii/piiKeys":
    get:
      description: |-
        List the keys required to access Personally Identifiable Information (PII) for a given identifier. Exactly one identifier will be accepted. If the organization contains org-wide Systems Manager users matching the key provided then there will be an entry with the key "0" containing the applicable keys.

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/piiKeys
        ```
      operationId: getNetworkPiiPiiKeys
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The username of a Systems Manager user
          in: query
          name: username
          schema:
            type: string
        - description: The email of a network user account or a Systems Manager device
          in: query
          name: email
          schema:
            type: string
        - description: The MAC of a network client device or a Systems Manager device
          in: query
          name: mac
          schema:
            type: string
        - description: The serial of a Systems Manager device
          in: query
          name: serial
          schema:
            type: string
        - description: The IMEI of a Systems Manager device
          in: query
          name: imei
          schema:
            type: string
        - description: The MAC of a Bluetooth client
          in: query
          name: bluetoothMac
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    N_1234:
                      bluetoothMacs:
                        - 00:77:00:77:00:77
                      emails:
                        - fake@example.com
                      imeis:
                        - "990000862471854"
                      macs:
                        - 00:77:00:77:00:77
                      serials:
                        - abcd1234
                      usernames:
                        - fakename
              schema:
                type: object
          description: Successful operation
      summary: List the keys required to access Personally Identifiable Information (PII) for a given identifier
      tags:
        - PII
  "/networks/{networkId}/pii/requests":
    get:
      description: |-
        List the PII requests for this network or organization

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/requests
        ```
      operationId: getNetworkPiiRequests
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - completedAt: 1524702227
                      createdAt: 1524692227
                      datasets: "['usage', 'events']"
                      id: "1234"
                      mac: 00:77:00:77:00:77
                      networkId: N_1234
                      organizationWide: false
                      status: Completed
                      type: delete
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the PII requests for this network or organization
      tags:
        - PII
    post:
      description: |-
        Submit a new delete or restrict processing PII request

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/requests
        ```
      operationId: createNetworkPiiRequest
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                datasets:
                  - usage
                  - events
                mac: 00:77:00:77:00:77
                type: delete
              properties:
                datasets:
                  description: 'The datasets related to the provided key that should be deleted. Only applies to "delete" requests. The value "all" will be expanded to all datasets applicable to this type. The datasets by applicable to each type are: mac (usage, events, traffic), email (users, loginAttempts), username (users, loginAttempts), bluetoothMac (client, connectivity), smDeviceId (device), smUserId (user)'
                  items:
                    type: string
                  type: array
                email:
                  description: The email of a network user account. Only applies to "delete" requests.
                  type: string
                mac:
                  description: The MAC of a network client device. Applies to both "restrict processing" and "delete" requests.
                  type: string
                smDeviceId:
                  description: The sm_device_id of a Systems Manager device. The only way to "restrict processing" or "delete" a Systems Manager device. Must include "device" in the dataset for a "delete" request to destroy the device.
                  type: string
                smUserId:
                  description: The sm_user_id of a Systems Manager user. The only way to "restrict processing" or "delete" a Systems Manager user. Must include "user" in the dataset for a "delete" request to destroy the user.
                  type: string
                type:
                  description: One of "delete" or "restrict processing"
                  enum:
                    - delete
                    - restrict processing
                  type: string
                username:
                  description: The username of a network log in. Only applies to "delete" requests.
                  type: string
              type: object
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    completedAt: null
                    createdAt: 1524692227
                    datasets: "['usage', 'events']"
                    id: "1234"
                    mac: 00:77:00:77:00:77
                    networkId: N_1234
                    organizationWide: false
                    status: Not visible in Dashboard; database deletion in process
                    type: delete
              schema:
                type: object
          description: Successful operation
      summary: Submit a new delete or restrict processing PII request
      tags:
        - PII
  "/networks/{networkId}/pii/requests/{requestId}":
    delete:
      description: |-
        Delete a restrict processing PII request

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/requests/{requestId}
        ```
      operationId: deleteNetworkPiiRequest
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: requestId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a restrict processing PII request
      tags:
        - PII
    get:
      description: |-
        Return a PII request

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/requests/{requestId}
        ```
      operationId: getNetworkPiiRequest
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: requestId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    completedAt: 1524702227
                    createdAt: 1524692227
                    datasets: "['usage', 'events']"
                    id: "1234"
                    mac: 00:77:00:77:00:77
                    networkId: N_1234
                    organizationWide: false
                    status: Completed
                    type: delete
              schema:
                type: object
          description: Successful operation
      summary: Return a PII request
      tags:
        - PII
  "/networks/{networkId}/pii/smDevicesForKey":
    get:
      description: |-
        Given a piece of Personally Identifiable Information (PII), return the Systems Manager device ID(s) associated with that identifier. These device IDs can be used with the Systems Manager API endpoints to retrieve device details. Exactly one identifier will be accepted.

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/smDevicesForKey
        ```
      operationId: getNetworkPiiSmDevicesForKey
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The username of a Systems Manager user
          in: query
          name: username
          schema:
            type: string
        - description: The email of a network user account or a Systems Manager device
          in: query
          name: email
          schema:
            type: string
        - description: The MAC of a network client device or a Systems Manager device
          in: query
          name: mac
          schema:
            type: string
        - description: The serial of a Systems Manager device
          in: query
          name: serial
          schema:
            type: string
        - description: The IMEI of a Systems Manager device
          in: query
          name: imei
          schema:
            type: string
        - description: The MAC of a Bluetooth client
          in: query
          name: bluetoothMac
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    N_1234:
                      - "1099541095293"
                      - "8348382288234"
              schema:
                type: object
          description: Successful operation
      summary: Given a piece of Personally Identifiable Information (PII), return the Systems Manager device ID(s) associated with that identifier
      tags:
        - PII
  "/networks/{networkId}/pii/smOwnersForKey":
    get:
      description: |-
        Given a piece of Personally Identifiable Information (PII), return the Systems Manager owner ID(s) associated with that identifier. These owner IDs can be used with the Systems Manager API endpoints to retrieve owner details. Exactly one identifier will be accepted.

        ## ALTERNATE PATH

        ```
        /organizations/{organizationId}/pii/smOwnersForKey
        ```
      operationId: getNetworkPiiSmOwnersForKey
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The username of a Systems Manager user
          in: query
          name: username
          schema:
            type: string
        - description: The email of a network user account or a Systems Manager device
          in: query
          name: email
          schema:
            type: string
        - description: The MAC of a network client device or a Systems Manager device
          in: query
          name: mac
          schema:
            type: string
        - description: The serial of a Systems Manager device
          in: query
          name: serial
          schema:
            type: string
        - description: The IMEI of a Systems Manager device
          in: query
          name: imei
          schema:
            type: string
        - description: The MAC of a Bluetooth client
          in: query
          name: bluetoothMac
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    N_1234:
                      - "1099541095293"
              schema:
                type: object
          description: Successful operation
      summary: Given a piece of Personally Identifiable Information (PII), return the Systems Manager owner ID(s) associated with that identifier
      tags:
        - PII
  "/networks/{networkId}/portForwardingRules":
    get:
      description: Return the port forwarding rules for an MX network
      operationId: getNetworkPortForwardingRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - allowedIps:
                          - any
                        lanIp: 192.168.128.1
                        localPort: 442-443
                        name: Description of Port Forwarding Rule
                        protocol: tcp
                        publicPort: 8100-8101
                        uplink: both
              schema:
                type: object
          description: Successful operation
      summary: Return the port forwarding rules for an MX network
      tags:
        - MX port forwarding rules
    put:
      description: Update the port forwarding rules for an MX network
      operationId: updateNetworkPortForwardingRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - allowedIps:
                      - any
                    lanIp: 192.168.128.1
                    localPort: 442-443
                    name: Description of Port Forwarding Rule
                    protocol: tcp
                    publicPort: 8100-8101
                    uplink: both
              properties:
                rules:
                  description: An array of port forwarding params
                  items:
                    properties:
                      allowedIps:
                        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)
                        items:
                          type: string
                        type: array
                      lanIp:
                        description: The IP address of the server or device that hosts the internal resource that you wish to make available on the WAN
                        type: string
                      localPort:
                        description: A port or port ranges that will receive the forwarded traffic from the WAN
                        type: string
                      name:
                        description: A descriptive name for the rule
                        type: string
                      protocol:
                        description: TCP or UDP
                        enum:
                          - tcp
                          - udp
                        type: string
                      publicPort:
                        description: A port or port ranges that will be forwarded to the host on the LAN
                        type: string
                      uplink:
                        description: The physical WAN interface on which the traffic will arrive ('internet1' or, if available, 'internet2' or 'both')
                        enum:
                          - both
                          - internet1
                          - internet2
                        type: string
                    required:
                      - lanIp
                      - publicPort
                      - localPort
                      - allowedIps
                      - protocol
                    type: object
                  type: array
              required:
                - rules
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    rules:
                      - allowedIps:
                          - any
                        lanIp: 192.168.128.1
                        localPort: 442-443
                        name: Description of Port Forwarding Rule
                        protocol: tcp
                        publicPort: 8100-8101
                        uplink: both
              schema:
                type: object
          description: Successful operation
      summary: Update the port forwarding rules for an MX network
      tags:
        - MX port forwarding rules
  "/networks/{networkId}/security/intrusionSettings":
    get:
      description: Returns all supported intrusion settings for an MX network
      operationId: getNetworkSecurityIntrusionSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    idsRulesets: balanced
                    mode: prevention
                    protectedNetworks:
                      excludedCidr:
                        - 10.0.0.0/8
                        - 127.0.0.0/8
                      includedCidr:
                        - 10.0.0.0/8
                        - 127.0.0.0/8
                        - 169.254.0.0/16
                        - 172.16.0.0/12
                      useDefault: false
              schema:
                type: object
          description: Successful operation
      summary: Returns all supported intrusion settings for an MX network
      tags:
        - Intrusion settings
    put:
      description: Set the supported intrusion settings for an MX network
      operationId: updateNetworkSecurityIntrusionSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                idsRulesets: balanced
                mode: prevention
                protectedNetworks:
                  excludedCidr:
                    - 10.0.0.0/8
                    - 127.0.0.0/8
                  includedCidr:
                    - 10.0.0.0/8
                    - 127.0.0.0/8
                    - 169.254.0.0/16
                    - 172.16.0.0/12
                  useDefault: false
              properties:
                idsRulesets:
                  description: Set the detection ruleset 'connectivity'/'balanced'/'security' (optional - omitting will leave current config unchanged). Default value is 'balanced' if none currently saved
                  enum:
                    - balanced
                    - connectivity
                    - security
                  type: string
                mode:
                  description: Set mode to 'disabled'/'detection'/'prevention' (optional - omitting will leave current config unchanged)
                  enum:
                    - detection
                    - disabled
                    - prevention
                  type: string
                protectedNetworks:
                  description: Set the included/excluded networks from the intrusion engine (optional - omitting will leave current config unchanged). This is available only in 'passthrough' mode
                  properties:
                    excludedCidr:
                      description: list of IP addresses or subnets being excluded from protection (required if 'useDefault' is false)
                      items:
                        type: string
                      type: array
                    includedCidr:
                      description: list of IP addresses or subnets being protected (required if 'useDefault' is false)
                      items:
                        type: string
                      type: array
                    useDefault:
                      description: "true/false whether to use special IPv4 addresses: https://tools.ietf.org/html/rfc5735 (required). Default value is true if none currently saved"
                      type: boolean
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    idsRulesets: balanced
                    mode: prevention
                    protectedNetworks:
                      excludedCidr:
                        - 10.0.0.0/8
                        - 127.0.0.0/8
                      includedCidr:
                        - 10.0.0.0/8
                        - 127.0.0.0/8
                        - 169.254.0.0/16
                        - 172.16.0.0/12
                      useDefault: false
              schema:
                type: object
          description: Successful operation
      summary: Set the supported intrusion settings for an MX network
      tags:
        - Intrusion settings
  "/networks/{networkId}/security/malwareSettings":
    get:
      description: Returns all supported malware settings for an MX network
      operationId: getNetworkSecurityMalwareSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    allowedFiles:
                      - comment: allow ZIP file
                        sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
                    allowedUrls:
                      - comment: allow example.org
                        url: example.org
                      - comment: allow help.com.au
                        url: help.com.au
                    mode: enabled
              schema:
                type: object
          description: Successful operation
      summary: Returns all supported malware settings for an MX network
      tags:
        - Malware settings
    put:
      description: Set the supported malware settings for an MX network
      operationId: updateNetworkSecurityMalwareSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                allowedFiles:
                  - comment: allow ZIP file
                    sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
                allowedUrls:
                  - comment: allow example.org
                    url: example.org
                  - comment: allow help.com.au
                    url: help.com.au
                mode: enabled
              properties:
                allowedFiles:
                  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
                  items:
                    properties:
                      comment:
                        description: Comment about the allowed entity
                        type: string
                      sha256:
                        description: The file sha256 hash to allow
                        type: string
                    required:
                      - sha256
                      - comment
                    type: object
                  type: array
                allowedUrls:
                  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
                  items:
                    properties:
                      comment:
                        description: Comment about the allowed entity
                        type: string
                      url:
                        description: The url to allow
                        type: string
                    required:
                      - url
                      - comment
                    type: object
                  type: array
                mode:
                  description: Set mode to 'enabled' to enable malware prevention, otherwise 'disabled'
                  enum:
                    - disabled
                    - enabled
                  type: string
              required:
                - mode
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    allowedFiles:
                      - comment: allow ZIP file
                        sha256: e82c5f7d75004727e1f3b94426b9a11c8bc4c312a9170ac9a73abace40aef503
                    allowedUrls:
                      - comment: allow example.org
                        url: example.org
                      - comment: allow help.com.au
                        url: help.com.au
                    mode: enabled
              schema:
                type: object
          description: Successful operation
      summary: Set the supported malware settings for an MX network
      tags:
        - Malware settings
  "/networks/{networkId}/securityEvents":
    get:
      description: List the security events (intrusion detection only) for a network
      operationId: getNetworkSecurityEvents
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - 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.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 365 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - blocked: true
                      classification: "4"
                      clientMac: A1:B2:C3:D4:E5:F6
                      destIp: 10.20.30.40:80
                      deviceMac: 00:18:0a:01:02:03
                      message: SERVER-WEBAPP JBoss JMX console access attempt
                      priority: "2"
                      protocol: tcp/ip
                      ruleId: meraki:intrusion/snort/GID/1/SID/26267
                      sigSource: ""
                      signature: 1:21516:9
                      srcIp: 1.2.3.4:34195
                      ts: 1547683314.270398
                    - blocked: true
                      classification: "33"
                      clientMac: A1:B2:C3:D4:E5:F6
                      destIp: 10.20.30.40:80
                      deviceMac: 00:18:0a:01:02:03
                      message: POLICY-OTHER Adobe ColdFusion admin interface access attempt
                      priority: "1"
                      protocol: tcp/ip
                      ruleId: meraki:intrusion/snort/GID/1/SID/26267
                      sigSource: ""
                      signature: 1:25975:2
                      srcIp: 1.2.3.4:56023
                      ts: 1547683827.723265
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the security events (intrusion detection only) for a network
      tags:
        - Security events
  "/networks/{networkId}/siteToSiteVpn":
    get:
      description: Return the site-to-site VPN settings of a network. Only valid for MX networks.
      operationId: getNetworkSiteToSiteVpn
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    hubs:
                      - hubId: N_4901849
                        useDefaultRoute: true
                      - hubId: N_1892489
                        useDefaultRoute: false
                    mode: spoke
                    peerSgtCapable: true
                    subnets:
                      - localSubnet: 192.168.1.0/24
                        useVpn: true
                      - localSubnet: 192.168.128.0/24
                        useVpn: true
              schema:
                type: object
          description: Successful operation
      summary: Return the site-to-site VPN settings of a network
      tags:
        - Networks
    put:
      description: Update the site-to-site VPN settings of a network. Only valid for MX networks in NAT mode.
      operationId: updateNetworkSiteToSiteVpn
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                hubs:
                  - hubId: N_4901849
                    useDefaultRoute: true
                  - hubId: N_1892489
                    useDefaultRoute: false
                mode: spoke
                peerSgtCapable: true
                subnets:
                  - localSubnet: 192.168.1.0/24
                    useVpn: true
                  - localSubnet: 192.168.128.0/24
                    useVpn: true
              properties:
                hubs:
                  description: The list of VPN hubs, in order of preference. In spoke mode, at least 1 hub is required.
                  items:
                    properties:
                      hubId:
                        description: The network ID of the hub.
                        type: string
                      useDefaultRoute:
                        description: Only valid in 'spoke' mode. Indicates whether default route traffic should be sent to this hub.
                        type: boolean
                    required:
                      - hubId
                    type: object
                  type: array
                mode:
                  description: The site-to-site VPN mode. Can be one of 'none', 'spoke' or 'hub'
                  enum:
                    - hub
                    - none
                    - spoke
                  type: string
                subnets:
                  description: The list of subnets and their VPN presence.
                  items:
                    properties:
                      localSubnet:
                        description: The CIDR notation subnet used within the VPN
                        type: string
                      useVpn:
                        description: Indicates the presence of the subnet in the VPN
                        type: boolean
                    required:
                      - localSubnet
                    type: object
                  type: array
              required:
                - mode
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    hubs:
                      - hubId: N_4901849
                        useDefaultRoute: true
                      - hubId: N_1892489
                        useDefaultRoute: false
                    mode: spoke
                    peerSgtCapable: true
                    subnets:
                      - localSubnet: 192.168.1.0/24
                        useVpn: true
                      - localSubnet: 192.168.128.0/24
                        useVpn: true
              schema:
                type: object
          description: Successful operation
      summary: Update the site-to-site VPN settings of a network
      tags:
        - Networks
  "/networks/{networkId}/sm/bypassActivationLockAttempts":
    post:
      description: Bypass activation lock attempt
      operationId: createNetworkSmBypassActivationLockAttempt
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ids:
                  - "1284392014819"
                  - "2983092129865"
              properties:
                ids:
                  description: The ids of the devices to attempt activation lock bypass.
                  items:
                    type: string
                  type: array
              required:
                - ids
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    data: {}
                    id: "1234"
                    status: pending
              schema:
                type: object
          description: Successful operation
      summary: Bypass activation lock attempt
      tags:
        - SM
  "/networks/{networkId}/sm/bypassActivationLockAttempts/{attemptId}":
    get:
      description: Bypass activation lock attempt status
      operationId: getNetworkSmBypassActivationLockAttempt
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: attemptId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    data:
                      "2090938209":
                        errors:
                          - Activation lock bypass code not known for this device
                        success: false
                      "38290139892":
                        success: true
                    id: "1234"
                    status: complete
              schema:
                type: object
          description: Successful operation
      summary: Bypass activation lock attempt status
      tags:
        - SM
  "/networks/{networkId}/sm/device/fields":
    put:
      description: Modify the fields of a device
      operationId: updateNetworkSmDeviceFields
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                deviceFields:
                  name: Miles's phone
                  notes: Here's some info about my device
                id: "1284392014819"
              properties:
                deviceFields:
                  description: The new fields of the device. Each field of this object is optional.
                  properties:
                    name:
                      description: New name for the device
                      type: string
                    notes:
                      description: New notes for the device
                      type: string
                  type: object
                id:
                  description: The id of the device to be modified.
                  type: string
                serial:
                  description: The serial of the device to be modified.
                  type: string
                wifiMac:
                  description: The wifiMac of the device to be modified.
                  type: string
              required:
                - deviceFields
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success:
                      - id: "1284392014819"
                        name: Miles's phone
                        notes: Here's some info about my device
                        serial: F5XKHEBX
                        wifiMac: 00:11:22:33:44:55
              schema:
                type: object
          description: Successful operation
      summary: Modify the fields of a device
      tags:
        - SM
  "/networks/{networkId}/sm/device/wipe":
    put:
      description: Wipe a device
      operationId: wipeNetworkSmDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                id: "1284392014819"
              properties:
                id:
                  description: The id of the device to be wiped.
                  type: string
                pin:
                  description: The pin number (a six digit value) for wiping a macOS device. Required only for macOS devices.
                  type: integer
                serial:
                  description: The serial of the device to be wiped.
                  type: string
                wifiMac:
                  description: The wifiMac of the device to be wiped.
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success: true
              schema:
                type: object
          description: Successful operation
      summary: Wipe a device
      tags:
        - SM
  "/networks/{networkId}/sm/device/{deviceId}/refreshDetails":
    post:
      description: Refresh the details of a device
      operationId: refreshNetworkSmDeviceDetails
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          description: Successful operation
      summary: Refresh the details of a device
      tags:
        - SM
  "/networks/{networkId}/sm/devices":
    get:
      description: List the devices enrolled in an SM network with various specified fields and filters
      operationId: getNetworkSmDevices
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: |-
            Additional fields that will be displayed for each device. Multiple fields can be passed in as comma separated values.
                The default fields are: id, name, tags, ssid, wifiMac, osName, systemModel, uuid, and serialNumber. The additional fields are: ip,
                systemType, availableDeviceCapacity, kioskAppName, biosVersion, lastConnected, missingAppsCount, userSuppliedAddress, location, lastUser,
                ownerEmail, ownerUsername, publicIp, phoneNumber, diskInfoJson, deviceCapacity, isManaged, hadMdm, isSupervised, meid, imei, iccid,
                simCarrierNetwork, cellularDataUsed, isHotspotEnabled, createdAt, batteryEstCharge, quarantined, avName, avRunning, asName, fwName,
                isRooted, loginRequired, screenLockEnabled, screenLockDelay, autoLoginDisabled, autoTags, hasMdm, hasDesktopAgent, diskEncryptionEnabled,
                hardwareEncryptionCaps, passCodeLock, usesHardwareKeystore, and androidSecurityPatchVersion.
          in: query
          name: fields
          schema:
            type: string
        - description: Filter devices by wifi mac(s). Multiple wifi macs can be passed in as comma separated values.
          in: query
          name: wifiMacs
          schema:
            type: string
        - description: Filter devices by serial(s). Multiple serials can be passed in as comma separated values.
          in: query
          name: serials
          schema:
            type: string
        - description: Filter devices by id(s). Multiple ids can be passed in as comma separated values.
          in: query
          name: ids
          schema:
            type: string
        - description: Specify a scope (one of all, none, withAny, withAll, withoutAny, or withoutAll) and a set of tags as comma separated values.
          in: query
          name: scope
          schema:
            type: string
        - description: Number of devices to return, 1000 is the default as well as the max.
          in: query
          name: batchSize
          schema:
            type: integer
        - description: |-
            If the network has more devices than the batch size, a batch token will be returned
                as a part of the device list. To see the remainder of the devices, pass in the batchToken as a parameter in the next request.
                Requests made with the batchToken do not require additional parameters as the batchToken includes the parameters passed in
                with the original request. Additional parameters passed in with the batchToken will be ignored.
          in: query
          name: batchToken
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    batchToken: MMbCbpHZtG3TKUCr9B9uc5
                    devices:
                      - id: "1284392014819"
                        ip: 1.2.3.4
                        name: Miles's phone
                        osName: iOS 9.3.5
                        serialNumber: F5XKHEBX
                        ssid: My SSID
                        systemModel: iPhone
                        tags:
                          - tag1
                          - tag2
                        uuid: 3d990628ede4c628d52
                        wifiMac: 00:11:22:33:44:55
              schema:
                type: object
          description: Successful operation
      summary: List the devices enrolled in an SM network with various specified fields and filters
      tags:
        - SM
  "/networks/{networkId}/sm/devices/tags":
    put:
      description: Add, delete, or update the tags of a set of devices
      operationId: updateNetworkSmDevicesTags
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                scope: withAny, old_tag
                tags: tag1,tag2
                updateAction: add
              properties:
                ids:
                  description: The ids of the devices to be modified.
                  type: string
                scope:
                  description: The scope (one of all, none, withAny, withAll, withoutAny, or withoutAll) and a set of tags of the devices to be modified.
                  type: string
                serials:
                  description: The serials of the devices to be modified.
                  type: string
                tags:
                  description: The tags to be added, deleted, or updated.
                  type: string
                updateAction:
                  description: One of add, delete, or update. Only devices that have been modified will be returned.
                  type: string
                wifiMacs:
                  description: The wifiMacs of the devices to be modified.
                  type: string
              required:
                - tags
                - updateAction
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success:
                      - id: "1284392014819"
                        serial: F5XKHEBX
                        tags:
                          - tag1
                          - tag2
                        wifiMac: 00:11:22:33:44:55
              schema:
                type: object
          description: Successful operation
      summary: Add, delete, or update the tags of a set of devices
      tags:
        - SM
  "/networks/{networkId}/sm/devices/{deviceId}/unenroll":
    post:
      description: Unenroll a device
      operationId: unenrollNetworkSmDevice
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success: true
              schema:
                type: object
          description: Successful operation
      summary: Unenroll a device
      tags:
        - SM
  "/networks/{networkId}/sm/profiles":
    get:
      description: List all the profiles in the network
      operationId: getNetworkSmProfiles
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    profiles:
                      - id: "1234"
                        payload_description: API docs test
                        payload_display_name: API Profile
                        payload_identifier: com.meraki.sm.1
                        payload_types:
                          - Privacy
                          - Document
                        scope: some
                        tags:
                          - tag1
                          - tag2
                        wifis: []
              schema:
                type: object
          description: Successful operation
      summary: List all the profiles in the network
      tags:
        - SM
  "/networks/{networkId}/sm/targetGroups":
    get:
      description: List the target groups in this network
      operationId: getNetworkSmTargetGroups
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: Boolean indicating if the the ids of the devices or users scoped by the target group should be included in the response
          in: query
          name: withDetails
          schema:
            type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - name: My target group
                      scope: none
                      tags: "[]"
                      type: devices
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the target groups in this network
      tags:
        - Named tag scope
    post:
      description: Add a target group
      operationId: createNetworkSmTargetGroup
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/createNetworkSmTargetGroupCreatenetworksmtargetgroup"
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    name: My target group
                    scope: none
                    tags: "[]"
                    type: devices
              schema:
                type: object
          description: Successful operation
      summary: Add a target group
      tags:
        - Named tag scope
  "/networks/{networkId}/sm/targetGroups/{targetGroupId}":
    delete:
      description: Delete a target group from a network
      operationId: deleteNetworkSmTargetGroup
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: targetGroupId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a target group from a network
      tags:
        - Named tag scope
    get:
      description: Return a target group
      operationId: getNetworkSmTargetGroup
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: targetGroupId
          required: true
          schema:
            type: string
        - description: Boolean indicating if the the ids of the devices or users scoped by the target group should be included in the response
          in: query
          name: withDetails
          schema:
            type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    name: My target group
                    scope: none
                    tags: "[]"
                    type: devices
              schema:
                type: object
          description: Successful operation
      summary: Return a target group
      tags:
        - Named tag scope
    put:
      description: Update a target group
      operationId: updateNetworkSmTargetGroup
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: targetGroupId
          required: true
          schema:
            type: string
      requestBody:
        $ref: "#/components/requestBodies/createNetworkSmTargetGroupCreatenetworksmtargetgroup"
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    name: My target group
                    scope: none
                    tags: "[]"
                    type: devices
              schema:
                type: object
          description: Successful operation
      summary: Update a target group
      tags:
        - Named tag scope
  "/networks/{networkId}/sm/user/{userId}/deviceProfiles":
    get:
      description: Get the profiles associated with a user
      operationId: getNetworkSmUserDeviceProfiles
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: userId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - deviceId: "1234"
                      id: "1284392014819"
                      isEncrypted: true
                      isManaged: true
                      name: My profile
                      profileData: "{}"
                      profileIdentifier: com.test.app
                      version: 0.0.1
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Get the profiles associated with a user
      tags:
        - SM
  "/networks/{networkId}/sm/user/{userId}/softwares":
    get:
      description: Get a list of softwares associated with a user
      operationId: getNetworkSmUserSoftwares
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: userId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - appId: "1234"
                      bundleSize: null
                      createdAt: 2018-02-11T00:00:00Z
                      deviceId: "1234"
                      dynamicSize: null
                      id: "1284392014819"
                      identifier: com.test.app
                      installedAt: 2018-05-12T00:00:00Z
                      iosRedemptionCode: null
                      isManaged: true
                      itunesId: null
                      licenseKey: null
                      name: My app
                      path: /Path/to/app.app
                      redemptionCode: null
                      shortVersion: null
                      status: null
                      toInstall: null
                      toUninstall: false
                      uninstalledAt: null
                      updatedAt: 2018-05-12T00:00:00Z
                      vendor: Apple
                      version: "0.1"
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Get a list of softwares associated with a user
      tags:
        - SM
  "/networks/{networkId}/sm/users":
    get:
      description: List the owners in an SM network with various specified fields and filters
      operationId: getNetworkSmUsers
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: Filter users by id(s). Multiple ids can be passed in as comma separated values.
          in: query
          name: ids
          schema:
            type: string
        - description: Filter users by username(s). Multiple usernames can be passed in as comma separated values.
          in: query
          name: usernames
          schema:
            type: string
        - description: Filter users by email(s). Multiple emails can be passed in as comma separated values.
          in: query
          name: emails
          schema:
            type: string
        - description: Specifiy a scope (one of all, none, withAny, withAll, withoutAny, withoutAll) and a set of tags as comma separated values.
          in: query
          name: scope
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - adGroups: []
                      asmGroups: []
                      azureAdGroups: []
                      displayName: Miles Meraki <miles@meraki.com>
                      email: miles@meraki.com
                      fullName: Miles Meraki
                      hasIdentityCertificate: false
                      hasPassword: false
                      id: "1234"
                      isExternal: false
                      samlGroups: []
                      tags:
                        - tag1
                        - tag2
                      userThumbnail: https://s3.amazonaws.com/image.extension
                      username: ""
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the owners in an SM network with various specified fields and filters
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/cellularUsageHistory":
    get:
      description: Return the client's daily cellular data usage history. Usage data is in kilobytes.
      operationId: getNetworkSmCellularUsageHistory
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - received: 61
                      sent: 138
                      ts: 1526087474
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the client's daily cellular data usage history
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/certs":
    get:
      description: List the certs on a device
      operationId: getNetworkSmCerts
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - certPem: |
                        -----BEGIN CERTIFICATE-----
                        -----END CERTIFICATE-----
                      deviceId: "1234"
                      id: "15"
                      issuer: ""
                      name: My Cert
                      notValidAfter: May 12, 2018
                      notValidBefore: Feb 11, 2018
                      subject: ""
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the certs on a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/deviceProfiles":
    get:
      description: Get the profiles associated with a device
      operationId: getNetworkSmDeviceProfiles
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - deviceId: "1234"
                      id: "1284392014819"
                      isEncrypted: true
                      isManaged: true
                      name: My profile
                      profileData: "{}"
                      profileIdentifier: com.test.app
                      version: 0.0.1
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Get the profiles associated with a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/networkAdapters":
    get:
      description: List the network adapters of a device
      operationId: getNetworkSmNetworkAdapters
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - dhcpServer: 123.123.123.1
                      dnsServer: 8.8.8.8, 8.8.4.4
                      gateway: 1.2.3.5
                      id: "1284392014819"
                      ip: 1.2.3.4
                      mac: 00:11:22:33:44:55
                      name: en0
                      subnet: 255.255.255.0
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the network adapters of a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/restrictions":
    get:
      description: List the restrictions on a device
      operationId: getNetworkSmRestrictions
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - profile: com.meraki.sm.1
                      restrictions:
                        myRestriction:
                          value: true
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the restrictions on a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/securityCenters":
    get:
      description: List the security centers on a device
      operationId: getNetworkSmSecurityCenters
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - antiVirusName: meraki_av
                      fireWallName: meraki_fw
                      hasAntiVirus: true
                      hasFireWallInstalled: true
                      id: "1284392014819"
                      isAutoLoginDisabled: true
                      isDiskEncrypted: true
                      isFireWallEnabled: true
                      isRooted: true
                      runningProcs: /software,/software_2
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the security centers on a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/softwares":
    get:
      description: Get a list of softwares associated with a device
      operationId: getNetworkSmSoftwares
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - appId: "1234"
                      bundleSize: null
                      createdAt: 2018-02-11T00:00:00Z
                      deviceId: "1234"
                      dynamicSize: null
                      id: "1284392014819"
                      identifier: com.test.app
                      installedAt: 2018-05-12T00:00:00Z
                      iosRedemptionCode: null
                      isManaged: true
                      itunesId: null
                      licenseKey: null
                      name: My app
                      path: /Path/to/app.app
                      redemptionCode: null
                      shortVersion: null
                      status: null
                      toInstall: null
                      toUninstall: false
                      uninstalledAt: null
                      updatedAt: 2018-05-12T00:00:00Z
                      vendor: Apple
                      version: "0.1"
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Get a list of softwares associated with a device
      tags:
        - SM
  "/networks/{networkId}/sm/{deviceId}/wlanLists":
    get:
      description: List the saved SSID names on a device
      operationId: getNetworkSmWlanLists
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: deviceId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - createdAt: 2018-02-11T00:00:00Z
                      id: "1284392014819"
                      xml: "Preferred networks on en0:"
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the saved SSID names on a device
      tags:
        - SM
  "/networks/{networkId}/snmpSettings":
    get:
      description: Return the SNMP settings for a network
      operationId: getNetworkSnmpSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    access: users
                    users:
                      - passphrase: hunter2
                        username: AzureDiamond
              schema:
                type: object
          description: Successful operation
      summary: Return the SNMP settings for a network
      tags:
        - SNMP settings
  "/networks/{networkId}/splashLoginAttempts":
    get:
      description: List the splash login attempts for a network
      operationId: getNetworkSplashLoginAttempts
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: Only return the login attempts for the specified SSID
          in: query
          name: ssidNumber
          schema:
            enum:
              - 0
              - 1
              - 2
              - 3
              - 4
              - 5
              - 6
              - 7
              - 8
              - 9
              - 10
              - 11
              - 12
              - 13
              - 14
            type: integer
        - description: The username, email, or phone number used during login
          in: query
          name: loginIdentifier
          schema:
            type: string
        - description: The timespan, in seconds, for the login attempts. The period will be from [timespan] seconds ago until now. The maximum timespan is 3 months
          in: query
          name: timespan
          schema:
            type: integer
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - authorization: success
                      clientId: k74272e
                      clientMac: 22:33:44:55:66:77
                      gatewayDeviceMac: 00:11:22:33:44:55
                      login: miles@meraki.com
                      loginAt: 1518365681
                      name: Miles Meraki
                      ssid: My SSID
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the splash login attempts for a network
      tags:
        - Splash login attempts
  "/networks/{networkId}/split":
    post:
      description: Split a combined network into individual networks for each type of device
      operationId: splitNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    resultingNetworks:
                      - disableMyMerakiCom: false
                        enrollmentString: my-enrollment-string
                        id: N_1234
                        name: Main Office - switch
                        organizationId: "2930418"
                        productTypes:
                          - switch
                        tags: " tag1 tag2 "
                        timeZone: America/Los_Angeles
                        type: switch
                      - disableMyMerakiCom: false
                        enrollmentString: my-enrollment-string
                        id: N_5678
                        name: Main Office - wireless
                        organizationId: "2930418"
                        productTypes:
                          - wireless
                        tags: " tag1 tag2 "
                        timeZone: America/Los_Angeles
                        type: wireless
              schema:
                type: object
          description: Successful operation
      summary: Split a combined network into individual networks for each type of device
      tags:
        - Networks
  "/networks/{networkId}/ssids":
    get:
      description: List the SSIDs in a network. Supports networks with access points or wireless-enabled security appliances and teleworker gateways.
      operationId: getNetworkSsids
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - adminSplashUrl: http://example.com
                      authMode: 8021x-radius
                      availabilityTags:
                        - test-tag
                      availableOnAllAps: false
                      bandSelection: 5 GHz band only
                      enabled: true
                      encryptionMode: wpa-eap
                      ipAssignmentMode: NAT mode
                      minBitrate: 11
                      name: My SSID
                      number: 0
                      perClientBandwidthLimitDown: 0
                      perClientBandwidthLimitUp: 0
                      radiusAccountingEnabled: false
                      radiusAttributeForGroupPolicies: Filter-Id
                      radiusEnabled: true
                      radiusFailoverPolicy: "null"
                      radiusLoadBalancingPolicy: "null"
                      radiusServers:
                        - host: 0.0.0.0
                          port: 3000
                      splashPage: Click-through splash page
                      splashTimeout: 30 minutes
                      ssidAdminAccessible: false
                      visible: true
                      walledGardenEnabled: true
                      walledGardenRanges: example.com
                      wpaEncryptionMode: WPA2 only
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the SSIDs in a network
      tags:
        - SSIDs
  "/networks/{networkId}/ssids/{number}":
    get:
      description: Return a single SSID
      operationId: getNetworkSsid
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    adminSplashUrl: http://example.com
                    authMode: 8021x-radius
                    availabilityTags:
                      - test-tag
                    availableOnAllAps: false
                    bandSelection: 5 GHz band only
                    enabled: true
                    encryptionMode: wpa-eap
                    ipAssignmentMode: NAT mode
                    minBitrate: 11
                    name: My SSID
                    number: 0
                    perClientBandwidthLimitDown: 0
                    perClientBandwidthLimitUp: 0
                    radiusAccountingEnabled: false
                    radiusAttributeForGroupPolicies: Filter-Id
                    radiusEnabled: true
                    radiusFailoverPolicy: "null"
                    radiusLoadBalancingPolicy: "null"
                    radiusServers:
                      - host: 0.0.0.0
                        port: 3000
                    splashPage: Click-through splash page
                    splashTimeout: 30 minutes
                    ssidAdminAccessible: false
                    visible: true
                    walledGardenEnabled: true
                    walledGardenRanges: example.com
                    wpaEncryptionMode: WPA2 only
              schema:
                type: object
          description: Successful operation
      summary: Return a single SSID
      tags:
        - SSIDs
    put:
      description: Update the attributes of an SSID
      operationId: updateNetworkSsid
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                enabled: true
                name: My SSID
              properties:
                apTagsAndVlanIds:
                  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'
                  items:
                    properties:
                      tags:
                        description: Comma-separated list of AP tags
                        type: string
                      vlanId:
                        description: Numerical identifier that is assigned to the VLAN
                        type: integer
                    type: object
                  type: array
                authMode:
                  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-localradius', 'ipsk-with-radius' or 'ipsk-without-radius')
                  enum:
                    - 8021x-google
                    - 8021x-localradius
                    - 8021x-meraki
                    - 8021x-nac
                    - 8021x-radius
                    - ipsk-with-radius
                    - ipsk-without-radius
                    - open
                    - open-enhanced
                    - open-with-nac
                    - open-with-radius
                    - psk
                  type: string
                availabilityTags:
                  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.
                  items:
                    type: string
                  type: array
                availableOnAllAps:
                  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.
                  type: boolean
                bandSelection:
                  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')
                  type: string
                concentratorNetworkId:
                  description: The concentrator to use when the ipAssignmentMode is 'Layer 3 roaming with a concentrator' or 'VPN'.
                  type: string
                defaultVlanId:
                  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'
                  type: integer
                disassociateClientsOnVpnFailover:
                  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'.
                  type: boolean
                enabled:
                  description: Whether or not the SSID is enabled
                  type: boolean
                encryptionMode:
                  description: The psk encryption mode for the SSID ('wep' or 'wpa'). This param is only valid if the authMode is 'psk'
                  enum:
                    - wep
                    - wpa
                  type: string
                enterpriseAdminAccess:
                  description: Whether or not an SSID is accessible by 'enterprise' administrators ('access disabled' or 'access enabled')
                  enum:
                    - access disabled
                    - access enabled
                  type: string
                ipAssignmentMode:
                  description: The client IP assignment mode ('NAT mode', 'Bridge mode', 'Layer 3 roaming', 'Ethernet over GRE', 'Layer 3 roaming with a concentrator' or 'VPN')
                  type: string
                lanIsolationEnabled:
                  description: Boolean indicating whether Layer 2 LAN isolation should be enabled or disabled. Only configurable when ipAssignmentMode is 'Bridge mode'.
                  type: boolean
                minBitrate:
                  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')
                  format: float
                  type: number
                name:
                  description: The name of the SSID
                  type: string
                perClientBandwidthLimitDown:
                  description: The download bandwidth limit in Kbps. (0 represents no limit.)
                  type: integer
                perClientBandwidthLimitUp:
                  description: The upload bandwidth limit in Kbps. (0 represents no limit.)
                  type: integer
                psk:
                  description: The passkey for the SSID. This param is only valid if the authMode is 'psk'
                  type: string
                radiusAccountingEnabled:
                  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'
                  type: boolean
                radiusAccountingServers:
                  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'
                  items:
                    properties:
                      host:
                        description: IP address to which the APs will send RADIUS accounting messages
                        type: string
                      port:
                        description: Port on the RADIUS server that is listening for accounting messages
                        type: integer
                      secret:
                        description: Shared key used to authenticate messages between the APs and RADIUS server
                        type: string
                    required:
                      - host
                    type: object
                  type: array
                radiusAttributeForGroupPolicies:
                  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
                  type: string
                radiusCoaEnabled:
                  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.
                  type: boolean
                radiusFailoverPolicy:
                  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')
                  enum:
                    - Allow access
                    - Deny access
                  type: string
                radiusLoadBalancingPolicy:
                  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')
                  enum:
                    - Round robin
                    - Strict priority order
                  type: string
                radiusOverride:
                  description: If true, the RADIUS response can override VLAN tag. This is not valid when ipAssignmentMode is 'NAT mode'.
                  type: boolean
                radiusServers:
                  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'
                  items:
                    properties:
                      host:
                        description: IP address of your RADIUS server
                        type: string
                      port:
                        description: UDP port the RADIUS server listens on for Access-requests
                        type: integer
                      secret:
                        description: RADIUS client shared secret
                        type: string
                    required:
                      - host
                    type: object
                  type: array
                secondaryConcentratorNetworkId:
                  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.)
                  type: string
                splashPage:
                  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', 'Sponsored guest', 'Cisco ISE' or 'Google Apps domain'). This attribute is not supported for template children.
                  enum:
                    - Billing
                    - Cisco ISE
                    - Click-through splash page
                    - Facebook Wi-Fi
                    - Google Apps domain
                    - Google OAuth
                    - 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
                  type: string
                useVlanTagging:
                  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'
                  type: boolean
                visible:
                  description: Boolean indicating whether APs should advertise or hide this SSID. APs will only broadcast this SSID if set to true
                  type: boolean
                vlanId:
                  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'
                  type: integer
                walledGardenEnabled:
                  description: Allow access to a configurable list of IP ranges, which users may access prior to sign-on.
                  type: boolean
                walledGardenRanges:
                  description: Specify your walled garden by entering space-separated 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.
                  type: string
                wpaEncryptionMode:
                  description: The types of WPA encryption. ('WPA1 only', 'WPA1 and WPA2', 'WPA2 only', 'WPA3 Transition Mode', 'WPA3 only' or 'WPA3 192-bit Security')
                  enum:
                    - WPA1 and WPA2
                    - WPA1 only
                    - WPA2 only
                    - WPA3 192-bit Security
                    - WPA3 Transition Mode
                    - WPA3 only
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    adminSplashUrl: http://example.com
                    authMode: 8021x-radius
                    availabilityTags:
                      - test-tag
                    availableOnAllAps: false
                    bandSelection: 5 GHz band only
                    enabled: true
                    encryptionMode: wpa-eap
                    ipAssignmentMode: NAT mode
                    minBitrate: 11
                    name: My SSID
                    number: 0
                    perClientBandwidthLimitDown: 0
                    perClientBandwidthLimitUp: 0
                    radiusAccountingEnabled: false
                    radiusAttributeForGroupPolicies: Filter-Id
                    radiusEnabled: true
                    radiusFailoverPolicy: "null"
                    radiusLoadBalancingPolicy: "null"
                    radiusServers:
                      - host: 0.0.0.0
                        port: 3000
                    splashPage: Click-through splash page
                    splashTimeout: 30 minutes
                    ssidAdminAccessible: false
                    visible: true
                    walledGardenEnabled: true
                    walledGardenRanges: example.com
                    wpaEncryptionMode: WPA2 only
              schema:
                type: object
          description: Successful operation
      summary: Update the attributes of an SSID
      tags:
        - SSIDs
  "/networks/{networkId}/ssids/{number}/l3FirewallRules":
    get:
      description: Return the L3 firewall rules for an SSID on an MR network
      operationId: getNetworkSsidL3FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the L3 firewall rules for an SSID on an MR network
      tags:
        - MR L3 firewall
    put:
      description: Update the L3 firewall rules of an SSID on an MR network
      operationId: updateNetworkSsidL3FirewallRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - comment: Allow TCP traffic to subnet with HTTP servers.
                    destCidr: 192.168.1.0/24
                    destPort: "443"
                    policy: allow
                    protocol: tcp
              properties:
                allowLanAccess:
                  description: Allow wireless client access to local LAN (boolean value - true allows access and false denies access) (optional)
                  type: boolean
                rules:
                  description: An ordered array of the firewall rules for this SSID (not including the local LAN access rule or the default rule)
                  items:
                    properties:
                      comment:
                        description: Description of the rule (optional)
                        type: string
                      destCidr:
                        description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
                        type: string
                      destPort:
                        description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
                        type: string
                      policy:
                        description: "'allow' or 'deny' traffic specified by this rule"
                        enum:
                          - allow
                          - deny
                        type: string
                      protocol:
                        description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
                        enum:
                          - any
                          - icmp
                          - icmp6
                          - tcp
                          - udp
                        type: string
                    required:
                      - policy
                      - protocol
                      - destCidr
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the L3 firewall rules of an SSID on an MR network
      tags:
        - MR L3 firewall
  "/networks/{networkId}/ssids/{number}/splashSettings":
    get:
      description: Display the splash page settings for the given SSID
      operationId: getNetworkSsidSplashSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    splashPage: Click-through splash page
                    splashUrl: https://www.custom_splash_url.com
                    ssidNumber: 0
                    useSplashUrl: true
              schema:
                type: object
          description: Successful operation
      summary: Display the splash page settings for the given SSID
      tags:
        - Splash settings
    put:
      description: Modify the splash page settings for the given SSID
      operationId: updateNetworkSsidSplashSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: number
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                splashUrl: https://www.custom_splash_url.com
                useSplashUrl: true
              properties:
                splashUrl:
                  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'"
                  type: string
                useSplashUrl:
                  description: "[optional] Boolean indicating whether the user 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."
                  type: boolean
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    splashPage: Click-through splash page
                    splashUrl: https://www.custom_splash_url.com
                    ssidNumber: 0
                    useSplashUrl: true
              schema:
                type: object
          description: Successful operation
      summary: Modify the splash page settings for the given SSID
      tags:
        - Splash settings
  "/networks/{networkId}/staticRoutes":
    get:
      description: List the static routes for an MX or teleworker network
      operationId: getNetworkStaticRoutes
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - enabled: true
                      fixedIpAssignments:
                        22:33:44:55:66:77:
                          ip: 1.2.3.4
                          name: Some client name
                      gatewayIp: 1.2.3.5
                      id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
                      ipVersion: 4
                      name: My route
                      networkId: N_24329156
                      reservedIpRanges:
                        - comment: A reserved IP range
                          end: 192.168.1.1
                          start: 192.168.1.0
                      subnet: 192.168.1.0/24
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the static routes for an MX or teleworker network
      tags:
        - MX static routes
    post:
      description: Add a static route for an MX or teleworker network
      operationId: createNetworkStaticRoute
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                gatewayIp: 1.2.3.5
                name: My route
                subnet: 192.168.1.0/24
              properties:
                gatewayIp:
                  description: The gateway IP (next hop) of the static route
                  type: string
                name:
                  description: The name of the new static route
                  type: string
                subnet:
                  description: The subnet of the static route
                  type: string
              required:
                - name
                - subnet
                - gatewayIp
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    enabled: true
                    fixedIpAssignments: {}
                    gatewayIp: 1.2.3.5
                    id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
                    ipVersion: 4
                    name: My route
                    networkId: N_24329156
                    reservedIpRanges: []
                    subnet: 192.168.1.0/24
              schema:
                type: object
          description: Successful operation
      summary: Add a static route for an MX or teleworker network
      tags:
        - MX static routes
  "/networks/{networkId}/staticRoutes/{staticRouteId}":
    delete:
      description: Delete a static route from an MX or teleworker network
      operationId: deleteNetworkStaticRoute
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: staticRouteId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a static route from an MX or teleworker network
      tags:
        - MX static routes
    get:
      description: Return a static route for an MX or teleworker network
      operationId: getNetworkStaticRoute
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: staticRouteId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    enabled: true
                    fixedIpAssignments:
                      22:33:44:55:66:77:
                        ip: 1.2.3.4
                        name: Some client name
                    gatewayIp: 1.2.3.5
                    id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
                    ipVersion: 4
                    name: My route
                    networkId: N_24329156
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
                    subnet: 192.168.1.0/24
              schema:
                type: object
          description: Successful operation
      summary: Return a static route for an MX or teleworker network
      tags:
        - MX static routes
    put:
      description: Update a static route for an MX or teleworker network
      operationId: updateNetworkStaticRoute
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: staticRouteId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                fixedIpAssignments:
                  22:33:44:55:66:77:
                    ip: 1.2.3.4
                    name: Some client name
                name: My route
                reservedIpRanges:
                  - comment: A reserved IP range
                    end: 192.168.1.1
                    start: 192.168.1.0
                subnet: 192.168.1.0/24
              properties:
                enabled:
                  description: The enabled state of the static route
                  type: boolean
                fixedIpAssignments:
                  description: The DHCP fixed IP assignments on the static route. 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.
                  properties: {}
                  type: object
                gatewayIp:
                  description: The gateway IP (next hop) of the static route
                  type: string
                name:
                  description: The name of the static route
                  type: string
                reservedIpRanges:
                  description: The DHCP reserved IP ranges on the static route
                  items:
                    properties:
                      comment:
                        description: A text comment for the reserved range
                        type: string
                      end:
                        description: The last IP in the reserved range
                        type: string
                      start:
                        description: The first IP in the reserved range
                        type: string
                    required:
                      - start
                      - end
                      - comment
                    type: object
                  type: array
                subnet:
                  description: The subnet of the static route
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    enabled: true
                    fixedIpAssignments:
                      22:33:44:55:66:77:
                        ip: 1.2.3.4
                        name: Some client name
                    gatewayIp: 1.2.3.5
                    id: d7fa4948-7921-4dfa-af6b-ae8b16c20c39
                    ipVersion: 4
                    name: My route
                    networkId: N_24329156
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
                    subnet: 192.168.1.0/24
              schema:
                type: object
          description: Successful operation
      summary: Update a static route for an MX or teleworker network
      tags:
        - MX static routes
  "/networks/{networkId}/swapWarmSpare":
    post:
      description: Swap MX primary and warm spare appliances
      operationId: swapNetworkWarmSpare
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success: true
              schema:
                type: object
          description: Successful operation
      summary: Swap MX primary and warm spare appliances
      tags:
        - MX warm spare settings
  "/networks/{networkId}/switch/linkAggregations":
    get:
      description: List link aggregation groups
      operationId: getNetworkSwitchLinkAggregations
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: NDU2N18yXzM=
                      switchPorts:
                        - portId: "1"
                          serial: Q234-ABCD-0001
                        - portId: "2"
                          serial: Q234-ABCD-0002
                        - portId: "3"
                          serial: Q234-ABCD-0003
                        - portId: "4"
                          serial: Q234-ABCD-0004
                        - portId: "5"
                          serial: Q234-ABCD-0005
                        - portId: "6"
                          serial: Q234-ABCD-0006
                        - portId: "7"
                          serial: Q234-ABCD-0007
                        - portId: "8"
                          serial: Q234-ABCD-0008
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List link aggregation groups
      tags:
        - Link aggregations
    post:
      description: Create a link aggregation group
      operationId: createNetworkSwitchLinkAggregation
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                switchPorts:
                  - portId: "1"
                    serial: Q234-ABCD-0001
                  - portId: "2"
                    serial: Q234-ABCD-0002
                  - portId: "3"
                    serial: Q234-ABCD-0003
                  - portId: "4"
                    serial: Q234-ABCD-0004
                  - portId: "5"
                    serial: Q234-ABCD-0005
                  - portId: "6"
                    serial: Q234-ABCD-0006
                  - portId: "7"
                    serial: Q234-ABCD-0007
                  - portId: "8"
                    serial: Q234-ABCD-0008
              properties:
                switchPorts:
                  description: Array of switch or stack ports for creating aggregation group. Minimum 2 and maximum 8 ports are supported.
                  items:
                    properties:
                      portId:
                        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").'
                        type: string
                      serial:
                        description: Serial number of the switch.
                        type: string
                    required:
                      - serial
                      - portId
                    type: object
                  type: array
                switchProfilePorts:
                  description: Array of switch profile ports for creating aggregation group. Minimum 2 and maximum 8 ports are supported.
                  items:
                    properties:
                      portId:
                        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").'
                        type: string
                      profile:
                        description: Profile identifier.
                        type: string
                    required:
                      - profile
                      - portId
                    type: object
                  type: array
              type: object
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: NDU2N18yXzM=
                    switchPorts:
                      - portId: "1"
                        serial: Q234-ABCD-0001
                      - portId: "2"
                        serial: Q234-ABCD-0002
                      - portId: "3"
                        serial: Q234-ABCD-0003
                      - portId: "4"
                        serial: Q234-ABCD-0004
                      - portId: "5"
                        serial: Q234-ABCD-0005
                      - portId: "6"
                        serial: Q234-ABCD-0006
                      - portId: "7"
                        serial: Q234-ABCD-0007
                      - portId: "8"
                        serial: Q234-ABCD-0008
              schema:
                type: object
          description: Successful operation
      summary: Create a link aggregation group
      tags:
        - Link aggregations
  "/networks/{networkId}/switch/linkAggregations/{linkAggregationId}":
    delete:
      description: Split a link aggregation group into separate ports
      operationId: deleteNetworkSwitchLinkAggregation
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: linkAggregationId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Split a link aggregation group into separate ports
      tags:
        - Link aggregations
    put:
      description: Update a link aggregation group
      operationId: updateNetworkSwitchLinkAggregation
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: linkAggregationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                id: NDU2N18yXzM=
                switchPorts:
                  - portId: "1"
                    serial: Q234-ABCD-0001
                  - portId: "2"
                    serial: Q234-ABCD-0002
                  - portId: "3"
                    serial: Q234-ABCD-0003
                  - portId: "4"
                    serial: Q234-ABCD-0004
                  - portId: "5"
                    serial: Q234-ABCD-0005
                  - portId: "6"
                    serial: Q234-ABCD-0006
                  - portId: "7"
                    serial: Q234-ABCD-0007
                  - portId: "8"
                    serial: Q234-ABCD-0008
              properties:
                switchPorts:
                  description: Array of switch or stack ports for updating aggregation group. Minimum 2 and maximum 8 ports are supported.
                  items:
                    properties:
                      portId:
                        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").'
                        type: string
                      serial:
                        description: Serial number of the switch.
                        type: string
                    required:
                      - serial
                      - portId
                    type: object
                  type: array
                switchProfilePorts:
                  description: Array of switch profile ports for updating aggregation group. Minimum 2 and maximum 8 ports are supported.
                  items:
                    properties:
                      portId:
                        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").'
                        type: string
                      profile:
                        description: Profile identifier.
                        type: string
                    required:
                      - profile
                      - portId
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: NDU2N18yXzM=
                    switchPorts:
                      - portId: "1"
                        serial: Q234-ABCD-0001
                      - portId: "2"
                        serial: Q234-ABCD-0002
                      - portId: "3"
                        serial: Q234-ABCD-0003
                      - portId: "4"
                        serial: Q234-ABCD-0004
                      - portId: "5"
                        serial: Q234-ABCD-0005
                      - portId: "6"
                        serial: Q234-ABCD-0006
                      - portId: "7"
                        serial: Q234-ABCD-0007
                      - portId: "8"
                        serial: Q234-ABCD-0008
              schema:
                type: object
          description: Successful operation
      summary: Update a link aggregation group
      tags:
        - Link aggregations
  "/networks/{networkId}/switch/portSchedules":
    get:
      description: List switch port schedules
      operationId: getNetworkSwitchPortSchedules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "1234"
                      name: Weekdays schedule
                      networkId: N_24329156
                      portSchedule:
                        friday:
                          active: true
                          from: 9:00
                          to: 17:00
                        monday:
                          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
                        thursday:
                          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
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List switch port schedules
      tags:
        - Switch port schedules
    post:
      description: Add a switch port schedule
      operationId: createNetworkSwitchPortSchedule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: Weekdays schedule
                portSchedule:
                  friday:
                    active: true
                    from: 9:00
                    to: 17:00
                  monday:
                    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
                  thursday:
                    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
              properties:
                name:
                  description: The name for your port schedule. Required
                  type: string
                portSchedule:
                  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.
                  properties:
                    friday:
                      description: The schedule object for Friday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    monday:
                      description: The schedule object for Monday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    saturday:
                      description: The schedule object for Saturday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    sunday:
                      description: The schedule object for Sunday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    thursday:
                      description: The schedule object for Thursday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    tuesday:
                      description: The schedule object for Tuesday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    wednesday:
                      description: The schedule object for Wednesday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                  type: object
              required:
                - name
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "1234"
                    name: Weekdays schedule
                    networkId: N_24329156
                    portSchedule:
                      friday:
                        active: true
                        from: 9:00
                        to: 17:00
                      monday:
                        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
                      thursday:
                        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
              schema:
                type: object
          description: Successful operation
      summary: Add a switch port schedule
      tags:
        - Switch port schedules
  "/networks/{networkId}/switch/portSchedules/{portScheduleId}":
    delete:
      description: Delete a switch port schedule
      operationId: deleteNetworkSwitchPortSchedule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: portScheduleId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a switch port schedule
      tags:
        - Switch port schedules
    put:
      description: Update a switch port schedule
      operationId: updateNetworkSwitchPortSchedule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: portScheduleId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: Weekdays schedule
                portSchedule:
                  friday:
                    active: true
                    from: 9:00
                    to: 17:00
                  monday:
                    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
                  thursday:
                    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
              properties:
                name:
                  description: The name for your port schedule.
                  type: string
                portSchedule:
                  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.
                  properties:
                    friday:
                      description: The schedule object for Friday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    monday:
                      description: The schedule object for Monday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    saturday:
                      description: The schedule object for Saturday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    sunday:
                      description: The schedule object for Sunday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    thursday:
                      description: The schedule object for Thursday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    tuesday:
                      description: The schedule object for Tuesday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                    wednesday:
                      description: The schedule object for Wednesday.
                      properties:
                        active:
                          description: Whether the schedule is active (true) or inactive (false) during the time specified between 'from' and 'to'. Defaults to true.
                          type: boolean
                        from:
                          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.
                          type: string
                        to:
                          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.
                          type: string
                      type: object
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "1234"
                    name: Weekdays schedule
                    networkId: N_24329156
                    portSchedule:
                      friday:
                        active: true
                        from: 9:00
                        to: 17:00
                      monday:
                        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
                      thursday:
                        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
              schema:
                type: object
          description: Successful operation
      summary: Update a switch port schedule
      tags:
        - Switch port schedules
  "/networks/{networkId}/switch/settings":
    get:
      description: Returns the switch network settings
      operationId: getNetworkSwitchSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    powerExceptions:
                      - powerType: redundant
                        serial: Q234-ABCD-0001
                      - powerType: combined
                        serial: Q234-ABCD-0002
                      - powerType: redundant
                        serial: Q234-ABCD-0003
                      - powerType: useNetworkSetting
                        serial: Q234-ABCD-0004
                    useCombinedPower: false
                    vlan: 100
              schema:
                type: object
          description: Successful operation
      summary: Returns the switch network settings
      tags:
        - Switch settings
    put:
      description: Update switch network settings
      operationId: updateNetworkSwitchSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                powerExceptions:
                  - powerType: redundant
                    serial: Q234-ABCD-0001
                  - powerType: combined
                    serial: Q234-ABCD-0002
                  - powerType: redundant
                    serial: Q234-ABCD-0003
                  - powerType: useNetworkSetting
                    serial: Q234-ABCD-0004
                useCombinedPower: false
                vlan: 100
              properties:
                powerExceptions:
                  description: Exceptions on a per switch basis to "useCombinedPower"
                  items:
                    properties:
                      powerType:
                        description: Per switch exception (combined, redundant, useNetworkSetting)
                        enum:
                          - combined
                          - redundant
                          - useNetworkSetting
                        type: string
                      serial:
                        description: Serial number of the switch
                        type: string
                    required:
                      - serial
                      - powerType
                    type: object
                  type: array
                useCombinedPower:
                  description: The use Combined Power as the default behavior of secondary power supplies on supported devices.
                  type: boolean
                vlan:
                  description: Management VLAN
                  type: integer
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    powerExceptions:
                      - powerType: redundant
                        serial: Q234-ABCD-0001
                      - powerType: combined
                        serial: Q234-ABCD-0002
                      - powerType: redundant
                        serial: Q234-ABCD-0003
                      - powerType: useNetworkSetting
                        serial: Q234-ABCD-0004
                    useCombinedPower: false
                    vlan: 100
              schema:
                type: object
          description: Successful operation
      summary: Update switch network settings
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/mtu":
    get:
      description: Return the MTU configuration
      operationId: getNetworkSwitchSettingsMtu
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    defaultMtuSize: 9578
                    overrides:
                      - mtuSize: 1500
                        switches:
                          - Q234-ABCD-0001
                          - Q234-ABCD-0002
                          - Q234-ABCD-0003
                      - mtuSize: 1600
                        switchProfiles:
                          - "1284392014819"
                          - "2983092129865"
              schema:
                type: object
          description: Successful operation
      summary: Return the MTU configuration
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/multicast":
    get:
      description: Return multicast settings for a network
      operationId: getNetworkSwitchSettingsMulticast
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    defaultSettings:
                      floodUnknownMulticastTrafficEnabled: true
                      igmpSnoopingEnabled: true
                    overrides:
                      - floodUnknownMulticastTrafficEnabled: true
                        igmpSnoopingEnabled: true
                        switches:
                          - Q234-ABCD-0001
                          - Q234-ABCD-0002
                          - Q234-ABCD-0003
                      - floodUnknownMulticastTrafficEnabled: true
                        igmpSnoopingEnabled: true
                        stacks:
                          - "789102"
                          - "123456"
                          - "129102"
              schema:
                type: object
          description: Successful operation
      summary: Return multicast settings for a network
      tags:
        - Switch settings
    put:
      description: Update multicast settings for a network
      operationId: updateNetworkSwitchSettingsMulticast
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                defaultSettings:
                  floodUnknownMulticastTrafficEnabled: true
                  igmpSnoopingEnabled: true
                overrides:
                  - floodUnknownMulticastTrafficEnabled: true
                    igmpSnoopingEnabled: true
                    switches:
                      - Q234-ABCD-0001
                      - Q234-ABCD-0002
                      - Q234-ABCD-0003
                  - floodUnknownMulticastTrafficEnabled: true
                    igmpSnoopingEnabled: true
                    stacks:
                      - "789102"
                      - "123456"
                      - "129102"
              properties:
                defaultSettings:
                  description: Default multicast setting for entire network. IGMP snooping and Flood unknown multicast traffic settings are enabled by default.
                  properties:
                    floodUnknownMulticastTrafficEnabled:
                      description: Flood unknown multicast traffic setting for entire network
                      type: boolean
                    igmpSnoopingEnabled:
                      description: IGMP snooping setting for entire network
                      type: boolean
                  type: object
                overrides:
                  description: Array of paired switches/stacks/profiles and corresponding multicast settings. An empty array will clear the multicast settings.
                  items:
                    properties:
                      floodUnknownMulticastTrafficEnabled:
                        description: Flood unknown multicast traffic setting for switches, switch stacks or switch profiles
                        type: boolean
                      igmpSnoopingEnabled:
                        description: IGMP snooping setting for switches, switch stacks or switch profiles
                        type: boolean
                      stacks:
                        description: List of switch stack ids for non-template network
                        items:
                          type: string
                        type: array
                      switchProfiles:
                        description: List of switch profiles ids for template network
                        items:
                          type: string
                        type: array
                      switches:
                        description: List of switch serials for non-template network
                        items:
                          type: string
                        type: array
                    required:
                      - igmpSnoopingEnabled
                      - floodUnknownMulticastTrafficEnabled
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    defaultSettings:
                      floodUnknownMulticastTrafficEnabled: true
                      igmpSnoopingEnabled: true
                    overrides:
                      - floodUnknownMulticastTrafficEnabled: true
                        igmpSnoopingEnabled: true
                        switches:
                          - Q234-ABCD-0001
                          - Q234-ABCD-0002
                          - Q234-ABCD-0003
                      - floodUnknownMulticastTrafficEnabled: true
                        igmpSnoopingEnabled: true
                        stacks:
                          - "789102"
                          - "123456"
                          - "129102"
              schema:
                type: object
          description: Successful operation
      summary: Update multicast settings for a network
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/qosRules":
    get:
      description: List quality of service rules
      operationId: getNetworkSwitchSettingsQosRules
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - dscp: 0
                      dstPort: 3000
                      dstPortRange: 3000-3100
                      id: "1284392014819"
                      protocol: TCP
                      srcPort: 2000
                      srcPortRange: 70-80
                      vlan: 100
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List quality of service rules
      tags:
        - Switch settings
    post:
      description: Add a quality of service rule
      operationId: createNetworkSwitchSettingsQosRule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                dscp: 0
                dstPort: 3000
                dstPortRange: 3000-3100
                protocol: TCP
                srcPort: 2000
                srcPortRange: 70-80
                vlan: 100
              properties:
                dscp:
                  description: DSCP tag. Set this to -1 to trust incoming DSCP. Default value is 0
                  type: integer
                dstPort:
                  description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
                  type: integer
                dstPortRange:
                  description: "The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80"
                  type: string
                protocol:
                  description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY"
                  enum:
                    - ANY
                    - TCP
                    - UDP
                  type: string
                srcPort:
                  description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
                  type: integer
                srcPortRange:
                  description: "The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80"
                  type: string
                vlan:
                  description: The VLAN of the incoming packet. A null value will match any VLAN.
                  type: integer
              required:
                - vlan
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    dscp: 0
                    dstPort: 3000
                    dstPortRange: 3000-3100
                    id: "1284392014819"
                    protocol: TCP
                    srcPort: 2000
                    srcPortRange: 70-80
                    vlan: 100
              schema:
                type: object
          description: Successful operation
      summary: Add a quality of service rule
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/qosRules/order":
    get:
      description: Return the quality of service rule IDs by order in which they will be processed by the switch
      operationId: getNetworkSwitchSettingsQosRulesOrder
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ruleIds:
                      - "1284392014819"
                      - "2983092129865"
              schema:
                type: object
          description: Successful operation
      summary: Return the quality of service rule IDs by order in which they will be processed by the switch
      tags:
        - Switch settings
    put:
      description: Update the order in which the rules should be processed by the switch
      operationId: updateNetworkSwitchSettingsQosRulesOrder
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ruleIds:
                  - "1284392014819"
                  - "2983092129865"
              properties:
                ruleIds:
                  description: A list of quality of service rule IDs arranged in order in which they should be processed by the switch.
                  items:
                    type: string
                  type: array
              required:
                - ruleIds
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ruleIds:
                      - "1284392014819"
                      - "2983092129865"
              schema:
                type: object
          description: Successful operation
      summary: Update the order in which the rules should be processed by the switch
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/qosRules/{qosRuleId}":
    delete:
      description: Delete a quality of service rule
      operationId: deleteNetworkSwitchSettingsQosRule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qosRuleId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a quality of service rule
      tags:
        - Switch settings
    get:
      description: Return a quality of service rule
      operationId: getNetworkSwitchSettingsQosRule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qosRuleId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    dscp: 0
                    dstPort: 3000
                    dstPortRange: 3000-3100
                    id: "1284392014819"
                    protocol: TCP
                    srcPort: 2000
                    srcPortRange: 70-80
                    vlan: 100
              schema:
                type: object
          description: Successful operation
      summary: Return a quality of service rule
      tags:
        - Switch settings
    put:
      description: Update a quality of service rule
      operationId: updateNetworkSwitchSettingsQosRule
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: qosRuleId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                dscp: 0
                dstPort: 3000
                dstPortRange: 3000-3100
                protocol: TCP
                srcPort: 2000
                srcPortRange: 70-80
                vlan: 100
              properties:
                dscp:
                  description: DSCP tag that should be assigned to incoming packet. Set this to -1 to trust incoming DSCP. Default value is 0.
                  type: integer
                dstPort:
                  description: The destination port of the incoming packet. Applicable only if protocol is TCP or UDP.
                  type: integer
                dstPortRange:
                  description: "The destination port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80"
                  type: string
                protocol:
                  description: The protocol of the incoming packet. Can be one of "ANY", "TCP" or "UDP". Default value is "ANY".
                  enum:
                    - ANY
                    - TCP
                    - UDP
                  type: string
                srcPort:
                  description: The source port of the incoming packet. Applicable only if protocol is TCP or UDP.
                  type: integer
                srcPortRange:
                  description: "The source port range of the incoming packet. Applicable only if protocol is set to TCP or UDP. Example: 70-80"
                  type: string
                vlan:
                  description: The VLAN of the incoming packet. A null value will match any VLAN.
                  type: integer
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    dscp: 0
                    dstPort: 3000
                    dstPortRange: 3000-3100
                    id: "1284392014819"
                    protocol: TCP
                    srcPort: 2000
                    srcPortRange: 70-80
                    vlan: 100
              schema:
                type: object
          description: Successful operation
      summary: Update a quality of service rule
      tags:
        - Switch settings
  "/networks/{networkId}/switch/settings/stormControl":
    get:
      description: Return the storm control configuration for a switch network
      operationId: getNetworkSwitchSettingsStormControl
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    broadcastThreshold: 30
                    multicastThreshold: 30
                    unknownUnicastThreshold: 30
              schema:
                type: object
          description: Successful operation
      summary: Return the storm control configuration for a switch network
      tags:
        - Switch settings
    put:
      description: Update the storm control configuration for a switch network
      operationId: updateNetworkSwitchSettingsStormControl
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                broadcastThreshold: 30
                multicastThreshold: 30
                unknownUnicastThreshold: 30
              properties:
                broadcastThreshold:
                  description: Percentage (1 to 99) of total available port bandwidth for broadcast traffic type. Default value 100 percent rate is to clear the configuration.
                  type: integer
                multicastThreshold:
                  description: Percentage (1 to 99) of total available port bandwidth for multicast traffic type. Default value 100 percent rate is to clear the configuration.
                  type: integer
                unknownUnicastThreshold:
                  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.
                  type: integer
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    broadcastThreshold: 30
                    multicastThreshold: 30
                    unknownUnicastThreshold: 30
              schema:
                type: object
          description: Successful operation
      summary: Update the storm control configuration for a switch network
      tags:
        - Switch settings
  "/networks/{networkId}/switchStacks":
    get:
      description: List the switch stacks in a network
      operationId: getNetworkSwitchStacks
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "8473"
                      name: A cool stack
                      serials:
                        - QBZY-XWVU-TSRQ
                        - QBAB-CDEF-GHIJ
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the switch stacks in a network
      tags:
        - Switch stacks
  "/networks/{networkId}/syslogServers":
    get:
      description: List the syslog servers for a network
      operationId: getNetworkSyslogServers
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - host: 1.2.3.4
                      port: 443
                      roles:
                        - Wireless event log
                        - URLs
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the syslog servers for a network
      tags:
        - Syslog servers
    put:
      description: Update the syslog servers for a network
      operationId: updateNetworkSyslogServers
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                servers:
                  - host: 1.2.3.4
                    port: 443
                    roles:
                      - Wireless event log
                      - URLs
              properties:
                servers:
                  description: A list of the syslog servers for this network
                  items:
                    properties:
                      host:
                        description: The IP address of the syslog server
                        type: string
                      port:
                        description: The port of the syslog server
                        type: integer
                      roles:
                        description: "A list of roles for the syslog server. Options (case-insensitive): 'Wireless event log', 'Appliance event log', 'Switch event log', 'Air Marshal events', 'Flows', 'URLs', 'IDS alerts', 'Security events'"
                        items:
                          type: string
                        type: array
                    required:
                      - host
                      - port
                      - roles
                    type: object
                  type: array
              required:
                - servers
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - host: 1.2.3.4
                      port: 443
                      roles:
                        - Wireless event log
                        - URLs
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the syslog servers for a network
      tags:
        - Syslog servers
  "/networks/{networkId}/traffic":
    get:
      description: Return the traffic analysis data for this network. Traffic analysis with hostname visibility must be enabled on the network.
      operationId: getNetworkTraffic
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 30 days from today.
          in: query
          name: t0
          schema:
            type: string
        - 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 30 days.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: "Filter the data by device type: 'combined', 'wireless', 'switch' or 'appliance'. Defaults to 'combined'. When using 'combined', for each rule the data will come from the device type with the most usage."
          in: query
          name: deviceType
          schema:
            enum:
              - appliance
              - combined
              - switch
              - wireless
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - activeTime: 77000
                      application: Gmail
                      destination: null
                      flows: 300
                      numClients: 7
                      port: 443
                      protocol: TCP
                      recv: 61
                      sent: 138
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the traffic analysis data for this network
      tags:
        - Networks
  "/networks/{networkId}/unbind":
    post:
      description: Unbind a network from a template.
      operationId: unbindNetwork
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          description: Successful operation
      summary: Unbind a network from a template.
      tags:
        - Networks
  "/networks/{networkId}/uplinkSettings":
    get:
      description: Returns the uplink settings for your MX network.
      operationId: getNetworkUplinkSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    bandwidthLimits:
                      cellular:
                        limitDown: 51200
                        limitUp: 51200
                      wan1:
                        limitDown: 1000000
                        limitUp: 1000000
                      wan2:
                        limitDown: 1000000
                        limitUp: 1000000
              schema:
                type: object
          description: Successful operation
      summary: Returns the uplink settings for your MX network.
      tags:
        - Traffic shaping uplink settings
    put:
      description: Updates the uplink settings for your MX network.
      operationId: updateNetworkUplinkSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                bandwidthLimits:
                  cellular:
                    limitDown: 51200
                    limitUp: 51200
                  wan1:
                    limitDown: 1000000
                    limitUp: 1000000
                  wan2:
                    limitDown: 1000000
                    limitUp: 1000000
              properties:
                bandwidthLimits:
                  description: A mapping of uplinks to their bandwidth settings (be sure to check which uplinks are supported for your network)
                  properties:
                    cellular:
                      description: The bandwidth settings for the 'cellular' uplink
                      properties:
                        limitDown:
                          description: The maximum download limit (integer, in Kbps). null indicates no limit
                          type: integer
                        limitUp:
                          description: The maximum upload limit (integer, in Kbps). null indicates no limit
                          type: integer
                      type: object
                    wan1:
                      description: The bandwidth settings for the 'wan1' uplink
                      properties:
                        limitDown:
                          description: The maximum download limit (integer, in Kbps). null indicates no limit
                          type: integer
                        limitUp:
                          description: The maximum upload limit (integer, in Kbps). null indicates no limit
                          type: integer
                      type: object
                    wan2:
                      description: The bandwidth settings for the 'wan2' uplink
                      properties:
                        limitDown:
                          description: The maximum download limit (integer, in Kbps). null indicates no limit
                          type: integer
                        limitUp:
                          description: The maximum upload limit (integer, in Kbps). null indicates no limit
                          type: integer
                      type: object
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    bandwidthLimits:
                      cellular:
                        limitDown: 51200
                        limitUp: 51200
                      wan1:
                        limitDown: 1000000
                        limitUp: 1000000
                      wan2:
                        limitDown: 1000000
                        limitUp: 1000000
              schema:
                type: object
          description: Successful operation
      summary: Updates the uplink settings for your MX network.
      tags:
        - Traffic shaping uplink settings
  "/networks/{networkId}/vlans":
    get:
      description: List the VLANs for an MX network
      operationId: getNetworkVlans
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - applianceIp: 192.168.1.2
                      cidr: 192.168.1.0/24
                      dhcpBootFilename: sample.file
                      dhcpBootNextServer: 1.2.3.4
                      dhcpBootOptionsEnabled: false
                      dhcpHandling: Run a DHCP server
                      dhcpLeaseTime: 1 day
                      dhcpOptions:
                        - code: "5"
                          type: text
                          value: five
                      dhcpRelayServerIps:
                        - 192.168.1.0/24
                        - 192.168.128.0/24
                      dnsNameservers: google_dns
                      fixedIpAssignments:
                        22:33:44:55:66:77:
                          ip: 1.2.3.4
                          name: Some client name
                      groupPolicyId: "101"
                      id: "1234"
                      ipv6:
                        enabled: true
                        prefixAssignments:
                          - autonomous: false
                            origin:
                              interfaces:
                                - wan0
                              type: internet
                            staticApplianceIp6: 2001:db8:3c4d:15::1
                            staticPrefix: 2001:db8:3c4d:15::/64
                      mandatoryDhcp:
                        enabled: true
                      mask: 28
                      name: My VLAN
                      networkId: N_24329156
                      reservedIpRanges:
                        - comment: A reserved IP range
                          end: 192.168.1.1
                          start: 192.168.1.0
                      subnet: 192.168.1.0/24
                      templateVlanType: same
                      vpnNatSubnet: 192.168.1.0/24
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the VLANs for an MX network
      tags:
        - VLANs
    post:
      description: Add a VLAN
      operationId: createNetworkVlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                applianceIp: 192.168.1.2
                groupPolicyId: "101"
                id: "1234"
                name: My VLAN
                subnet: 192.168.1.0/24
              properties:
                applianceIp:
                  description: The local IP of the appliance on the VLAN
                  type: string
                groupPolicyId:
                  description: The id of the desired group policy to apply to the VLAN
                  type: string
                id:
                  description: The VLAN ID of the new VLAN (must be between 1 and 4094)
                  type: string
                name:
                  description: The name of the new VLAN
                  type: string
                subnet:
                  description: The subnet of the VLAN
                  type: string
              required:
                - id
                - name
                - subnet
                - applianceIp
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    applianceIp: 192.168.1.2
                    cidr: 192.168.1.0/24
                    dhcpBootFilename: sample.file
                    dhcpBootNextServer: 1.2.3.4
                    dhcpBootOptionsEnabled: false
                    dhcpHandling: Run a DHCP server
                    dhcpLeaseTime: 1 day
                    dhcpOptions: []
                    dnsNameservers: google_dns
                    fixedIpAssignments: {}
                    groupPolicyId: "101"
                    id: "1234"
                    ipv6:
                      enabled: true
                      prefixAssignments:
                        - autonomous: false
                          origin:
                            interfaces:
                              - wan0
                            type: internet
                          staticApplianceIp6: 2001:db8:3c4d:15::1
                          staticPrefix: 2001:db8:3c4d:15::/64
                    mandatoryDhcp:
                      enabled: true
                    mask: 28
                    name: My VLAN
                    networkId: N_24329156
                    reservedIpRanges: []
                    subnet: 192.168.1.0/24
                    templateVlanType: same
              schema:
                type: object
          description: Successful operation
      summary: Add a VLAN
      tags:
        - VLANs
  "/networks/{networkId}/vlans/{vlanId}":
    delete:
      description: Delete a VLAN from a network
      operationId: deleteNetworkVlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: vlanId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a VLAN from a network
      tags:
        - VLANs
    get:
      description: Return a VLAN
      operationId: getNetworkVlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: vlanId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    applianceIp: 192.168.1.2
                    cidr: 192.168.1.0/24
                    dhcpBootFilename: sample.file
                    dhcpBootNextServer: 1.2.3.4
                    dhcpBootOptionsEnabled: false
                    dhcpHandling: Run a DHCP server
                    dhcpLeaseTime: 1 day
                    dhcpOptions:
                      - code: "5"
                        type: text
                        value: five
                    dhcpRelayServerIps:
                      - 192.168.1.0/24
                      - 192.168.128.0/24
                    dnsNameservers: google_dns
                    fixedIpAssignments:
                      22:33:44:55:66:77:
                        ip: 1.2.3.4
                        name: Some client name
                    groupPolicyId: "101"
                    id: "1234"
                    ipv6:
                      enabled: true
                      prefixAssignments:
                        - autonomous: false
                          origin:
                            interfaces:
                              - wan0
                            type: internet
                          staticApplianceIp6: 2001:db8:3c4d:15::1
                          staticPrefix: 2001:db8:3c4d:15::/64
                    mandatoryDhcp:
                      enabled: true
                    mask: 28
                    name: My VLAN
                    networkId: N_24329156
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
                    subnet: 192.168.1.0/24
                    templateVlanType: same
                    vpnNatSubnet: 192.168.1.0/24
              schema:
                type: object
          description: Successful operation
      summary: Return a VLAN
      tags:
        - VLANs
    put:
      description: Update a VLAN
      operationId: updateNetworkVlan
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: vlanId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                applianceIp: 192.168.1.2
                cidr: 192.168.1.0/24
                dhcpBootFilename: sample.file
                dhcpBootNextServer: 1.2.3.4
                dhcpBootOptionsEnabled: false
                dhcpHandling: Run a DHCP server
                dhcpLeaseTime: 1 day
                dhcpOptions:
                  - code: "5"
                    type: text
                    value: five
                dhcpRelayServerIps:
                  - 192.168.1.0/24
                  - 192.168.128.0/24
                dnsNameservers: google_dns
                fixedIpAssignments:
                  22:33:44:55:66:77:
                    ip: 1.2.3.4
                    name: Some client name
                groupPolicyId: "101"
                ipv6:
                  enabled: true
                  prefixAssignments:
                    - autonomous: false
                      origin:
                        interfaces:
                          - wan0
                        type: internet
                      staticApplianceIp6: 2001:db8:3c4d:15::1
                      staticPrefix: 2001:db8:3c4d:15::/64
                mandatoryDhcp:
                  enabled: true
                mask: 28
                name: My VLAN
                reservedIpRanges:
                  - comment: A reserved IP range
                    end: 192.168.1.1
                    start: 192.168.1.0
                subnet: 192.168.1.0/24
                templateVlanType: same
                vpnNatSubnet: 192.168.1.0/24
              properties:
                applianceIp:
                  description: The local IP of the appliance on the VLAN
                  type: string
                dhcpBootFilename:
                  description: DHCP boot option for boot filename
                  type: string
                dhcpBootNextServer:
                  description: DHCP boot option to direct boot clients to the server to load the boot file from
                  type: string
                dhcpBootOptionsEnabled:
                  description: Use DHCP boot options specified in other properties
                  type: boolean
                dhcpHandling:
                  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'"
                  enum:
                    - Do not respond to DHCP requests
                    - Relay DHCP to another server
                    - Run a DHCP server
                  type: string
                dhcpLeaseTime:
                  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'"
                  enum:
                    - 1 day
                    - 1 hour
                    - 1 week
                    - 12 hours
                    - 30 minutes
                    - 4 hours
                  type: string
                dhcpOptions:
                  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.
                  items:
                    properties:
                      code:
                        description: The code for the DHCP option. This should be an integer between 2 and 254.
                        type: string
                      type:
                        description: "The type for the DHCP option. One of: 'text', 'ip', 'hex' or 'integer'"
                        enum:
                          - hex
                          - integer
                          - ip
                          - text
                        type: string
                      value:
                        description: The value for the DHCP option
                        type: string
                    required:
                      - code
                      - type
                      - value
                    type: object
                  type: array
                dhcpRelayServerIps:
                  description: The IPs of the DHCP servers that DHCP requests should be relayed to
                  items:
                    type: string
                  type: array
                dnsNameservers:
                  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
                  type: string
                fixedIpAssignments:
                  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.
                  properties: {}
                  type: object
                groupPolicyId:
                  description: The id of the desired group policy to apply to the VLAN
                  type: string
                name:
                  description: The name of the VLAN
                  type: string
                reservedIpRanges:
                  description: The DHCP reserved IP ranges on the VLAN
                  items:
                    properties:
                      comment:
                        description: A text comment for the reserved range
                        type: string
                      end:
                        description: The last IP in the reserved range
                        type: string
                      start:
                        description: The first IP in the reserved range
                        type: string
                    required:
                      - start
                      - end
                      - comment
                    type: object
                  type: array
                subnet:
                  description: The subnet of the VLAN
                  type: string
                vpnNatSubnet:
                  description: The translated VPN subnet if VPN and VPN subnet translation are enabled on the VLAN
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    applianceIp: 192.168.1.2
                    cidr: 192.168.1.0/24
                    dhcpBootFilename: sample.file
                    dhcpBootNextServer: 1.2.3.4
                    dhcpBootOptionsEnabled: false
                    dhcpHandling: Run a DHCP server
                    dhcpLeaseTime: 1 day
                    dhcpOptions:
                      - code: "5"
                        type: text
                        value: five
                    dhcpRelayServerIps:
                      - 192.168.1.0/24
                      - 192.168.128.0/24
                    dnsNameservers: google_dns
                    fixedIpAssignments:
                      22:33:44:55:66:77:
                        ip: 1.2.3.4
                        name: Some client name
                    groupPolicyId: "101"
                    id: "1234"
                    ipv6:
                      enabled: true
                      prefixAssignments:
                        - autonomous: false
                          origin:
                            interfaces:
                              - wan0
                            type: internet
                          staticApplianceIp6: 2001:db8:3c4d:15::1
                          staticPrefix: 2001:db8:3c4d:15::/64
                    mandatoryDhcp:
                      enabled: true
                    mask: 28
                    name: My VLAN
                    networkId: N_24329156
                    reservedIpRanges:
                      - comment: A reserved IP range
                        end: 192.168.1.1
                        start: 192.168.1.0
                    subnet: 192.168.1.0/24
                    templateVlanType: same
                    vpnNatSubnet: 192.168.1.0/24
              schema:
                type: object
          description: Successful operation
      summary: Update a VLAN
      tags:
        - VLANs
  "/networks/{networkId}/vlansEnabledState":
    get:
      description: Returns the enabled status of VLANs for the network
      operationId: getNetworkVlansEnabledState
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    enabled: true
                    networkId: N_24329156
              schema:
                type: object
          description: Successful operation
      summary: Returns the enabled status of VLANs for the network
      tags:
        - VLANs
    put:
      description: Enable/Disable VLANs for the given network
      operationId: updateNetworkVlansEnabledState
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                enabled: true
              properties:
                enabled:
                  description: Boolean indicating whether to enable (true) or disable (false) VLANs for the network
                  type: boolean
              required:
                - enabled
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    enabled: true
                    networkId: N_24329156
              schema:
                type: object
          description: Successful operation
      summary: Enable/Disable VLANs for the given network
      tags:
        - VLANs
  "/networks/{networkId}/warmSpareSettings":
    get:
      description: Return MX warm spare settings
      operationId: getNetworkWarmSpareSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    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.128.0/24
              schema:
                type: object
          description: Successful operation
      summary: Return MX warm spare settings
      tags:
        - MX warm spare settings
    put:
      description: Update MX warm spare settings
      operationId: updateNetworkWarmSpareSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                enabled: true
                spareSerial: Q234-ABCD-5678
                uplinkMode: virtual
                virtualIp1: 1.2.3.4
                virtualIp2: 1.2.3.4
              properties:
                enabled:
                  description: Enable warm spare
                  type: boolean
                spareSerial:
                  description: Serial number of the warm spare appliance
                  type: string
                uplinkMode:
                  description: Uplink mode, either virtual or public
                  type: string
                virtualIp1:
                  description: The WAN 1 shared IP
                  type: string
                virtualIp2:
                  description: The WAN 2 shared IP
                  type: string
              required:
                - enabled
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    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.128.0/24
              schema:
                type: object
          description: Successful operation
      summary: Update MX warm spare settings
      tags:
        - MX warm spare settings
  "/networks/{networkId}/wireless/rfProfiles":
    get:
      description: List the non-basic RF profiles for this network
      operationId: getNetworkWirelessRfProfiles
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - 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.
          in: query
          name: includeTemplateProfiles
          schema:
            type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - afcEnabled: true
                      apBandSettings:
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                      bandSelectionType: ap
                      clientBalancingEnabled: true
                      fiveGhzSettings:
                        channelWidth: auto
                        maxPower: 30
                        minBitrate: 12
                        minPower: 8
                        rxsop: null
                        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
                      id: "1234"
                      minBitrateType: band
                      name: Some Custom RF Profile
                      networkId: N_24329156
                      perSsidSettings:
                        "0":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 0
                        "1":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 1
                        "2":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 2
                        "3":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 3
                        "4":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 4
                        "5":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 5
                        "6":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 6
                        "7":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 7
                        "8":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 8
                        "9":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 9
                        "10":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 10
                        "11":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 11
                        "12":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 12
                        "13":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 13
                        "14":
                          bandOperationMode: dual
                          bandSteeringEnabled: true
                          minBitrate: 11
                          name: SSID 14
                      transmission:
                        enabled: true
                      twoFourGhzSettings:
                        axEnabled: true
                        maxPower: 30
                        minBitrate: 11
                        minPower: 5
                        rxsop: null
                        validAutoChannels:
                          - 1
                          - 6
                          - 11
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the non-basic RF profiles for this network
      tags:
        - Radio settings
    post:
      description: Creates new RF profile for this network
      operationId: createNetworkWirelessRfProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example: {}
              properties:
                apBandSettings:
                  description: Settings that will be enabled if selectionType is set to 'ap'.
                  properties:
                    bandOperationMode:
                      description: Choice between 'dual', '2.4ghz' or '5ghz'. Defaults to dual.
                      enum:
                        - 2.4ghz
                        - 5ghz
                        - dual
                      type: string
                    bandSteeringEnabled:
                      description: Steers client to most open band. Can be either true or false. Defaults to true.
                      type: boolean
                  type: object
                bandSelectionType:
                  description: Band selection can be set to either 'ssid' or 'ap'. This param is required on creation.
                  enum:
                    - ap
                    - ssid
                  type: string
                clientBalancingEnabled:
                  description: Steers client to best available access point. Can be either true or false. Defaults to true.
                  type: boolean
                fiveGhzSettings:
                  description: Settings related to 5Ghz band
                  properties:
                    channelWidth:
                      description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'. Defaults to auto.
                      type: string
                    maxPower:
                      description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 30.
                      type: integer
                    minBitrate:
                      description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'. Defaults to 12.
                      type: integer
                    minPower:
                      description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30. Defaults to 8.
                      type: integer
                    rxsop:
                      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.
                      type: integer
                    validAutoChannels:
                      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].
                      items:
                        type: integer
                      type: array
                  type: object
                minBitrateType:
                  description: Minimum bitrate can be set to either 'band' or 'ssid'. Defaults to band.
                  enum:
                    - band
                    - ssid
                  type: string
                name:
                  description: The name of the new profile. Must be unique. This param is required on creation.
                  type: string
                twoFourGhzSettings:
                  description: Settings related to 2.4Ghz band
                  properties:
                    axEnabled:
                      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.
                      type: boolean
                    maxPower:
                      description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 30.
                      type: integer
                    minBitrate:
                      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.
                      format: float
                      type: number
                    minPower:
                      description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30. Defaults to 5.
                      type: integer
                    rxsop:
                      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.
                      type: integer
                    validAutoChannels:
                      description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'. Defaults to [1, 6, 11].
                      items:
                        type: integer
                      type: array
                  type: object
              required:
                - name
                - bandSelectionType
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    afcEnabled: true
                    apBandSettings:
                      bandOperationMode: dual
                      bandSteeringEnabled: true
                    bandSelectionType: ap
                    clientBalancingEnabled: true
                    fiveGhzSettings:
                      channelWidth: auto
                      maxPower: 30
                      minBitrate: 12
                      minPower: 8
                      rxsop: null
                      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
                    id: "1234"
                    minBitrateType: band
                    name: Some Custom RF Profile
                    networkId: N_24329156
                    perSsidSettings:
                      "0":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 0
                      "1":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 1
                      "2":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 2
                      "3":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 3
                      "4":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 4
                      "5":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 5
                      "6":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 6
                      "7":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 7
                      "8":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 8
                      "9":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 9
                      "10":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 10
                      "11":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 11
                      "12":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 12
                      "13":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 13
                      "14":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 14
                    transmission:
                      enabled: true
                    twoFourGhzSettings:
                      axEnabled: true
                      maxPower: 30
                      minBitrate: 11
                      minPower: 5
                      rxsop: null
                      validAutoChannels:
                        - 1
                        - 6
                        - 11
              schema:
                type: object
          description: Successful operation
      summary: Creates new RF profile for this network
      tags:
        - Radio settings
  "/networks/{networkId}/wireless/rfProfiles/{rfProfileId}":
    delete:
      description: Delete a RF Profile
      operationId: deleteNetworkWirelessRfProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: rfProfileId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete a RF Profile
      tags:
        - Radio settings
    get:
      description: Return a RF profile
      operationId: getNetworkWirelessRfProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: rfProfileId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    afcEnabled: true
                    apBandSettings:
                      bandOperationMode: dual
                      bandSteeringEnabled: true
                    bandSelectionType: ap
                    clientBalancingEnabled: true
                    fiveGhzSettings:
                      channelWidth: auto
                      maxPower: 30
                      minBitrate: 12
                      minPower: 8
                      rxsop: null
                      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
                    id: "1234"
                    minBitrateType: band
                    name: Some Custom RF Profile
                    networkId: N_24329156
                    perSsidSettings:
                      "0":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 0
                      "1":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 1
                      "2":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 2
                      "3":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 3
                      "4":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 4
                      "5":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 5
                      "6":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 6
                      "7":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 7
                      "8":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 8
                      "9":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 9
                      "10":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 10
                      "11":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 11
                      "12":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 12
                      "13":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 13
                      "14":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 14
                    transmission:
                      enabled: true
                    twoFourGhzSettings:
                      axEnabled: true
                      maxPower: 30
                      minBitrate: 11
                      minPower: 5
                      rxsop: null
                      validAutoChannels:
                        - 1
                        - 6
                        - 11
              schema:
                type: object
          description: Successful operation
      summary: Return a RF profile
      tags:
        - Radio settings
    put:
      description: Updates specified RF profile for this network
      operationId: updateNetworkWirelessRfProfile
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
        - in: path
          name: rfProfileId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example: {}
              properties:
                apBandSettings:
                  description: Settings that will be enabled if selectionType is set to 'ap'.
                  properties:
                    bandOperationMode:
                      description: Choice between 'dual', '2.4ghz' or '5ghz'.
                      enum:
                        - 2.4ghz
                        - 5ghz
                        - dual
                      type: string
                    bandSteeringEnabled:
                      description: Steers client to most open band. Can be either true or false.
                      type: boolean
                  type: object
                bandSelectionType:
                  description: Band selection can be set to either 'ssid' or 'ap'.
                  enum:
                    - ap
                    - ssid
                  type: string
                clientBalancingEnabled:
                  description: Steers client to best available access point. Can be either true or false.
                  type: boolean
                fiveGhzSettings:
                  description: Settings related to 5Ghz band
                  properties:
                    channelWidth:
                      description: Sets channel width (MHz) for 5Ghz band. Can be one of 'auto', '20', '40' or '80'.
                      type: string
                    maxPower:
                      description: Sets max power (dBm) of 5Ghz band. Can be integer between 2 and 30.
                      type: integer
                    minBitrate:
                      description: Sets min bitrate (Mbps) of 5Ghz band. Can be one of '6', '9', '12', '18', '24', '36', '48' or '54'.
                      type: integer
                    minPower:
                      description: Sets min power (dBm) of 5Ghz band. Can be integer between 2 and 30.
                      type: integer
                    rxsop:
                      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.
                      type: integer
                    validAutoChannels:
                      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'.
                      items:
                        type: integer
                      type: array
                  type: object
                minBitrateType:
                  description: Minimum bitrate can be set to either 'band' or 'ssid'.
                  enum:
                    - band
                    - ssid
                  type: string
                name:
                  description: The name of the new profile. Must be unique.
                  type: string
                twoFourGhzSettings:
                  description: Settings related to 2.4Ghz band
                  properties:
                    axEnabled:
                      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.
                      type: boolean
                    maxPower:
                      description: Sets max power (dBm) of 2.4Ghz band. Can be integer between 2 and 30.
                      type: integer
                    minBitrate:
                      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'.
                      format: float
                      type: number
                    minPower:
                      description: Sets min power (dBm) of 2.4Ghz band. Can be integer between 2 and 30.
                      type: integer
                    rxsop:
                      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.
                      type: integer
                    validAutoChannels:
                      description: Sets valid auto channels for 2.4Ghz band. Can be one of '1', '6' or '11'.
                      items:
                        type: integer
                      type: array
                  type: object
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    afcEnabled: true
                    apBandSettings:
                      bandOperationMode: dual
                      bandSteeringEnabled: true
                    bandSelectionType: ap
                    clientBalancingEnabled: true
                    fiveGhzSettings:
                      channelWidth: auto
                      maxPower: 30
                      minBitrate: 12
                      minPower: 8
                      rxsop: null
                      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
                    id: "1234"
                    minBitrateType: band
                    name: Some Custom RF Profile
                    networkId: N_24329156
                    perSsidSettings:
                      "0":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 0
                      "1":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 1
                      "2":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 2
                      "3":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 3
                      "4":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 4
                      "5":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 5
                      "6":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 6
                      "7":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 7
                      "8":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 8
                      "9":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 9
                      "10":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 10
                      "11":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 11
                      "12":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 12
                      "13":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 13
                      "14":
                        bandOperationMode: dual
                        bandSteeringEnabled: true
                        minBitrate: 11
                        name: SSID 14
                    transmission:
                      enabled: true
                    twoFourGhzSettings:
                      axEnabled: true
                      maxPower: 30
                      minBitrate: 11
                      minPower: 5
                      rxsop: null
                      validAutoChannels:
                        - 1
                        - 6
                        - 11
              schema:
                type: object
          description: Successful operation
      summary: Updates specified RF profile for this network
      tags:
        - Radio settings
  "/networks/{networkId}/wireless/settings":
    get:
      description: Return the wireless settings for a network
      operationId: getNetworkWirelessSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ipv6BridgeEnabled: false
                    ledLightsOn: false
                    locationAnalyticsEnabled: false
                    meshingEnabled: true
                    upgradeStrategy: minimizeUpgradeTime
              schema:
                type: object
          description: Successful operation
      summary: Return the wireless settings for a network
      tags:
        - Wireless settings
    put:
      description: Update the wireless settings for a network
      operationId: updateNetworkWirelessSettings
      parameters:
        - in: path
          name: networkId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ipv6BridgeEnabled: false
                ledLightsOn: false
                locationAnalyticsEnabled: false
                meshingEnabled: true
                upgradeStrategy: minimizeUpgradeTime
              properties:
                ipv6BridgeEnabled:
                  description: "Toggle for enabling or disabling IPv6 bridging in a network (Note: if enabled, SSIDs must also be configured to use bridge mode)"
                  type: boolean
                ledLightsOn:
                  description: Toggle for enabling or disabling LED lights on all APs in the network (making them run dark)
                  type: boolean
                locationAnalyticsEnabled:
                  description: Toggle for enabling or disabling location analytics for your network
                  type: boolean
                meshingEnabled:
                  description: Toggle for enabling or disabling meshing in a network
                  type: boolean
                upgradeStrategy:
                  description: The upgrade strategy to apply to the network. Must be one of 'minimizeUpgradeTime' or 'minimizeClientDowntime'. Requires firmware version MR 26.8 or higher'
                  enum:
                    - minimizeClientDowntime
                    - minimizeUpgradeTime
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    ipv6BridgeEnabled: false
                    ledLightsOn: false
                    locationAnalyticsEnabled: false
                    meshingEnabled: true
                    upgradeStrategy: minimizeUpgradeTime
              schema:
                type: object
          description: Successful operation
      summary: Update the wireless settings for a network
      tags:
        - Wireless settings
  "/networks/{network_id}/sm/devices/lock":
    put:
      description: Lock a set of devices
      operationId: lockNetworkSmDevices
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                ids: '"1284392014819"'
              properties:
                ids:
                  description: The ids of the devices to be locked.
                  type: string
                pin:
                  description: The pin number for locking macOS devices (a six digit number). Required only for macOS devices.
                  type: integer
                scope:
                  description: The scope (one of all, none, withAny, withAll, withoutAny, or withoutAll) and a set of tags of the devices to be wiped.
                  type: string
                serials:
                  description: The serials of the devices to be locked.
                  type: string
                wifiMacs:
                  description: The wifiMacs of the devices to be locked.
                  type: string
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    success: true
              schema:
                type: object
          description: Successful operation
      summary: Lock a set of devices
      tags:
        - SM
  "/networks/{network_id}/sm/{id}/connectivity":
    get:
      description: Returns historical connectivity data (whether a device is regularly checking in to Dashboard).
      operationId: getNetworkSmConnectivity
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - firstSeenAt: 1518365681
                      lastSeenAt: 1526087474
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: Returns historical connectivity data (whether a device is regularly checking in to Dashboard).
      tags:
        - SM
  "/networks/{network_id}/sm/{id}/desktopLogs":
    get:
      description: Return historical records of various Systems Manager network connection details for desktop devices.
      operationId: getNetworkSmDesktopLogs
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - dhcpServer: 1.2.3.4
                      dnsServer: "8"
                      gateway: 1.2.3.5
                      ip: 1.2.3.4
                      measuredAt: 1526087474
                      networkDevice: NIC
                      networkDriver: Driver
                      networkMTU: "1500"
                      publicIP: 123.123.123.1
                      subnet: 192.168.1.0/24
                      ts: 1526087474
                      user: milesmeraki
                      wifiAuth: wpa-psk
                      wifiBssid: 00:11:22:33:44:55
                      wifiChannel: "11"
                      wifiNoise: "-99"
                      wifiRssi: "-11"
                      wifiSsid: ssid
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: Return historical records of various Systems Manager network connection details for desktop devices.
      tags:
        - SM
  "/networks/{network_id}/sm/{id}/deviceCommandLogs":
    get:
      description: Return historical records of commands sent to Systems Manager devices. Note that this will include the name of the Dashboard user who initiated the command if it was generated by a Dashboard admin rather than the automatic behavior of the system; you may wish to filter this out of any reports.
      operationId: getNetworkSmDeviceCommandLogs
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - action: UpdateProfile
                      dashboardUser: Miles Meraki
                      details: "{}"
                      name: My profile
                      ts: 1526087474
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: Return historical records of commands sent to Systems Manager devices
      tags:
        - SM
  "/networks/{network_id}/sm/{id}/performanceHistory":
    get:
      description: Return historical records of various Systems Manager client metrics for desktop devices.
      operationId: getNetworkSmPerformanceHistory
      parameters:
        - in: path
          name: network_id
          required: true
          schema:
            type: string
        - in: path
          name: id
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - cpuPercentUsed: 0.95
                      diskUsage:
                        c:
                          space: 9096
                          used: 2048
                      memActive: 1024
                      memFree: 1024
                      memInactive: 2048
                      memWired: 4096
                      networkReceived: 512
                      networkSent: 512
                      swapUsed: 768
                      ts: 1526087474
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: Return historical records of various Systems Manager client metrics for desktop devices.
      tags:
        - SM
  /organizations:
    get:
      description: List the organizations that the user has privileges on
      operationId: getOrganizations
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "2930418"
                      name: My organization
                      url: https://dashboard.meraki.com/o/VjjsAd/manage/organization/overview
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the organizations that the user has privileges on
      tags:
        - Organizations
  "/organizations/{organizationId}":
    get:
      description: Return an organization
      operationId: getOrganization
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "2930418"
                    name: My organization
                    url: https://dashboard.meraki.com/o/VjjsAd/manage/organization/overview
              schema:
                type: object
          description: Successful operation
      summary: Return an organization
      tags:
        - Organizations
  "/organizations/{organizationId}/actionBatches":
    get:
      description: Return the list of action batches in the organization
      operationId: getOrganizationActionBatches
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: Filter batches by status. Valid types are pending, completed, and failed.
          in: query
          name: status
          schema:
            enum:
              - completed
              - failed
              - pending
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - actions:
                        - body:
                            name: Group 1
                          operation: create
                          resource: /networks/L_XXXXX/groupPolicies
                      confirmed: true
                      id: "123"
                      organizationId: "2930418"
                      status:
                        completed: true
                        createdResources:
                          - id: 100
                            uri: /networks/L_XXXXX/groupPolicies/100
                        errors: []
                        failed: false
                      synchronous: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the list of action batches in the organization
      tags:
        - Action batches
    post:
      description: Create an action batch
      operationId: createOrganizationActionBatch
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                actions:
                  - body:
                      name: Group 1
                    operation: create
                    resource: /networks/L_XXXXX/groupPolicies
                confirmed: true
                synchronous: false
              properties:
                actions:
                  description: A set of changes to make as part of this action (<a href='https://developer.cisco.com/meraki/api/#/rest/guides/action-batches/'>more details</a>)
                  items:
                    properties:
                      body:
                        default: {}
                        description: The body of the action
                        properties: {}
                        type: object
                      operation:
                        description: The operation to be used
                        type: string
                      resource:
                        description: Unique identifier for the resource to be acted on
                        type: string
                    required:
                      - resource
                      - operation
                    type: object
                  type: array
                confirmed:
                  description: Set to true for immediate execution. Set to false if the action should be previewed before executing. This property cannot be unset once it is true. Defaults to false.
                  type: boolean
                synchronous:
                  description: Set to true to force the batch to run synchronous. There can be at most 20 actions in synchronous batch. Defaults to false.
                  type: boolean
              required:
                - actions
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    actions:
                      - body:
                          name: Group 1
                        operation: create
                        resource: /networks/L_XXXXX/groupPolicies
                    confirmed: true
                    id: "123"
                    organizationId: "2930418"
                    status:
                      completed: true
                      createdResources:
                        - id: 100
                          uri: /networks/L_XXXXX/groupPolicies/100
                      errors: []
                      failed: false
                    synchronous: false
              schema:
                type: object
          description: Successful operation
      summary: Create an action batch
      tags:
        - Action batches
  "/organizations/{organizationId}/actionBatches/{actionBatchId}":
    delete:
      description: Delete an action batch
      operationId: deleteOrganizationActionBatch
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: actionBatchId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Delete an action batch
      tags:
        - Action batches
    put:
      description: Update an action batch
      operationId: updateOrganizationActionBatch
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: actionBatchId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                confirmed: true
                synchronous: false
              properties:
                confirmed:
                  description: A boolean representing whether or not the batch has been confirmed. This property cannot be unset once it is true.
                  type: boolean
                synchronous:
                  description: Set to true to force the batch to run synchronous. There can be at most 20 actions in synchronous batch.
                  type: boolean
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    actions:
                      - body:
                          name: Group 1
                        operation: create
                        resource: /networks/L_XXXXX/groupPolicies
                    confirmed: true
                    id: "123"
                    organizationId: "2930418"
                    status:
                      completed: false
                      createdResources: []
                      errors: []
                      failed: false
                    synchronous: false
              schema:
                type: object
          description: Successful operation
      summary: Update an action batch
      tags:
        - Action batches
  "/organizations/{organizationId}/admins":
    get:
      description: List the dashboard administrators in this organization
      operationId: getOrganizationAdmins
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - accountStatus: ok
                      authenticationMethod: Email
                      email: miles@meraki.com
                      hasApiKey: true
                      id: "212406"
                      lastActive: 1526087474
                      name: Miles Meraki
                      networks:
                        - access: full
                          id: N_24329156
                      orgAccess: none
                      tags:
                        - access: read-only
                          tag: west
                      twoFactorAuthEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the dashboard administrators in this organization
      tags:
        - Admins
    post:
      description: Create a new dashboard administrator
      operationId: createOrganizationAdmin
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                email: miles@meraki.com
                name: Miles Meraki
                orgAccess: none
                tags:
                  - access: read-only
                    tag: west
              properties:
                authenticationMethod:
                  description: The method of authentication the user will use to sign in to the Meraki dashboard. Can be one of 'Email' or 'Cisco SecureX Sign-On'. The default is Email authentication
                  enum:
                    - Cisco SecureX Sign-On
                    - Email
                  type: string
                email:
                  description: The email of the dashboard administrator. This attribute can not be updated.
                  type: string
                name:
                  description: The name of the dashboard administrator
                  type: string
                networks:
                  description: The list of networks that the dashboard administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the dashboard administrator on the network
                        type: string
                      id:
                        description: The network ID
                        type: string
                    required:
                      - id
                      - access
                    type: object
                  type: array
                orgAccess:
                  description: The privilege of the dashboard administrator on the organization. Can be one of 'full', 'read-only', 'enterprise' or 'none'
                  enum:
                    - enterprise
                    - full
                    - none
                    - read-only
                  type: string
                tags:
                  description: The list of tags that the dashboard administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the dashboard administrator on the tag
                        type: string
                      tag:
                        description: The name of the tag
                        type: string
                    required:
                      - tag
                      - access
                    type: object
                  type: array
              required:
                - email
                - name
                - orgAccess
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    accountStatus: ok
                    authenticationMethod: Email
                    email: miles@meraki.com
                    hasApiKey: true
                    id: "212406"
                    lastActive: 1526087474
                    name: Miles Meraki
                    networks:
                      - access: full
                        id: N_24329156
                    orgAccess: none
                    tags:
                      - access: read-only
                        tag: west
                    twoFactorAuthEnabled: false
              schema:
                type: object
          description: Successful operation
      summary: Create a new dashboard administrator
      tags:
        - Admins
  "/organizations/{organizationId}/admins/{adminId}":
    delete:
      description: Revoke all access for a dashboard administrator within this organization
      operationId: deleteOrganizationAdmin
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: adminId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Revoke all access for a dashboard administrator within this organization
      tags:
        - Admins
    put:
      description: Update an administrator
      operationId: updateOrganizationAdmin
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: adminId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: Miles Meraki
                orgAccess: none
                tags:
                  - access: read-only
                    tag: west
              properties:
                name:
                  description: The name of the dashboard administrator
                  type: string
                networks:
                  description: The list of networks that the dashboard administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the dashboard administrator on the network
                        type: string
                      id:
                        description: The network ID
                        type: string
                    required:
                      - id
                      - access
                    type: object
                  type: array
                orgAccess:
                  description: The privilege of the dashboard administrator on the organization. Can be one of 'full', 'read-only', 'enterprise' or 'none'
                  enum:
                    - enterprise
                    - full
                    - none
                    - read-only
                  type: string
                tags:
                  description: The list of tags that the dashboard administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the dashboard administrator on the tag
                        type: string
                      tag:
                        description: The name of the tag
                        type: string
                    required:
                      - tag
                      - access
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    accountStatus: ok
                    authenticationMethod: Email
                    email: miles@meraki.com
                    hasApiKey: true
                    id: "212406"
                    lastActive: 1526087474
                    name: Miles Meraki
                    networks:
                      - access: full
                        id: N_24329156
                    orgAccess: none
                    tags:
                      - access: read-only
                        tag: west
                    twoFactorAuthEnabled: false
              schema:
                type: object
          description: Successful operation
      summary: Update an administrator
      tags:
        - Admins
  "/organizations/{organizationId}/apiRequests":
    get:
      description: List the API requests made by an organization
      operationId: getOrganizationApiRequests
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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 31 days.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 50.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
        - description: Filter the results by the ID of the admin who made the API requests
          in: query
          name: adminId
          schema:
            type: string
        - description: Filter the results by the path of the API requests
          in: query
          name: path
          schema:
            type: string
        - description: Filter the results by the method of the API requests (must be 'GET', 'PUT', 'POST' or 'DELETE')
          in: query
          name: method
          schema:
            type: string
        - description: Filter the results by the response code of the API requests
          in: query
          name: responseCode
          schema:
            type: integer
        - description: Filter the results by the IP address of the originating API request
          in: query
          name: sourceIp
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - adminId: "212406"
                      host: api.meraki.com
                      method: GET
                      path: /api/v0/organizations/33349/apiRequests
                      queryString: timespan=604800
                      responseCode: 200
                      sourceIp: 123.123.123.1
                      ts: 2019-02-20T17:31:23Z
                      userAgent: PostmanRuntime/7.6.0
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the API requests made by an organization
      tags:
        - API usage
  "/organizations/{organizationId}/apiRequests/overview":
    get:
      description: Return an aggregated overview of API requests data
      operationId: getOrganizationApiRequestsOverview
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 31 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 31 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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 31 days.
          in: query
          name: timespan
          schema:
            format: float
            type: number
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    responseCodeCounts:
                      "200": 50000
                      "201": 4000
                      "204": 1000
                      "400": 3500
                      "404": 1500
                      "429": 10000
              schema:
                type: object
          description: Successful operation
      summary: Return an aggregated overview of API requests data
      tags:
        - API usage
  "/organizations/{organizationId}/claim":
    post:
      description: Claim a list of devices, licenses, and/or orders into an organization. When claiming by order, all devices and licenses in the order will be claimed; licenses will be added to the organization and devices will be placed in the organization's inventory.
      operationId: claimIntoOrganization
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                licenses:
                  - key: Z2XXXXXXXXXX
                    mode: addDevices
                orders:
                  - 4CXXXXXXX
                serials:
                  - Q234-ABCD-5678
              properties:
                licenses:
                  description: The licenses that should be claimed
                  items:
                    properties:
                      key:
                        description: The key of the license
                        type: string
                      mode:
                        description: Either 'renew' or 'addDevices'. 'addDevices' will increase the license limit, while 'renew' will extend the amount of time until expiration. Defaults to 'addDevices'. All licenses must be claimed with the same mode, and at most one renewal can be claimed at a time. This parameter is legacy and does not apply to organizations with per-device licensing enabled.
                        enum:
                          - addDevices
                          - renew
                        type: string
                    required:
                      - key
                    type: object
                  type: array
                orders:
                  description: The numbers of the orders that should be claimed
                  items:
                    type: string
                  type: array
                serials:
                  description: The serials of the devices that should be claimed
                  items:
                    type: string
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    licenses:
                      - key: Z2XXXXXXXXXX
                        mode: addDevices
                    orders:
                      - 4CXXXXXXX
                    serials:
                      - Q234-ABCD-5678
              schema:
                type: object
          description: Successful operation
      summary: Claim a list of devices, licenses, and/or orders into an organization
      tags:
        - Organizations
  "/organizations/{organizationId}/clone":
    post:
      description: Create a new organization by cloning the addressed organization
      operationId: cloneOrganization
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: My organization
              properties:
                name:
                  description: The name of the new organization
                  type: string
              required:
                - name
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "2930418"
                    name: My organization
                    url: https://dashboard.meraki.com/o/VjjsAd/manage/organization/overview
              schema:
                type: object
          description: Successful operation
      summary: Create a new organization by cloning the addressed organization
      tags:
        - Organizations
  "/organizations/{organizationId}/configTemplates":
    get:
      description: List the configuration templates for this organization
      operationId: getOrganizationConfigTemplates
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: N_24329156
                      name: My config template
                      productTypes:
                        - appliance
                        - switch
                        - wireless
                      timeZone: America/Los_Angeles
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the configuration templates for this organization
      tags:
        - Config templates
  "/organizations/{organizationId}/configTemplates/{configTemplateId}":
    delete:
      description: Remove a configuration template
      operationId: deleteOrganizationConfigTemplate
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: configTemplateId
          required: true
          schema:
            type: string
      responses:
        "204":
          description: Successful operation
      summary: Remove a configuration template
      tags:
        - Config templates
  "/organizations/{organizationId}/configTemplates/{configTemplateId}/switchProfiles":
    get:
      description: List the switch profiles for your switch template configuration
      operationId: getOrganizationConfigTemplateSwitchProfiles
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: configTemplateId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - model: MS450-24
                      name: A Simple Switch Profile
                      switchProfileId: "1234"
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the switch profiles for your switch template configuration
      tags:
        - Switch profiles
  "/organizations/{organizationId}/configurationChanges":
    get:
      description: View the Change Log for your organization
      operationId: getOrganizationConfigurationChanges
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 365 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 365 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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 365 days.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 3 - 5000. Default is 5000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
        - description: Filters on the given network
          in: query
          name: networkId
          schema:
            type: string
        - description: Filters on the given Admin
          in: query
          name: adminId
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - adminEmail: miles@meraki.com
                      adminId: "212406"
                      adminName: Miles Meraki
                      label: PUT /api/v1/organizations/2930418
                      newValue: '{"id":"2930418","name":"My organization changed","url":"https://dashboard.meraki.com/o/VjjsAd/manage/organization/overview"}'
                      oldValue: '{"id":"2930418","name":"My organization","url":"https://dashboard.meraki.com/o/VjjsAd/manage/organization/overview"}'
                      page: via API
                      ts: 2018-02-11T00:00:00.090210Z
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: View the Change Log for your organization
      tags:
        - Change log
  "/organizations/{organizationId}/deviceStatuses":
    get:
      description: List the status of every Meraki device in the organization
      operationId: getOrganizationDeviceStatuses
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - lanIp: 1.2.3.4
                      mac: 00:11:22:33:44:55
                      name: My AP
                      networkId: N_24329156
                      publicIp: 123.123.123.1
                      serial: Q234-ABCD-5678
                      status: online
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the status of every Meraki device in the organization
      tags:
        - Organizations
  "/organizations/{organizationId}/devices":
    get:
      description: List the devices in an organization
      operationId: getOrganizationDevices
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
        - description: Filter results by whether or not the device's configuration has been updated after the given timestamp
          in: query
          name: configurationUpdatedAfter
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - address: 1600 Pennsylvania Ave
                      firmware: wireless-25-14
                      lanIp: 1.2.3.4
                      lat: 37.4180951010362
                      lng: -122.098531723022
                      mac: 00:11:22:33:44:55
                      model: MR34
                      name: My AP
                      networkId: N_24329156
                      notes: My AP's note
                      serial: Q234-ABCD-5678
                      tags: " recently-added "
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the devices in an organization
      tags:
        - Devices
  "/organizations/{organizationId}/inventory":
    get:
      description: Return the inventory for an organization
      operationId: getOrganizationInventory
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: When this parameter is true, each entity in the response will include the license expiration date of the device (if any). Only applies to organizations that are on the per-device licensing model. Defaults to false.
          in: query
          name: includeLicenseInfo
          schema:
            type: boolean
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - claimedAt: 1518365681
                      mac: 00:11:22:33:44:55
                      model: MR34
                      name: My AP
                      networkId: N_24329156
                      publicIp: 123.123.123.1
                      serial: Q234-ABCD-5678
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the inventory for an organization
      tags:
        - Organizations
  "/organizations/{organizationId}/licenseState":
    get:
      description: Return an overview of the license state for an organization
      operationId: getOrganizationLicenseState
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    expirationDate: Feb 8, 2020 UTC
                    licensedDeviceCounts:
                      MS: 100
                    status: OK
              schema:
                type: object
          description: Successful operation
      summary: Return an overview of the license state for an organization
      tags:
        - Licenses
  "/organizations/{organizationId}/licenses":
    get:
      description: List the licenses for an organization
      operationId: getOrganizationLicenses
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 1000.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
        - description: Filter the licenses to those assigned to a particular device
          in: query
          name: deviceSerial
          schema:
            type: string
        - description: Filter the licenses to those assigned in a particular network
          in: query
          name: networkId
          schema:
            type: string
        - description: Filter the licenses to those in a particular state. Can be one of 'active', 'expired', 'expiring', 'recentlyQueued', 'unused' or 'unusedActive'
          in: query
          name: state
          schema:
            enum:
              - active
              - expired
              - expiring
              - recentlyQueued
              - unused
              - unusedActive
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - activationDate: 2019-09-01T15:01:46Z
                      claimDate: 2019-08-29T12:40:10Z
                      deviceSerial: Q234-ABCD-5678
                      durationInDays: 365
                      expirationDate: 2020-10-30T15:01:46Z
                      headLicenseId: "1234"
                      id: "1234"
                      licenseKey: Z21234567890
                      licenseType: MX64-ENT
                      networkId: N_24329156
                      orderNumber: 4C1234567
                      permanentlyQueuedLicenses:
                        - durationInDays: 60
                          id: "5678"
                          licenseKey: Z21234567890
                          licenseType: MX64-ENT
                          orderNumber: 4C1234567
                      seatCount: null
                      state: active
                      totalDurationInDays: 425
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the licenses for an organization
      tags:
        - Licenses
  "/organizations/{organizationId}/licenses/assignSeats":
    post:
      description: Assign SM seats to a network. This will increase the managed SM device limit of the network
      operationId: assignOrganizationLicensesSeats
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                licenseId: "1234"
                networkId: N_24329156
                seatCount: 20
              properties:
                licenseId:
                  description: The ID of the SM license to assign seats from
                  type: string
                networkId:
                  description: The ID of the SM network to assign the seats to
                  type: string
                seatCount:
                  description: The number of seats to assign to the SM network. Must be less than or equal to the total number of seats of the license
                  type: integer
              required:
                - licenseId
                - networkId
                - seatCount
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    resultingLicenses:
                      - activationDate: 2019-09-01T15:01:46Z
                        claimDate: 2019-08-29T12:40:10Z
                        deviceSerial: null
                        durationInDays: 365
                        expirationDate: 2020-08-31T15:01:46Z
                        headLicenseId: "1234"
                        id: "1234"
                        licenseKey: Z21234567890
                        licenseType: SME
                        networkId: N_24329156
                        orderNumber: 4C1234567
                        permanentlyQueuedLicenses: []
                        seatCount: 25
                        state: active
                        totalDurationInDays: 365
              schema:
                type: object
          description: Successful operation
      summary: Assign SM seats to a network
      tags:
        - Licenses
  "/organizations/{organizationId}/licenses/moveSeats":
    post:
      description: Move SM seats to another organization
      operationId: moveOrganizationLicensesSeats
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                destOrganizationId: "2930418"
                licenseId: "1234"
                seatCount: 20
              properties:
                destOrganizationId:
                  description: The ID of the organization to move the SM seats to
                  type: string
                licenseId:
                  description: The ID of the SM license to move the seats from
                  type: string
                seatCount:
                  description: The number of seats to move to the new organization. Must be less than or equal to the total number of seats of the license
                  type: integer
              required:
                - destOrganizationId
                - licenseId
                - seatCount
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    destOrganizationId: "2930418"
                    licenseId: "1234"
                    seatCount: 20
              schema:
                type: object
          description: Successful operation
      summary: Move SM seats to another organization
      tags:
        - Licenses
  "/organizations/{organizationId}/licenses/renewSeats":
    post:
      description: Renew SM seats of a license. This will extend the license expiration date of managed SM devices covered by this license
      operationId: renewOrganizationLicensesSeats
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                licenseIdToRenew: "123"
                unusedLicenseId: "1234"
              properties:
                licenseIdToRenew:
                  description: The ID of the SM license to renew. This license must already be assigned to an SM network
                  type: string
                unusedLicenseId:
                  description: The SM license to use to renew the seats on 'licenseIdToRenew'. This license must have at least as many seats available as there are seats on 'licenseIdToRenew'
                  type: string
              required:
                - licenseIdToRenew
                - unusedLicenseId
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    resultingLicenses:
                      - activationDate: 2019-09-01T15:01:46Z
                        claimDate: 2019-08-29T12:40:10Z
                        deviceSerial: null
                        durationInDays: 365
                        expirationDate: 2020-08-31T15:01:46Z
                        headLicenseId: "1234"
                        id: "1234"
                        licenseKey: Z21234567890
                        licenseType: SME
                        networkId: N_24329156
                        orderNumber: 4C1234567
                        permanentlyQueuedLicenses: []
                        seatCount: 25
                        state: active
                        totalDurationInDays: 365
              schema:
                type: object
          description: Successful operation
      summary: Renew SM seats of a license
      tags:
        - Licenses
  "/organizations/{organizationId}/licenses/{licenseId}":
    get:
      description: Display a license
      operationId: getOrganizationLicense
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: licenseId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    activationDate: 2019-09-01T15:01:46Z
                    claimDate: 2019-08-29T12:40:10Z
                    deviceSerial: Q234-ABCD-5678
                    durationInDays: 365
                    expirationDate: 2020-10-30T15:01:46Z
                    headLicenseId: "1234"
                    id: "1234"
                    licenseKey: Z21234567890
                    licenseType: MX64-ENT
                    networkId: N_24329156
                    orderNumber: 4C1234567
                    permanentlyQueuedLicenses:
                      - durationInDays: 60
                        id: "5678"
                        licenseKey: Z21234567890
                        licenseType: MX64-ENT
                        orderNumber: 4C1234567
                    seatCount: null
                    state: active
                    totalDurationInDays: 425
              schema:
                type: object
          description: Successful operation
      summary: Display a license
      tags:
        - Licenses
  "/organizations/{organizationId}/networks":
    get:
      description: List the networks in an organization
      operationId: getOrganizationNetworks
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: An optional parameter that is the ID of a config template. Will return all networks bound to that template.
          in: query
          name: configTemplateId
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - disableMyMerakiCom: false
                      enrollmentString: my-enrollment-string
                      id: N_24329156
                      name: Main Office
                      organizationId: "2930418"
                      productTypes:
                        - appliance
                        - switch
                        - wireless
                      tags: " tag1 tag2 "
                      timeZone: America/Los_Angeles
                      type: combined
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the networks in an organization
      tags:
        - Networks
    post:
      description: Create a network
      operationId: createOrganizationNetwork
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                disableMyMerakiCom: false
                name: Main Office
                tags: " tag1 tag2 "
                timeZone: America/Los_Angeles
                type: appliance switch camera
              properties:
                copyFromNetworkId:
                  description: The ID of the network to copy configuration from. Other provided parameters will override the copied configuration, except type which must match this network's type exactly.
                  type: string
                disableMyMerakiCom:
                  description: Disables the local device status pages (<a target='_blank' href='http://my.meraki.com/'>my.meraki.com, </a><a target='_blank' href='http://ap.meraki.com/'>ap.meraki.com, </a><a target='_blank' href='http://switch.meraki.com/'>switch.meraki.com, </a><a target='_blank' href='http://wired.meraki.com/'>wired.meraki.com</a>). Optional (defaults to false)
                  type: boolean
                disableRemoteStatusPage:
                  description: Disables access to the device status page (<a target='_blank'>http://[device's LAN IP])</a>. Optional. Can only be set if disableMyMerakiCom is set to false
                  type: boolean
                name:
                  description: The name of the new network
                  type: string
                tags:
                  description: A space-separated list of tags to be applied to the network
                  type: string
                timeZone:
                  description: The timezone of the network. For a list of allowed timezones, please see the 'TZ' column in the table in <a target='_blank' href='https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'>this article.</a>
                  type: string
                type:
                  description: The type of the new network. Valid types are wireless, appliance, switch, systemsManager, camera, cellularGateway, environmental, or a space-separated list of those for a combined network.
                  type: string
              required:
                - name
                - type
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    disableMyMerakiCom: false
                    enrollmentString: my-enrollment-string
                    id: N_24329156
                    name: Main Office
                    organizationId: "2930418"
                    productTypes:
                      - appliance
                      - switch
                      - wireless
                    tags: " tag1 tag2 "
                    timeZone: America/Los_Angeles
                    type: combined
              schema:
                type: object
          description: Successful operation
      summary: Create a network
      tags:
        - Networks
  "/organizations/{organizationId}/networks/combine":
    post:
      description: Combine multiple networks into a single network
      operationId: combineOrganizationNetworks
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                name: Long Island Office
                networkIds:
                  - N_1234
                  - N_5678
              properties:
                enrollmentString:
                  description: A unique identifier which can be used for device enrollment or easy access through the Meraki SM Registration page or the Self Service Portal. Please note that changing this field may cause existing bookmarks to break. All networks that are part of this combined network will have their enrollment string appended by '-network_type'. If left empty, all exisitng enrollment strings will be deleted.
                  type: string
                name:
                  description: The name of the combined network
                  type: string
                networkIds:
                  description: A list of the network IDs that will be combined. If an ID of a combined network is included in this list, the other networks in the list will be grouped into that network
                  items:
                    type: string
                  type: array
              required:
                - name
                - networkIds
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    resultingNetwork:
                      disableMyMerakiCom: false
                      enrollmentString: my-enrollment-string
                      id: N_24329156
                      name: Main Office
                      organizationId: "2930418"
                      productTypes:
                        - appliance
                        - switch
                        - wireless
                      tags: " tag1 tag2 "
                      timeZone: America/Los_Angeles
                      type: combined
              schema:
                type: object
          description: Successful operation
      summary: Combine multiple networks into a single network
      tags:
        - Networks
  "/organizations/{organizationId}/openapiSpec":
    get:
      description: Return the OpenAPI 2.0 Specification of the organization's API documentation in JSON
      operationId: getOrganizationOpenapiSpec
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    info:
                      description: This collection of API calls provides an easy way to interact with a Cisco Meraki network
                      title: Meraki Dashboard API
                      version: v0
                    paths:
                      /organizations:
                        get:
                          description: List the organizations that the user has privileges on
                          operationId: getOrganizations
                          responses:
                            "200":
                              description: Successful operation
                              examples:
                                application/json:
                                  - id: "2930418"
                                    name: My organization
                    swagger: "2.0"
              schema:
                type: object
          description: Successful operation
      summary: Return the OpenAPI 2.0 Specification of the organization's API documentation in JSON
      tags:
        - OpenAPI Spec
  "/organizations/{organizationId}/samlRoles":
    get:
      description: List the SAML roles for this organization
      operationId: getOrganizationSamlRoles
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - id: "1284392014819"
                      networks:
                        - access: full
                          id: N_24329156
                      orgAccess: none
                      role: myrole
                      tags:
                        - access: read-only
                          tag: west
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: List the SAML roles for this organization
      tags:
        - SAML roles
    post:
      description: Create a SAML role
      operationId: createOrganizationSamlRole
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                networks:
                  - access: full
                    id: N_24329156
                orgAccess: none
                role: myrole
                tags:
                  - access: read-only
                    tag: west
              properties:
                networks:
                  description: The list of networks that the SAML administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the SAML administrator on the network
                        type: string
                      id:
                        description: The network ID
                        type: string
                    required:
                      - id
                      - access
                    type: object
                  type: array
                orgAccess:
                  description: The privilege of the SAML administrator on the organization
                  type: string
                role:
                  description: The role of the SAML administrator
                  type: string
                tags:
                  description: The list of tags that the SAML administrator has privleges on
                  items:
                    properties:
                      access:
                        description: The privilege of the SAML administrator on the tag
                        type: string
                      tag:
                        description: The name of the tag
                        type: string
                    required:
                      - tag
                      - access
                    type: object
                  type: array
              required:
                - role
                - orgAccess
              type: object
        required: true
      responses:
        "201":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "1284392014819"
                    networks:
                      - access: full
                        id: N_24329156
                    orgAccess: none
                    role: myrole
                    tags:
                      - access: read-only
                        tag: west
              schema:
                type: object
          description: Successful operation
      summary: Create a SAML role
      tags:
        - SAML roles
  "/organizations/{organizationId}/samlRoles/{samlRoleId}":
    get:
      description: Return a SAML role
      operationId: getOrganizationSamlRole
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: samlRoleId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "1284392014819"
                    networks:
                      - access: full
                        id: N_24329156
                    orgAccess: none
                    role: myrole
                    tags:
                      - access: read-only
                        tag: west
              schema:
                type: object
          description: Successful operation
      summary: Return a SAML role
      tags:
        - SAML roles
    put:
      description: Update a SAML role
      operationId: updateOrganizationSamlRole
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - in: path
          name: samlRoleId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                networks:
                  - access: full
                    id: N_24329156
                orgAccess: none
                tags:
                  - access: read-only
                    tag: west
              properties:
                networks:
                  description: The list of networks that the SAML administrator has privileges on
                  items:
                    properties:
                      access:
                        description: The privilege of the SAML administrator on the network
                        type: string
                      id:
                        description: The network ID
                        type: string
                    required:
                      - id
                      - access
                    type: object
                  type: array
                orgAccess:
                  description: The privilege of the SAML administrator on the organization
                  type: string
                role:
                  description: The role of the SAML administrator
                  type: string
                tags:
                  description: The list of tags that the SAML administrator has privleges on
                  items:
                    properties:
                      access:
                        description: The privilege of the SAML administrator on the tag
                        type: string
                      tag:
                        description: The name of the tag
                        type: string
                    required:
                      - tag
                      - access
                    type: object
                  type: array
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    id: "1284392014819"
                    networks:
                      - access: full
                        id: N_24329156
                    orgAccess: none
                    role: myrole
                    tags:
                      - access: read-only
                        tag: west
              schema:
                type: object
          description: Successful operation
      summary: Update a SAML role
      tags:
        - SAML roles
  "/organizations/{organizationId}/security/intrusionSettings":
    get:
      description: Returns all supported intrusion settings for an organization
      operationId: getOrganizationSecurityIntrusionSettings
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    whitelistedRules:
                      - message: SQL sa login failed
                        ruleId: meraki:intrusion/snort/GID/01/SID/688
                      - message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
                        ruleId: meraki:intrusion/snort/GID/01/SID/5805
              schema:
                type: object
          description: Successful operation
      summary: Returns all supported intrusion settings for an organization
      tags:
        - Intrusion settings
    put:
      description: Sets supported intrusion settings for an organization
      operationId: updateOrganizationSecurityIntrusionSettings
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                whitelistedRules:
                  - message: SQL sa login failed
                    ruleId: meraki:intrusion/snort/GID/01/SID/688
                  - message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
                    ruleId: meraki:intrusion/snort/GID/01/SID/5805
              properties:
                whitelistedRules:
                  description: Sets a list of specific SNORT signatures to allow
                  items:
                    properties:
                      message:
                        description: Message is optional and is ignored on a PUT call. It is allowed in order for PUT to be compatible with GET
                        type: string
                      ruleId:
                        description: A rule identifier of the format meraki:intrusion/snort/GID/<gid>/SID/<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
                        type: string
                    required:
                      - ruleId
                    type: object
                  type: array
              required:
                - whitelistedRules
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    whitelistedRules:
                      - message: SQL sa login failed
                        ruleId: meraki:intrusion/snort/GID/01/SID/688
                      - message: MALWARE-OTHER Trackware myway speedbar runtime detection - switch engines
                        ruleId: meraki:intrusion/snort/GID/01/SID/5805
              schema:
                type: object
          description: Successful operation
      summary: Sets supported intrusion settings for an organization
      tags:
        - Intrusion settings
  "/organizations/{organizationId}/securityEvents":
    get:
      description: List the security events (intrusion detection only) for an organization
      operationId: getOrganizationSecurityEvents
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - 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.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 365 days after t0.
          in: query
          name: t1
          schema:
            type: string
        - 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.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: The number of entries per page returned. Acceptable range is 3 - 1000. Default is 100.
          in: query
          name: perPage
          schema:
            type: integer
        - 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.
          in: query
          name: startingAfter
          schema:
            type: string
        - 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.
          in: query
          name: endingBefore
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - blocked: true
                      classification: "4"
                      clientMac: A1:B2:C3:D4:E5:F6
                      destIp: 10.20.30.40:80
                      deviceMac: 00:18:0a:01:02:03
                      message: SERVER-WEBAPP JBoss JMX console access attempt
                      priority: "2"
                      protocol: tcp/ip
                      ruleId: meraki:intrusion/snort/GID/1/SID/26267
                      sigSource: ""
                      signature: 1:21516:9
                      srcIp: 1.2.3.4:34195
                      ts: 1547683314.270398
                    - blocked: true
                      classification: "33"
                      clientMac: A1:B2:C3:D4:E5:F6
                      destIp: 10.20.30.40:80
                      deviceMac: 00:18:0a:01:02:03
                      message: POLICY-OTHER Adobe ColdFusion admin interface access attempt
                      priority: "1"
                      protocol: tcp/ip
                      ruleId: meraki:intrusion/snort/GID/1/SID/26267
                      sigSource: ""
                      signature: 1:25975:2
                      srcIp: 1.2.3.4:56023
                      ts: 1547683827.723265
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
          headers:
            Link:
              description: A comma-separated list of first, last, prev, and next relative links used for subsequent paginated requests.
              schema:
                type: string
      summary: List the security events (intrusion detection only) for an organization
      tags:
        - Security events
  "/organizations/{organizationId}/snmp":
    get:
      description: Return the SNMP settings for an organization
      operationId: getOrganizationSnmp
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    hostname: snmp.meraki.com
                    peerIps: 123.123.123.1
                    port: 443
                    v2cEnabled: false
                    v3AuthMode: SHA
                    v3Enabled: true
                    v3PrivMode: AES128
              schema:
                type: object
          description: Successful operation
      summary: Return the SNMP settings for an organization
      tags:
        - SNMP settings
  "/organizations/{organizationId}/thirdPartyVPNPeers":
    get:
      description: Return the third party VPN peers for an organization
      operationId: getOrganizationThirdPartyVPNPeers
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - ikeVersion: "2"
                      ipsecPolicies:
                        childAuthAlgo:
                          - sha1
                        childCipherAlgo:
                          - aes128
                        childLifetime: 28800
                        childPfsGroup:
                          - disabled
                        ikeAuthAlgo:
                          - sha1
                        ikeCipherAlgo:
                          - tripledes
                        ikeDiffieHellmanGroup:
                          - group2
                        ikeLifetime: 28800
                        ikePrfAlgo:
                          - prfsha1
                      name: My peer 1
                      networkTags:
                        - all
                      privateSubnets:
                        - 192.168.1.0/24
                        - 192.168.128.0/24
                      publicIp: 123.123.123.1
                      secret: asdf1234
                    - ikeVersion: "1"
                      ipsecPoliciesPreset: default
                      name: My peer 2
                      networkTags:
                        - none
                      privateSubnets:
                        - 192.168.2.0/24
                        - 192.168.129.0/24
                      publicIp: 123.123.123.2
                      remoteId: miles@meraki.com
                      secret: asdf56785678567856785678
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the third party VPN peers for an organization
      tags:
        - Organizations
    put:
      description: Update the third party VPN peers for an organization
      operationId: updateOrganizationThirdPartyVPNPeers
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                peers:
                  - ikeVersion: "2"
                    ipsecPolicies:
                      childAuthAlgo:
                        - sha1
                      childCipherAlgo:
                        - aes128
                      childLifetime: 28800
                      childPfsGroup:
                        - disabled
                      ikeAuthAlgo:
                        - sha1
                      ikeCipherAlgo:
                        - tripledes
                      ikeDiffieHellmanGroup:
                        - group2
                      ikeLifetime: 28800
                      ikePrfAlgo:
                        - prfsha1
                    name: My peer 1
                    networkTags:
                      - all
                    privateSubnets:
                      - 192.168.1.0/24
                      - 192.168.128.0/24
                    publicIp: 123.123.123.1
                    secret: asdf1234
                  - ikeVersion: "1"
                    ipsecPoliciesPreset: default
                    name: My peer 2
                    networkTags:
                      - none
                    privateSubnets:
                      - 192.168.2.0/24
                      - 192.168.129.0/24
                    publicIp: 123.123.123.2
                    remoteId: miles@meraki.com
                    secret: asdf56785678567856785678
              properties:
                peers:
                  description: The list of VPN peers
                  items:
                    properties:
                      ikeVersion:
                        default: "1"
                        description: "[optional] The IKE version to be used for the IPsec VPN peer configuration. Defaults to '1' when omitted."
                        enum:
                          - "1"
                          - "2"
                        type: string
                      ipsecPolicies:
                        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.
                        properties:
                          childAuthAlgo:
                            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'"
                            items:
                              type: string
                            type: array
                          childCipherAlgo:
                            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'"
                            items:
                              type: string
                            type: array
                          childLifetime:
                            description: The lifetime of the Phase 2 SA in seconds.
                            type: integer
                          childPfsGroup:
                            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'"
                            items:
                              type: string
                            type: array
                          ikeAuthAlgo:
                            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'"
                            items:
                              type: string
                            type: array
                          ikeCipherAlgo:
                            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'"
                            items:
                              type: string
                            type: array
                          ikeDiffieHellmanGroup:
                            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'"
                            items:
                              type: string
                            type: array
                          ikeLifetime:
                            description: The lifetime of the Phase 1 SA in seconds.
                            type: integer
                          ikePrfAlgo:
                            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."
                            items:
                              enum:
                                - default
                                - prfmd5
                                - prfsha1
                                - prfsha256
                              type: string
                            type: array
                        type: object
                      ipsecPoliciesPreset:
                        description: "One of the following available presets: 'default', 'aws', 'azure'. If this is provided, the 'ipsecPolicies' parameter is ignored."
                        type: string
                      name:
                        description: The name of the VPN peer
                        type: string
                      networkTags:
                        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'].
                        items:
                          type: string
                        type: array
                      privateSubnets:
                        description: The list of the private subnets of the VPN peer
                        items:
                          type: string
                        type: array
                      publicIp:
                        description: The public IP of the VPN peer
                        type: string
                      remoteId:
                        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."
                        type: string
                      secret:
                        description: The shared secret with the VPN peer
                        type: string
                    required:
                      - name
                      - publicIp
                      - privateSubnets
                      - secret
                    type: object
                  type: array
              required:
                - peers
              type: object
        required: true
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - ikeVersion: "2"
                      ipsecPolicies:
                        childAuthAlgo:
                          - sha1
                        childCipherAlgo:
                          - aes128
                        childLifetime: 28800
                        childPfsGroup:
                          - disabled
                        ikeAuthAlgo:
                          - sha1
                        ikeCipherAlgo:
                          - tripledes
                        ikeDiffieHellmanGroup:
                          - group2
                        ikeLifetime: 28800
                        ikePrfAlgo:
                          - prfsha1
                      name: My peer 1
                      networkTags:
                        - all
                      privateSubnets:
                        - 192.168.1.0/24
                        - 192.168.128.0/24
                      publicIp: 123.123.123.1
                      secret: asdf1234
                    - ikeVersion: "1"
                      ipsecPoliciesPreset: default
                      name: My peer 2
                      networkTags:
                        - none
                      privateSubnets:
                        - 192.168.2.0/24
                        - 192.168.129.0/24
                      publicIp: 123.123.123.2
                      remoteId: miles@meraki.com
                      secret: asdf56785678567856785678
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the third party VPN peers for an organization
      tags:
        - Organizations
  "/organizations/{organizationId}/uplinksLossAndLatency":
    get:
      description: Return the uplink loss and latency for every MX in the organization from at latest 2 minutes ago
      operationId: getOrganizationUplinksLossAndLatency
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
        - description: The beginning of the timespan for the data. The maximum lookback period is 60 days from today.
          in: query
          name: t0
          schema:
            type: string
        - description: The end of the timespan for the data. t1 can be a maximum of 5 minutes after t0. The latest possible time that t1 can be is 2 minutes into the past.
          in: query
          name: t1
          schema:
            type: string
        - 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 5 minutes. The default is 5 minutes.
          in: query
          name: timespan
          schema:
            format: float
            type: number
        - description: Optional filter for a specific WAN uplink. Valid uplinks are wan1, wan2, cellular. Default will return all uplinks.
          in: query
          name: uplink
          schema:
            enum:
              - cellular
              - wan1
              - wan2
            type: string
        - description: Optional filter for a specific destination IP. Default will return all destination IPs.
          in: query
          name: ip
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - ip: 8.8.8.8
                      networkId: N_12345
                      serial: Q2AB-CDEF-GHIJ
                      timeSeries:
                        - latencyMs: 194.9
                          lossPercent: 5.3
                          ts: 2019-01-31T18:46:13Z
                      uplink: wan1
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the uplink loss and latency for every MX in the organization from at latest 2 minutes ago
      tags:
        - Organizations
  "/organizations/{organizationId}/vpnFirewallRules":
    get:
      description: Return the firewall rules for an organization's site-to-site VPN
      operationId: getOrganizationVpnFirewallRules
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Return the firewall rules for an organization's site-to-site VPN
      tags:
        - MX VPN firewall
    put:
      description: Update the firewall rules of an organization's site-to-site VPN
      operationId: updateOrganizationVpnFirewallRules
      parameters:
        - in: path
          name: organizationId
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              example:
                rules:
                  - comment: Allow TCP traffic to subnet with HTTP servers.
                    destCidr: 192.168.1.0/24
                    destPort: "443"
                    policy: allow
                    protocol: tcp
                    srcCidr: Any
                    srcPort: Any
                    syslogEnabled: false
              properties:
                rules:
                  description: An ordered array of the firewall rules (not including the default rule)
                  items:
                    properties:
                      comment:
                        description: Description of the rule (optional)
                        type: string
                      destCidr:
                        description: Comma-separated list of destination IP address(es) (in IP or CIDR notation) or 'any' (FQDN not supported)
                        type: string
                      destPort:
                        description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
                        type: string
                      policy:
                        description: "'allow' or 'deny' traffic specified by this rule"
                        enum:
                          - allow
                          - deny
                        type: string
                      protocol:
                        description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
                        enum:
                          - any
                          - icmp
                          - icmp6
                          - tcp
                          - udp
                        type: string
                      srcCidr:
                        description: Comma-separated list of source IP address(es) (in IP or CIDR notation), or 'any' (FQDN not supported)
                        type: string
                      srcPort:
                        description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
                        type: string
                      syslogEnabled:
                        description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
                        type: boolean
                    required:
                      - policy
                      - protocol
                      - srcCidr
                      - destCidr
                    type: object
                  type: array
                syslogDefaultRule:
                  description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
                  type: boolean
              type: object
      responses:
        "200":
          content:
            application/json:
              examples:
                response:
                  value:
                    - comment: Allow TCP traffic to subnet with HTTP servers.
                      destCidr: 192.168.1.0/24
                      destPort: "443"
                      policy: allow
                      protocol: tcp
                      srcCidr: Any
                      srcPort: Any
                      syslogEnabled: false
              schema:
                items:
                  type: object
                type: array
          description: Successful operation
      summary: Update the firewall rules of an organization's site-to-site VPN
      tags:
        - MX VPN firewall
components:
  requestBodies:
    createNetworkSmTargetGroupCreatenetworksmtargetgroup:
      content:
        application/json:
          schema:
            example:
              name: My target group
              scope: none
              tags: "[]"
              type: devices
            properties:
              name:
                description: The name of this target group
                type: string
              scope:
                description: The scope and tag options of the target group. Comma separated values beginning with one of withAny, withAll, withoutAny, withoutAll, all, none, followed by tags. Default to none if empty.
                type: string
            type: object
    updateNetworkApplianceFirewallInboundFirewallRulesUpdatenetworkappliancefirewallinboundfirewallrules:
      content:
        application/json:
          schema:
            example:
              rules:
                - comment: Allow TCP traffic to subnet with HTTP servers.
                  destCidr: 192.168.1.0/24
                  destPort: "443"
                  policy: allow
                  protocol: tcp
                  srcCidr: Any
                  srcPort: Any
                  syslogEnabled: false
            properties:
              rules:
                description: An ordered array of the firewall rules (not including the default rule)
                items:
                  properties:
                    comment:
                      description: Description of the rule (optional)
                      type: string
                    destCidr:
                      description: Comma-separated list of destination IP address(es) (in IP or CIDR notation), fully-qualified domain names (FQDN) or 'any'
                      type: string
                    destPort:
                      description: Comma-separated list of destination port(s) (integer in the range 1-65535), or 'any'
                      type: string
                    policy:
                      description: "'allow' or 'deny' traffic specified by this rule"
                      enum:
                        - allow
                        - deny
                      type: string
                    protocol:
                      description: The type of protocol (must be 'tcp', 'udp', 'icmp', 'icmp6' or 'any')
                      enum:
                        - any
                        - icmp
                        - icmp6
                        - tcp
                        - udp
                      type: string
                    srcCidr:
                      description: "Comma-separated list of source IP address(es) (in IP or CIDR notation), or 'any' (note: FQDN not supported for source addresses)"
                      type: string
                    srcPort:
                      description: Comma-separated list of source port(s) (integer in the range 1-65535), or 'any'
                      type: string
                    syslogEnabled:
                      description: Log this rule to syslog (true or false, boolean value) - only applicable if a syslog has been configured (optional)
                      type: boolean
                  required:
                    - policy
                    - protocol
                    - srcCidr
                    - destCidr
                  type: object
                type: array
              syslogDefaultRule:
                description: Log the special default rule (boolean value - enable only if you've configured a syslog server) (optional)
                type: boolean
            type: object
  securitySchemes:
    meraki_api_key:
      in: header
      name: X-Cisco-Meraki-API-Key
      type: apiKey
x-batchable-actions:
  - group: Bluetooth device setting
    operation: update
    resource: /devices/{serial}/wireless/bluetooth/settings
    summary: Update the bluetooth settings for a wireless device
  - group: Camera video settings
    operation: update
    resource: /devices/{serial}/camera/video/settings
    summary: Update video settings for the given camera
  - group: Cellular gateway device lan
    operation: update
    resource: /devices/{serial}/cellularGateway/settings
    summary: Update the LAN Settings for a single MG.
  - group: Cellular gateway port forwarding rules
    operation: update
    resource: /devices/{serial}/cellularGateway/settings/portForwardingRules
    summary: Updates the port forwarding rules for a single MG.
  - group: Device
    operation: claim
    resource: /networks/{networkId}/devices
    summary: "Claim devices into a network. (Note: for recently claimed devices, it may take a few minutes for API requests against that device to succeed)"
  - group: Device
    operation: remove
    resource: /networks/{networkId}/devices/{serial}
    summary: Remove a single device
  - group: Device
    operation: update
    resource: /networks/{networkId}/devices/{serial}
    summary: Update the attributes of a device
  - group: Floor plan
    operation: destroy
    resource: /networks/{networkId}/floorPlans/{floorPlanId}
    summary: Destroy a floor plan
  - group: Floor plan
    operation: update
    resource: /networks/{networkId}/floorPlans/{floorPlanId}
    summary: Update a floor plan's geolocation and other meta data
  - group: License
    operation: assignSeats
    resource: /organizations/{organizationId}/licenses
    summary: Assign SM seats to a network. This will increase the managed SM device limit of the network
  - group: License
    operation: moveSeats
    resource: /organizations/{organizationId}/licenses
    summary: Move SM seats to another organization
  - group: License
    operation: renewSeats
    resource: /organizations/{organizationId}/licenses
    summary: Renew SM seats of a license. This will extend the license expiration date of managed SM devices covered by this license
  - group: Link aggregation
    operation: create
    resource: /networks/{networkId}/switch/linkAggregations
    summary: Create a link aggregation group
  - group: Link aggregation
    operation: destroy
    resource: /networks/{networkId}/switch/linkAggregations/{linkAggregationId}
    summary: Split a link aggregation group into separate ports
  - group: Link aggregation
    operation: update
    resource: /networks/{networkId}/switch/linkAggregations/{linkAggregationId}
    summary: Update a link aggregation group
  - group: MX l7 firewall
    operation: update
    resource: /networks/{networkId}/l7FirewallRules
    summary: Update the MX L7 firewall rules for an MX network
  - group: MX port
    operation: update
    resource: /networks/{networkId}/appliancePorts/{appliancePortId}
    summary: Update the per-port VLAN settings for a single MX port.
  - group: MX uplink setting
    operation: update
    resource: /networks/{networkId}/uplinkSettings
    summary: Updates the uplink settings for your MX network.
  - group: Multicast
    operation: update
    resource: /networks/{networkId}/switch/settings/multicast
    summary: Update multicast settings for a network
  - group: Network
    operation: destroy
    resource: /networks/{networkId}
    summary: Delete a network
  - group: Network
    operation: split
    resource: /networks/{networkId}
    summary: Split a combined network into individual networks for each type of device
  - group: Network
    operation: update
    resource: /networks/{networkId}
    summary: Update a network
  - group: Network
    operation: combine
    resource: /organizations/{organizationId}/networks
    summary: Combine multiple networks into a single network
  - group: Network
    operation: create
    resource: /organizations/{organizationId}/networks
    summary: Create a network
  - group: Qos rule
    operation: create
    resource: /networks/{networkId}/switch/settings/qosRules
    summary: Add a quality of service rule
  - group: Qos rule
    operation: update_order
    resource: /networks/{networkId}/switch/settings/qosRules/order
    summary: Update the order in which the rules should be processed by the switch
  - group: Qos rule
    operation: destroy
    resource: /networks/{networkId}/switch/settings/qosRules/{qosRuleId}
    summary: Delete a quality of service rule
  - group: Qos rule
    operation: update
    resource: /networks/{networkId}/switch/settings/qosRules/{qosRuleId}
    summary: Update a quality of service rule
  - group: RF profile
    operation: create
    resource: /networks/{networkId}/wireless/rfProfiles
    summary: Creates new RF profile for this network
  - group: RF profile
    operation: destroy
    resource: /networks/{networkId}/wireless/rfProfiles/{rfProfileId}
    summary: Delete a RF Profile
  - group: RF profile
    operation: update
    resource: /networks/{networkId}/wireless/rfProfiles/{rfProfileId}
    summary: Updates specified RF profile for this network
  - group: Site to site vpn
    operation: update
    resource: /networks/{networkId}/siteToSiteVpn
    summary: Update the site-to-site VPN settings of a network. Only valid for MX networks in NAT mode.
  - group: Ssid
    operation: update
    resource: /networks/{networkId}/ssids/{number}
    summary: Update the attributes of an SSID
  - group: Storm control
    operation: update
    resource: /networks/{networkId}/switch/settings/stormControl
    summary: Update the storm control configuration for a switch network
  - group: Switch port
    operation: cycle
    resource: /devices/{serial}/switch/ports
    summary: Cycle a set of switch ports
  - group: Switch port schedule
    operation: update
    resource: /networks/{networkId}/switch/portSchedules/{portScheduleId}
    summary: Update a switch port schedule
  - group: VLAN
    operation: create
    resource: /networks/{networkId}/vlans
    summary: Add a VLAN
  - group: VLAN
    operation: destroy
    resource: /networks/{networkId}/vlans/{vlanId}
    summary: Delete a VLAN from a network
  - group: VLAN
    operation: update
    resource: /networks/{networkId}/vlans/{vlanId}
    summary: Update a VLAN
  - group: Warm spare
    operation: swap
    resource: /networks/{networkId}/swapWarmSpare
    summary: Swap MX primary and warm spare appliances
  - group: Warm spare
    operation: update
    resource: /networks/{networkId}/warmSpareSettings
    summary: Update MX warm spare settings
  - group: Wireless settings
    operation: update
    resource: /networks/{networkId}/wireless/settings
    summary: Update the wireless settings for a network
