openapi: 3.0.1
info:
contact:
email: tmunzer@juniper.net
name: Thomas Munzer
description: '> Version: **2403.1.0**
>
> Date: **March 29, 2024**
---
#### Available Documentation
* [Postman](https://documenter.getpostman.com/view/224925/SzYgQufe)
* [Open API](https://doc.mist-lab.fr/)
---
#### Useful links
* [Mist Homepage](https://www.mist.com)
* [Mist Documentation](https://www.mist.com/documentation)
* [Official API Documentation](https://api.mist.com/api/v1/docs/Home) (Mist account
required)
* [Mist Blog](https://www.mist.com/news/?md_post_type=post)
* [Mist Updates](https://www.mist.com/documentation/category/product-updates/)'
license:
name: MIT
url: https://raw.githubusercontent.com/tmunzer/Mist-OAS3.0/main/LICENSE
title: Mist API
version: 2403.1.0
x-logo:
altText: Juniper-MistAI
backgroundColor: '#FFFFFF'
url: https://www.mist.com/wp-content/uploads/logo.png
servers:
- description: Mist Global 01
url: https://api.mist.com
- description: Mist Global 02
url: https://api.gc1.mist.com
- description: Mist Global 03
url: https://api.ac2.mist.com
- description: Mist Global 04
url: https://api.gc2.mist.com
- description: Mist EMEA 01
url: https://api.eu.mist.com
- description: Mist EMEA 02
url: https://api.gc3.mist.com
- description: Mist APAC 01
url: https://api.ac5.mist.com
security:
- apiToken: []
- basicAuth: []
tags:
- name: Login
- description: A Mist account can be linked to OAuth2 providers:\n1. First, login
with your Mist account\n2. Obtain the Authorization URL for Linking 1. in JSON
response, more usable for developers. Simply don\'t specify the forward parameter
when obtaining the authorization URL 2. or as GET parameter, for UI where the
user flow can be continued. Specify the landing page/url of your choice 3. Obtain
the authorizaiton code by clicking / going through Authorization URL Link Mist
Account against OAuth2 Provider by using the authorization code
name: Login With OAuth2
- description: "In a typical enterprise, a separate group of people, Installers, are\
\ responsible for install new devices. May it be a new installation (e.g. new\
\ stores), a replacement installation (e.g. replacing Cisco APs with Mist APs),\
\ or addition (e.g. adding new APs for better coverage). Instead of granting them\
\ Admin/Write privilege, it's more desirable to grant them minimum privileges\
\ to do the initial provisioning so they cannot read sensible information (e.g.\
\ PSK of a WLAN), or change configs of running APs.\nAt a high level, Installer\
\ APs try to achieve the following:\n1. identifying a device by MAC (that\u2019\
s what they see)\n2. they can only touch configurations of the devices they\u2019\
re installing\n3. allow the following configurations: * name * site assignment\
\ * device profile assignment * map and location (x/y) assignment * claim (if\
\ not already in the inventory) * replace existing device with the device being\
\ installed\n\n* Grace Period *\nGrace period provides a dynamic way to limit\
\ what devices / sites installer can work on. Generally installers work on recent\
\ deployments - bringing up new sites, add newly claimed devices to new / existing\
\ sites. They make mistakes, too, and may need to further tweak some of the parameters.\
\ Default grace period is 7 days and can be set from 1 day to 365 days."
name: Installer
- name: Admins
- name: Mobile
- description: MSP (Managed Service Provider) contains multiple Organizations.
name: Msps
- name: Msps Admins
- name: Msps Inventory
- name: Msps Invites
- name: Msps Logo
- name: Msps Logs
- name: Msps Licenses
- name: Msps Marvis
- name: Msps Org Groups
- name: Msps Orgs
- name: Msps SLEs
- name: Msps SSO Roles
- name: Msps SSO
- name: Msps Stats
- name: Msps Tickets
- description: An organization usually represents a customer - which has inventories,
licenses. An Organization can contain multiple sites. A site usually represents
a deployment at the same location (a campus, an office).
name: Orgs
- name: Orgs 128T
- name: Orgs Admins
- description: Alarms are triggered based on certain events. Alarms could be configured
using an Alarm Template.
name: Orgs Alarms
- description: An Alarm Template is a set of Alarm Rules that could be applied to
one or more sites (while each site can only pick one Alarm Template), or to the
whole org.
name: Orgs Alarm Templates
- name: Orgs AP Templates
- name: Orgs API Tokens
- name: Orgs Assets
- name: Orgs Asset Filters
- name: Orgs Cert
- name: Orgs Clients - NAC
- name: Orgs Clients - Wan
- name: Orgs Clients - Wired
- name: Orgs Clients - Wireless
- name: Orgs Cradlepoint
- name: Orgs CRL
- description: 'While Templates / RF Templates / Network Templates / Gateway Templates
provides powerful ways to control how a Device\''s configuration is derived for
a Site. There are cases where you\''d like another level of control at the Org
Level.
A Device Profile contains a subset of Device\''s configurations you\''d like a
device to have. It will be merged at runtime when we\''re provisioning an AP.'
name: Orgs Device Profiles
- name: Orgs Devices
- name: Orgs Devices - WAN Cluster
- description: 'EVPN allows an alternative but more efficient LAN architecture utilizing
VxLAN / MP-BGP - separating control plane (MAC / IP Learning) from forwarding
plane.
In our implementation, following the steps to deploy EVPN topologies in a Site'
name: Orgs EVPN Topologies
- description: API Call for 3rd party devices
name: Orgs Devices Others
- name: Orgs Devices Stats
- description: "In Zscaler UI \n 1. add Partner Integration at https://admin.zscalerbeta.net/#administration/partner-integration\
\ \n 2. Add Partner Administrator Role at https://admin.zscalerbeta.net/#administration/role-management\
\ - Name: Mist - Access: Full \n 3. add Partner Admin at https://admin.zscalerbeta.net/#administration/admin-management\
\ with - Login ID: john - email: john@abc.com \n 4. Find the cloud name for ZIA\
\ https://help.zscaler.com/zia/what-my-cloud-name-zia\n"
name: Orgs Devices Zscaler
- description: Gateway Template is applied to a site for gateway(s) in a site.
name: Orgs Gateway Templates
- name: Orgs Guests
- name: Orgs IDP Profiles
- name: Orgs Inventory
- name: Orgs JSE
- description: "Juniper Support Insight is a free service provided to all Mist customers.\
\ You can adopt your devices via a few lines CLI comands. Allowing you to \n*\
\ get some basic information about the adopted devices \n* web shell into device\
\ (write privilege required) \n* upgrade (write privilege required)"
name: Orgs JSI
- name: Orgs Licenses
- name: Orgs Linked Applications
- name: Orgs Logs
- name: Orgs Marvis
- name: Orgs Maps
- name: Orgs MxClusters
- name: Orgs MxEdges
- name: Orgs MxTunnels
- name: Orgs NAC IDP
- description: 'nactags are the building blocks to compose nacrules.
They can either appear in the "matching" / "not_matching" sections of a nacrule,
in which case they play the role of classifiers, or they could appear in the "apply_tags"
section of the of a nacrule, in which case they influence the result.
When the "type" field of nactag is "match", it can be used as the classfier of
a nacrule. "match" field specifies the attribute name and "values" field specifies
the list of attribute values to match on. When multiple values are specified,
its treated as an OR condition between those values.
When the "type" field of nactag is NOT "match", it can be used as the result of
a nacrule. "type" field identifies the action to take and the corresponding field
would provide any associated parameters to that action.'
name: Orgs NAC Tags
- description: "PSK Portal is used to onboard Wireless Clients with PSK (by QR Code\
\ or URL) NAC Portals are for onboard Wireless and Wired client with 802.1X\n\
After a NAC portal is created, a URL is generated and can be given to the users\
\ (e.g. hosted on a web page \u201CGet Access to Campus Wireless\u201D) The user\
\ will use SSO to signin and download a Mist APP (via an App-Installation URL)\
\ that will get installed and used to provision certificates."
name: Orgs NAC Portals
- name: Orgs NAC CRL
- name: Orgs NAC Rules
- description: 'Network template is intended to be applied to a Site. It works like
a blueprint of the network of the site.
All Site Settings can go into Network Templates. See Site:Site Setting for schema
Moreover, this can further be overwriten by individual Site Setting'
name: Orgs Network Templates
- name: Orgs Networks
- name: Orgs Premium Analytics
- name: Orgs Psks
- description: "PSK Self-Service Portals are for \n 1. **WIFI users** who want to\
\ connect to a WLAN with personal PSK, they\u2019re told to connect to a URL where\
\ they can login (likely through company\u2019s SSO) and get the WIFI Name / Passphrase\
\ - required input fields name, email so we can generate PSK \n 2. **PSK Admins**\
\ (they don\u2019t have access to normal Network Admin Portal)\nWhen a PSK portal\
\ is created, an unique URL will be generated (e.g. https://psk.mist.com/xxxxxx)"
name: Orgs Psk Portals
- name: Orgs RF Templates
- name: Orgs SDK Clients
- name: Orgs SDK Invites
- name: Orgs SDK Templates
- description: "Security Policy is designed to audit / catch discripancies between\
\ \u201Cwhat\u2019s intended to be running\u201D versus \u201Cwhat\u2019s actually\
\ running\u201D in a network. Many big organizations have separated Security and\
\ IT team (for good reasons). Each site can be assigned a security policy. Whenever\
\ an AP is provisioned, the configuration will be checked against the security\
\ policy. Any violations will be flagged in [Device Config History](/#operation/searchSiteDeviceConfigHistory)\
\ where you can search for the when and where the violation occurs."
name: Orgs SecPolicies
- name: Orgs Services
- name: Orgs Service Policies
- name: Orgs Setting
- name: Orgs Sitegroups
- name: Orgs Sites
- description: Site template is intended to be applied to a Site. The items in site
setting which should be shared for all device types.
name: Orgs Site Templates
- name: Orgs SLEs
- name: Orgs SSO Roles
- name: Orgs SSO
- name: Orgs Stats
- name: Orgs Subscriptions
- name: Orgs WLAN Templates
- name: Orgs Tickets
- name: Orgs Tunnels Stats
- name: Orgs User MACs
- name: Orgs Vars
- name: Orgs VPNs
- name: Orgs Webhooks
- name: Orgs Wlans
- name: Orgs WxRules
- name: Orgs WxTags
- name: Orgs WxTunnels
- description: A site represents a project, a deployment. For MSP, it can be as small
as a coffee shop or a five-star 600-room hotel. A site contains a set of Maps,
Wlans, Policies, Zones.
name: Sites
- name: Sites Alarms
- name: Sites AP Templates
- description: Applications contains a list of applications users are interested in
monitoring / routing / policying
name: Sites Applications
- name: Sites Anomaly
- name: Sites Asset Filters
- name: Sites Assets
- name: Sites Beacons
- name: Sites Calls
- name: Sites Clients - NAC
- name: Sites Clients - Wan
- name: Sites Clients - Wired
- name: Sites Clients - Wireless
- description: 'Mist provides many ways (device-type specific template, site template,
device profile, per-device) to configure devices for different kind of scenarios.
The precedence goes from most specific to least specific
Device > Device Profile > RFTemplate (for AP only) > DeviceType-specific Template
> Site Template > Site Setting'
name: Sites Devices
- name: Sites Clients Stats
- name: Sites Devices - Wireless
- description: API Call for 3rd party devices
name: Sites Devices Others
- name: Sites Devices - Wired
- name: Sites Devices - Wired Virtual Chassis
- name: Sites Devices - WAN Cluster
- name: Sites Devices Stats
- name: Sites Device Profiles
- name: Sites Discovered Switches Stats
- name: Sites Events
- description: 'EVPN allows an alternative but more efficient LAN architecture utilizing
VxLAN / MP-BGP - separating control plane (MAC / IP Learning) from forwarding
plane.
In our implementation, following the steps to deploy EVPN topologies in a Site'
name: Sites EVPN Topologies
- name: Sites Gateway Templates
- name: Sites Guests
- name: Sites Insights
- name: Sites JSE
- name: Sites Licenses
- name: Sites Location
- name: Sites Maps
- name: Sites Maps Auto-orientation
- name: Sites Maps Auto-placement
- name: Sites MxEdges
- name: Sites Network Templates
- name: Sites Networks
- name: Sites Psks
- name: Sites RF Templates
- name: Sites Rfdiags
- name: Sites Rogues
- name: Sites RRM
- name: Sites RSSI Zones
- name: Sites Services
- name: Sites Service Policies
- name: Sites Setting
- name: Sites Site Templates
- name: Sites Skyatp
- name: Sites SLEs
- name: Sites Stats
- name: Synthetic Tests
- name: Sites UI Settings
- name: Sites vBeacons
- name: Sites VPNs
- name: Sites Webhooks
- name: Sites Wlans
- name: Sites WxRules
- name: Sites WxTags
- name: Sites WxTunnels
- name: Sites Zones
- name: Constants Definitions
- name: Constants Events
- name: Constants Models
- name: Constants Misc
- name: Self Account
- description: "Like many other API providers, it\u2019s also possible to generate\
\ API Tokens to be used (in HTTP Header) for authentication. An API token ties\
\ to a Admin with equal or less privileges.\n\nNotes:\n* an API token generated\
\ for a specific admin has the same privilege as the user\n* an API token will\
\ be automatically removed if not used for > 90 days\n* SSO admins cannot generate\
\ these API tokens. Refer Org level API tokens (/api/v1/docs/Org#api-token) which\
\ can have privileges of a specific Org/Site for more information. "
name: Self API Token
- name: Self OAuth2
- name: Recover Password
- name: Self MFA
- name: Self Alarms
- name: Self Audit Logs
- name: Webhook Samples
- name: Utilities Common
- name: Utilities WAN
- name: Utilities LAN
- name: Utilities Wi-Fi
- name: Utilities PCAPs
- name: Utilities Location
- name: Utilities MxEdge
- name: Utilities Upgrade
paths:
/api/v1/const/alarm_defs:
get:
description: Get List of brief definitions of all the supported alarm types. The
example field contains an example payload as you would recieve in the alarm
webhook output.
operationId: listAlarmDefinitions
responses:
'200':
$ref: '#/components/responses/ConstAlarmDefinitions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listAlarmDefinitions
tags:
- Constants Definitions
/api/v1/const/ap_channels:
get:
description: Get List of List of Available channels per country code
operationId: listApChannels
parameters:
- $ref: '#/components/parameters/country_code'
responses:
'200':
$ref: '#/components/responses/ConstApChannels'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listApChannels
tags:
- Constants Misc
/api/v1/const/ap_led_status:
get:
description: Get List of AP LED definition
operationId: listApLedDefinition
responses:
'200':
$ref: '#/components/responses/ConstApLedDefinitions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listApLedDefinition
tags:
- Constants Definitions
/api/v1/const/app_categories:
get:
description: Get List of definitions of all the supported Application Categories. The
example field contains an example payload as you would recieve in the alarm
webhook output.
operationId: listAppCategoryDefinitions
responses:
'200':
$ref: '#/components/responses/ConstAppCategoryDefinitions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listAppCategoryDefinitions
tags:
- Constants Definitions
/api/v1/const/app_subcategories:
get:
description: Get List of definitions of all the supported Application sub-categories. The
example field contains an example payload as you would recieve in the alarm
webhook output.
operationId: listAppSubCategoryDefinitions
responses:
'200':
$ref: '#/components/responses/ConstAppSubCategoryDefinitions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listAppSubCategoryDefinitions
tags:
- Constants Definitions
/api/v1/const/applications:
get:
description: Get List of a list of applications that Juniper-Mist APs recognize
operationId: listApplications
responses:
'200':
$ref: '#/components/responses/ConstApplications'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listApplications
tags:
- Constants Misc
/api/v1/const/client_events:
get:
description: Get List of List of available Client Events
operationId: listClientEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstClientEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listClientEventsDefinitions
tags:
- Constants Events
/api/v1/const/countries:
get:
description: Get List of List of available Country Codes
operationId: listCountryCodes
responses:
'200':
$ref: '#/components/responses/ConstCrountries'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listCountryCodes
tags:
- Constants Misc
/api/v1/const/default_gateway_config:
get:
description: Generate Default Gateway Config
operationId: getGatewayDefaultConfig
parameters:
- description: model the default gateway config is intended (as the default
LAN/WAN port can differ)
in: query
name: model
required: true
schema:
type: string
- description: whether the config is intended for HA
in: query
name: ha
schema:
type: string
responses:
'200':
$ref: '#/components/responses/ConstDefaultGatewayConfig'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getGatewayDefaultConfig
tags:
- Constants Misc
/api/v1/const/device_events:
get:
description: Get list of available Device Events
operationId: listDeviceEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstDeviceEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listDeviceEventsDefinitions
tags:
- Constants Events
/api/v1/const/device_models:
get:
description: Get list of AP device models for the Mist Site
operationId: listDeviceModels
responses:
'200':
$ref: '#/components/responses/ConstDeviceModels'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listDeviceModels
tags:
- Constants Models
/api/v1/const/gateway_applications:
get:
description: Get the full list of applications that we recognize
operationId: listGatewayApplications
responses:
'200':
$ref: '#/components/responses/ConstGatewayApplications'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listGatewayApplications
tags:
- Constants Misc
/api/v1/const/insight_metrics:
get:
description: List Insight Metrics
operationId: listInsightMetrics
responses:
'200':
$ref: '#/components/responses/ConstInsightMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInsightMetrics
tags:
- Constants Misc
/api/v1/const/languages:
get:
description: Get List of Languages
operationId: listSiteLanguages
responses:
'200':
$ref: '#/components/responses/ConstLanaguages'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteLanguages
tags:
- Constants Misc
/api/v1/const/license_types:
get:
description: Get License Types
operationId: getLicenseTypes
responses:
'200':
$ref: '#/components/responses/ConstLicenceTypes'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getLicenseTypes
tags:
- Constants Misc
/api/v1/const/mxedge_events:
get:
description: Get List of available MX Edge Events
operationId: listMxEdgeEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstMxEdgeEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMxEdgeEventsDefinitions
tags:
- Constants Events
/api/v1/const/mxedge_models:
get:
description: Get List of available Mx Edge models
operationId: listMxEdgeModels
responses:
'200':
$ref: '#/components/responses/ConstMxEdgeModels'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMxEdgeModels
tags:
- Constants Models
/api/v1/const/nac_events:
get:
description: Get List of List of available NAC Client Events
operationId: listNacEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstNacEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listNacEventsDefinitions
tags:
- Constants Events
/api/v1/const/otherdevice_events:
get:
description: Supported Events Type
operationId: listOtherDeviceEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstOtherDeviceEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOtherDeviceEventsDefinitions
tags:
- Constants Events
/api/v1/const/otherdevice_models:
get:
description: Supported OtherDevice Models
operationId: listSupportedOtherDeviceModels
responses:
'200':
$ref: '#/components/responses/ConstOtherDeviceModels'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSupportedOtherDeviceModels
tags:
- Constants Models
/api/v1/const/system_events:
get:
description: Get List of List of available System Events
operationId: listSystemEventsDefinitions
responses:
'200':
$ref: '#/components/responses/ConstSystemEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSystemEventsDefinitions
tags:
- Constants Events
/api/v1/const/traffic_types:
get:
description: Get List of identified traffic
operationId: listTrafficTypes
responses:
'200':
$ref: '#/components/responses/ConstTrafficTypes'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listTrafficTypes
tags:
- Constants Misc
/api/v1/installer/orgs/{org_id}/alarmtemplates:
get:
description: Get List of alarm templates
operationId: listInstallerAlarmTemplates
responses:
'200':
$ref: '#/components/responses/InstallerAlarmtemplates'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerAlarmTemplates
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/deviceprofiles:
get:
description: Get List of Device Profiles
operationId: listInstallerDeviceProfiles
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
responses:
'200':
$ref: '#/components/responses/InstallerDeviceProfiles'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerDeviceProfiles
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/devices:
get:
description: Get List of recently claimed devices
operationId: listInstallerListOfRenctlyClaimedDevices
parameters:
- description: Device Model
in: query
name: model
schema:
type: string
- description: Site Name
in: query
name: site_name
schema:
type: string
- description: Site ID
in: query
name: site_id
schema:
format: uuid
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/InstallerDevicesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerListOfRenctlyClaimedDevices
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: This mirrors `POST /api/v1/orgs/{org_id}/inventory` (see Inventory
API)
operationId: claimInstallerDevices
requestBody:
content:
application/json:
examples:
Example:
value:
- 6JG8E-PTFV2-A9Z2N
- DVH4V-SNMSZ-PDXBR
schema:
$ref: '#/components/schemas/claim_codes'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OrgInventoryAdd'
'400':
description: Bad Request if none of the entries are valid
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: claimInstallerDevices
tags:
- Installer
/api/v1/installer/orgs/{org_id}/devices/{device_mac}:
delete:
description: Unassign recently claimed devices
operationId: unassignInstallerRecentlyClaimedDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unassignInstallerRecentlyClaimedDevice
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
put:
description: "Provision or Replace a device \n\nIf replacing_mac is in the request\
\ payload, other attributes are ignored, we attempt to replace existing device\
\ (with mac replacing_mac) with the inventory device being configured. The\
\ replacement device must be in the inventory but not assigned, and the replacing_mac\
\ device must be assigned to a site, and satisfy grace period requirements.\
\ The Device replaced will become unassigned."
operationId: provisionInstallerDevices
requestBody:
content:
application/json:
examples:
example-1:
value:
deviceprofile_name: string
for_site: true
height: 0
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
name: string
orientation: 0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
x: 0
y: 0
schema:
$ref: '#/components/schemas/installer_provision_device'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/OrgInventoryUnassignFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/OrgInventoryUnassignNotFound'
'429':
$ref: '#/components/responses/HTTP429'
summary: provisionInstallerDevices
tags:
- Installer
/api/v1/installer/orgs/{org_id}/devices/{device_mac}/locate:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
post:
description: "Locate a Device by blinking it\u2019s LED, it\u2019s a persisted\
\ state that has to be stopped by calling Stop Locating API"
operationId: startInstallerLocateDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startInstallerLocateDevice
tags:
- Installer
/api/v1/installer/orgs/{org_id}/devices/{device_mac}/unlocate:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
post:
description: Stop it
operationId: stopInstallerLocateDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: stopInstallerLocateDevice
tags:
- Installer
/api/v1/installer/orgs/{org_id}/devices/{device_mac}/{image_name}:
delete:
description: delete image
operationId: deleteInstallerDeviceImage
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteInstallerDeviceImage
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/image_name'
- $ref: '#/components/parameters/device_mac'
post:
description: Add image
operationId: addInstallerDeviceImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_site_import_file'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addInstallerDeviceImage
tags:
- Installer
/api/v1/installer/orgs/{org_id}/devices/{fpc0_mac}/vc:
get:
description: 'Get VC Status
The API returns a combined view of the VC status which includes topology and
stats'
operationId: getInstallerDeviceVirtualChassis
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getInstallerDeviceVirtualChassis
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
- description: FPC0 MAC Address
in: path
name: fpc0_mac
required: true
schema:
type: string
post:
description: "For models (e.g. EX3400 and up) having dedicated VC ports, it\
\ is easier to form a VC by just connecting cables with the dedicated VC ports.\
\ Cloud will detect the new VC and update the inventory.\n\nIn case that the\
\ user would like to choose the dedicated switch as a VC master. Or for EX2300-C-12P\
\ and EX2300-C-12T which doesn\u2019t have dedicated VC ports, below are procedures\
\ to automate the VC creation:\n\n1. Power on the switch that is choosen as\
\ the VC master first. And the powering on the other member switches.\n2.\
\ Claim or adopt all these switches under the same organization\u2019s Inventory\n\
3. Assign these switches into the same Site\n4. Invoke vc command on the switch\
\ choosen to be the VC master. For EX2300-C-12P, VC ports will be created\
\ automatically.\n5. Connect the cables to the VC ports for these switches\n\
6. Wait for the VC to be formed. The Org\u2019s inventory will be updated\
\ for the new VC."
operationId: createInstallerVirtualChassis
requestBody:
content:
application/json:
examples:
create-a-VC-with-three-members:
value:
members:
- mac: aff827549235
vc_ports:
- xe-0/1/0
vc_role: master
- mac: 8396cd006c8c
vc_ports:
- xe-0/1/0
- xe-0/1/1
vc_role: backup
- mac: 8396cd00888c
vc_ports:
- xe-0/1/0
vc_role: linecard
create-a-pre-provisioned-VC-with-three-members:
value:
members:
- mac: aff827549235
member_id: 0
vc_ports:
- xe-0/1/0
- xe-0/1/1
vc_role: master
- mac: 8396cd006c8c
member_id: 1
vc_ports:
- xe-0/1/0
vc_role: linecard
- mac: 8396cd00888c
member_id: 2
vc_ports:
- xe-0/1/0
vc_role: backup
preprovisioned: true
schema:
$ref: '#/components/schemas/virtual_chassis_config'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createInstallerVirtualChassis
tags:
- Installer
put:
description: "The VC creation and adding member switch API will update the device\u2019\
s virtual chassis config which is applied after VC is formed to create JUNOS\
\ pre-provisioned virtual chassis configuration.\n\n## Change to use preprovisioned\
\ VC\nTo switch the VC to use preprovisioned VC, enable preprovisioned in\
\ virtual_chassis config. Both vc_role master and backup will be matched to\
\ routing-engine role in Junos preprovisioned VC config.\n\nIn this config,\
\ fpc0 has to be the same as the mac of device_id. Use renumber if you want\
\ to replace fpc0 which involves device_id change.\n\nNotice: to configure\
\ preprovisioned VC, every member of the VC must be in the inventory.\n\n\
## Add new members\nFor models (e.g. EX4300 and up) having dedicated VC ports,\
\ it is easier to add new member switches into a VC by just connecting cables\
\ with the dedicated VC ports. Cloud will detect the new members and update\
\ the inventory.\n\nFor EX2300 VC, adding new members requires to follow the\
\ procedures below:\n1. Powering on the new member switches and ensuring cables\
\ are not connected to any VC ports.\n2. Claim or adopt all new member switches\
\ under the VC\u2019s organization Inventory\n3. Assign all new member switches\
\ to the same Site as the VC\n4. Invoke vc command to add switches to the\
\ VC.\n5. Connect the cables to the VC ports for these switches\n6. After\
\ a while, the Org\u2019s Inventory shows this new switches has been added\
\ into the VC.\n\n## Removing member switch\nTo remove a member switch from\
\ the VC, following the procedures below:\n\n1. Ensuring the VC is connected\
\ to the cloud first\n2. Unplug the cable from the VC port of the switch\n\
3. Waiting for the VC state (vc_state) of this switch is changed to not-present\n\
4. Invoke update_vc with remove to remove this switch from the VC\n5. The\
\ Org\u2019s Inventory shows the switch is removed.\n\nPlease notice that\
\ member ID 0 (fpc0) cannot be removed. When a VC has two switches left, unpluging\
\ the cable may result in the situation that fpc0 becomes a line card (LC).\
\ When this situation is happened, please re-plug in the cable, wait for both\
\ switches becoming present (show virtual-chassis) and then removing the cable\
\ again.\n\n## Renumber a member switch\nWhen a member switch doesn\u2019\
t work properly and needed to be replaced, the renumber API could be used.\
\ The following two types of renumber are supported:\n\n1. Replace a non-fpc0\
\ member switch\n2. Replace fpc0. When fpc0 is relaced, PAPI device config\
\ and JUNOS config will be both updated.\n\nFor renumber to work, the following\
\ procedures are needed: \n1. Ensuring the VC is connected to the cloud and\
\ the state of the member switch to be replaced must be non present. \n2.\
\ Adding the new member switch to the VC \n3. Waiting for the VC state (vc_state)\
\ of this VC to be updated to API server \n4. Invoke vc with renumber to replace\
\ the new member switch from fpc X to\n\n## Perprovision VC members\nBy specifying\
\ \u201Cpreprovision\u201D op, you can convert the current VC to pre-provisioned\
\ mode, update VC members as well as specify vc_ports when adding new members\
\ for device models without dedicated vc ports. Use renumber for fpc0 replacement\
\ which involves device_id change.\n\nNote: \n1. vc_ports is used for adding\
\ new members and not needed if * the device model has dedicated vc ports,\
\ or * no new member is added \n2. New VC members to be added should exist\
\ in the same Site as the VC\n\nUpdate Device\u2019s VC config can achieve\
\ similar purpose by directly modifying current virtual_chassis config. However,\
\ it cannot fulfill requests to enabling vc_ports on new members that are\
\ yet to belong to current VC."
operationId: updateInstallerVirtualChassisMember
requestBody:
content:
application/json:
examples:
adding-two-new-switches-as-line-cards-into-the-VC:
value:
members:
- mac: aff827549235
member: 0
vc_ports:
- xe-0/1/1
vc_role: linecard
- mac: 8396cd00777c
vc_ports:
- xe-0/1/0
vc_role: linecard
op: add
convert-to-pre-provisioned-VC:
value:
member: 0
members:
- mac: string
member: 0
vc_ports:
- string
vc_role: master
new-member: 0
op: add
removing-two-switches-from-VC:
value:
members:
- member: 2
- member: 3
op: remove
renumber-member-ID-3-to-member-ID-2:
value:
member: 3
new-member: 2
op: renumber
schema:
$ref: '#/components/schemas/virtual_chassis_update'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateInstallerVirtualChassisMember
tags:
- Installer
/api/v1/installer/orgs/{org_id}/rftemplates:
get:
description: Get List of RF Templates
operationId: listInstallerRfTemplatesNames
responses:
'200':
$ref: '#/components/responses/InstallerRftemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerRfTemplatesNames
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/secpolicies:
get:
description: Get List of Secuity Policies
operationId: listInstallerSecPolicies
responses:
'200':
$ref: '#/components/responses/InstallerSecpoliciesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerSecPolicies
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/sitegroups:
get:
description: Get List of Site Groups
operationId: listInstallerSiteGroups
responses:
'200':
$ref: '#/components/responses/InstallerSitegroupsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerSiteGroups
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/sites:
get:
description: Get List of Sites
operationId: listInstallerSites
responses:
'200':
$ref: '#/components/responses/InstallerSitesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerSites
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/installer/orgs/{org_id}/sites/{site_name}:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/site_name'
put:
description: Often the Installers are asked to assign Devices to Sites. The
Sites can either be pre-created or created/modified by the Installer. If this
is an update, the same grace period also applies.
operationId: createOrUpdateInstallerSites
requestBody:
content:
application/json:
examples:
example-1:
value:
address: 1601 S. Deanza Blvd., Cupertino, CA, 95014
country_code: US
latlng:
lat: 37.295833
lng: -122.032946
name: string
rftemplate_name: rftemplate1
sitegroup_names:
- sg1
- sg2
timezone: America/Los_Angeles
schema:
$ref: '#/components/schemas/installer_site'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrUpdateInstallerSites
tags:
- Installer
/api/v1/installer/orgs/{org_id}/sites/{site_name}/maps:
get:
description: Get List of Maps
operationId: listInstallerMaps
responses:
'200':
$ref: '#/components/responses/MapsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listInstallerMaps
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/site_name'
/api/v1/installer/orgs/{org_id}/sites/{site_name}/maps/import:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/site_name'
post:
description: Import data from files is a multipart POST which has an file, an
optional json, and an optional csv, to create floorplan, assign & place ap
if name or mac matches
operationId: importInstallerMap
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_site_import_file'
responses:
'200':
$ref: '#/components/responses/MapImport'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importInstallerMap
tags:
- Installer
/api/v1/installer/orgs/{org_id}/sites/{site_name}/maps/{map_id}:
delete:
description: Delete Map
operationId: deleteInstallerMap
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteInstallerMap
tags:
- Installer
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/site_name'
- $ref: '#/components/parameters/map_id'
post:
description: Create a MAP
operationId: createInstallerMap
requestBody:
content:
application/json:
examples:
example-1:
value:
flags: {}
height: 0
latlng_br:
lat: string
lng: string
latlng_tl:
lat: string
lng: string
locked: true
name: string
orientation: 0
origin_x: 0
origin_y: 0
ppm: 0
sitesurvey_path:
- coordinate: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
thumbnail_url: string
type: image
url: string
view: roadmap
wall_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
wayfinding:
micello:
account_key: string
default_level_id: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
snap_to_path: true
wayfinding_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
width: 0
schema:
$ref: '#/components/schemas/map'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Map'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createInstallerMap
tags:
- Installer
put:
description: Update map
operationId: updateInstallerMap
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/map'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Map'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateInstallerMap
tags:
- Installer
/api/v1/installer/sites/{site_name}/optimize:
get:
description: "After installation is considered complete (APs are placed on maps,\
\ all powered up), you can trigger an optimize operation where RRM will kick\
\ in (and maybe other things in the future) before it\u2019s automatically\
\ scheduled."
operationId: optimizeInstallerRrm
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: optimizeInstallerRrm
tags:
- Installer
parameters:
- $ref: '#/components/parameters/site_name'
/api/v1/invite/verify/{token}:
parameters:
- $ref: '#/components/parameters/token'
post:
description: '**Note**: another call to ```GET /api/v1/self``` is required to
see the new set of privileges'
operationId: verifyAdminInvite
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/InviteVerifyNotFound'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifyAdminInvite
tags:
- Admins
/api/v1/login:
post:
description: "Log in with email/password.\nWhen 2FA is enabled, there are two\
\ ways to login:\n1. login with two_factor token (with Google Authenticator,\
\ etc) \n2. login with email/password, generate the token, and use /login/two_factor\
\ with the token"
operationId: login
requestBody:
content:
application/json:
examples:
with-2FA:
value:
email: test@mistsys.com
password: foryoureyesonly
two_factor: '123456'
without-2FA:
value:
email: test@mistsys.com
password: foryoureyesonly
schema:
$ref: '#/components/schemas/login'
responses:
'200':
$ref: '#/components/responses/LoginSuccess'
'400':
$ref: '#/components/responses/LoginFailure'
summary: login
tags:
- Login
/api/v1/login/lookup:
post:
description: Login Lookup
operationId: lookup
requestBody:
content:
application/json:
examples:
example-1:
value:
email: test@mistsys.com
schema:
$ref: '#/components/schemas/email'
description: Request Body
responses:
'200':
$ref: '#/components/responses/LoginLookup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
description: user does not exist
'429':
$ref: '#/components/responses/HTTP429'
summary: lookup
tags:
- Login
/api/v1/login/oauth/{provider}:
delete:
description: Unlink OAuth2 Provider
operationId: unlinkOauth2Provider
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unlinkOauth2Provider
tags:
- Login With OAuth2
get:
description: Obtain Authorization URL for Login
operationId: getOauth2AuthorizationUrlForLogin
parameters:
- in: query
name: forward
schema:
example: http://manage.mist.com/oauth/callback.html
type: string
responses:
'200':
$ref: '#/components/responses/LoginOauthUrl'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOauth2AuthorizationUrlForLogin
tags:
- Login With OAuth2
parameters:
- in: path
name: provider
required: true
schema:
type: string
post:
description: Login via OAuth2
operationId: loginOauth2
requestBody:
content:
application/json:
examples:
example-1:
value:
code: 4/S9tegDeLkrYg0L9pWNXV4cgMVbbr3SR9t693A2kSHzw
schema:
$ref: '#/components/schemas/code'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: loginOauth2
tags:
- Login With OAuth2
/api/v1/login/two_factor:
post:
description: Send 2FA Code
operationId: twoFactor
requestBody:
content:
application/json:
examples:
Example:
value:
two_factor: '123456'
schema:
$ref: '#/components/schemas/two_factor'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
description: "two_factor code is incorrect or the user hasn\u2019t login\
\ yet"
'403':
$ref: '#/components/responses/HTTP403'
'404':
description: "the user doesn\u2019t have 2FA enabled"
'429':
$ref: '#/components/responses/HTTP429'
summary: twoFactor
tags:
- Login
/api/v1/logout:
post:
description: Logout
operationId: logout
responses:
'200':
$ref: '#/components/responses/Logout'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: logout
tags:
- Login
/api/v1/mobile/verify/{secret}:
parameters:
- $ref: '#/components/parameters/secret'
post:
description: Verify secret
operationId: activateSdkInvite
requestBody:
content:
application/json:
examples:
example-1:
value:
device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/device_id'
responses:
'200':
$ref: '#/components/responses/MobileVerifySecret'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: activateSdkInvite
tags:
- Orgs SDK Invites
/api/v1/msps:
post:
description: Create MSP account
operationId: createMsp
requestBody:
content:
application/json:
examples:
example-1:
value:
name: MSP
schema:
$ref: '#/components/schemas/msp'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Msp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createMsp
tags:
- Msps
/api/v1/msps/{msp_id}:
delete:
description: Deleting MSP removes the MSP and OrgGroup under the MSP as well
as all privileges associated with them. It does not remove any Org or Admins
operationId: deleteMsp
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMsp
tags:
- Msps
get:
description: Get MSP Detail
operationId: getMspDetails
responses:
'200':
$ref: '#/components/responses/Msp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspDetails
tags:
- Msps
parameters:
- $ref: '#/components/parameters/msp_id'
put:
description: Update MSP
operationId: updateMsp
requestBody:
content:
application/json:
examples:
example-1:
value:
name: MSP
schema:
$ref: '#/components/schemas/msp'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Msp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMsp
tags:
- Msps
/api/v1/msps/{msp_id}/admins:
get:
description: Get List of MSP Admins
operationId: listMspAdmins
responses:
'200':
$ref: '#/components/responses/AdminsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspAdmins
tags:
- Msps Admins
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/admins/{admin_id}:
delete:
description: This removes all privileges this admin has against the MSP. This
goes deep all the way to the sites
operationId: revokeMspAdmin
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: revokeMspAdmin
tags:
- Msps Admins
get:
description: Get MSP Admins
operationId: getMspAdmin
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspAdmin
tags:
- Msps Admins
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/admin_id'
put:
description: Update MSP Admin
operationId: updateMspAdmin
requestBody:
content:
application/json:
examples:
example-2:
value:
admin_id: 919c4da0-421a-479a-918d-df80e426d3bf
email: user@example.com
enable_two_factor: true
first_name: string
last_name: string
oauth_google: true
privileges:
- for_site: true
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
session_expiry: 0
tags:
- string
two_factor_verified: true
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspAdmin
tags:
- Msps Admins
/api/v1/msps/{msp_id}/claim:
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Claim an Order by Activation Code
operationId: claimMspLicence
requestBody:
content:
application/json:
examples:
example-1:
value:
code: ZHT3K-H36DT-MG85D-M61AC
schema:
$ref: '#/components/schemas/code'
responses:
'200':
$ref: '#/components/responses/ClaimLicense'
'400':
description: Response when the key is invalid (or already used)
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: claimMspLicence
tags:
- Msps Licenses
/api/v1/msps/{msp_id}/insights/{metric}:
get:
description: Get MSP SLEs (all/worst Orgs ...)
operationId: getMspSle
parameters:
- description: see /api/v1/const/insight_metrics for more details
in: query
name: sle
schema:
type: string
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
responses:
'200':
$ref: '#/components/responses/InsightMetricMsp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspSle
tags:
- Msps SLEs
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/metric'
/api/v1/msps/{msp_id}/inventory/{device_mac}:
get:
description: Get Inventoy By device MAC address
operationId: getMspInventoryByMac
responses:
'200':
$ref: '#/components/responses/MspInventoryDevice'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspInventoryByMac
tags:
- Msps Inventory
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/device_mac'
/api/v1/msps/{msp_id}/invites:
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: 'Invite MSP Admin
**Note**: An email will also be sent to the user with a link to https://manage.mist.com/verify/invite?token=:token'
operationId: inviteMspAdmin
requestBody:
content:
application/json:
examples:
example-1:
value:
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: inviteMspAdmin
tags:
- Msps Invites
/api/v1/msps/{msp_id}/invites/{invite_id}:
delete:
description: Delete admin invite
operationId: uninviteMspAdmin
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uninviteMspAdmin
tags:
- Msps Invites
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/invite_id'
put:
description: Update MSP admin invite
operationId: updateMspAdminInvite
requestBody:
content:
application/json:
examples:
example-1:
value:
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspAdminInvite
tags:
- Msps Invites
/api/v1/msps/{msp_id}/licenses:
get:
description: Get List of Msp Licenses
operationId: listMspLicenses
responses:
'200':
$ref: '#/components/responses/Licence'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspLicenses
tags:
- Msps Licenses
parameters:
- $ref: '#/components/parameters/msp_id'
put:
description: Move or Delete MSP Licenses
operationId: moveOrDeleteMspLicenseToAnotherOrg
requestBody:
content:
application/json:
examples:
delete-license:
value:
op: delete
subscription_id: SUB-0000144
move-micense:
value:
dst_org_id: 3eff35f7-c218-894e-bca2-24e5325601cc
op: amend
quantity: 10
subscription_id: SUB-0000144
undo-the-license-move:
value:
amendment_id: 2b9116ab-cd1e-e897-6e08-31fccd88e792
op: unamend
schema:
$ref: '#/components/schemas/msp_license_action'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: moveOrDeleteMspLicenseToAnotherOrg
tags:
- Msps Licenses
/api/v1/msps/{msp_id}/logo:
delete:
description: Delete MSP Logo
operationId: deleteMspLogo
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMspLogo
tags:
- Msps Logo
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Upload Logo (only for advanced msp tier)
operationId: postMspLogo
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/msp_logo'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: postMspLogo
tags:
- Msps Logo
/api/v1/msps/{msp_id}/logs:
get:
description: Get list of change logs for the current MSP
operationId: listMspLogs
parameters:
- description: site id
in: query
name: site_id
schema:
type: string
- description: admin name or email
in: query
name: admin_name
schema:
type: string
- description: message
in: query
name: message
schema:
type: string
- description: sort order
in: query
name: sort
schema:
enum:
- timestamp
- -timestamp
- site_id
- admin_id
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/LogsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspLogs
tags:
- Msps Logs
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/logs/count:
get:
description: Count by Distinct Attributes of Audit Logs
operationId: countMspLogs
parameters:
- in: query
name: distinct
schema:
default: admin_name
enum:
- admin_id
- admin_name
- message
- org_id
title: MSP Logs count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countMspLogs
tags:
- Msps Logs
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/orggroups:
get:
description: Get List of MSP Org Groups
operationId: listMspOrgGroups
responses:
'200':
$ref: '#/components/responses/OrggroupsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspOrgGroups
tags:
- Msps Org Groups
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Create MSP Org Group
operationId: createMspOrgGroup
requestBody:
content:
application/json:
examples:
example-1:
value:
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/orggroup'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Orggroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createMspOrgGroup
tags:
- Msps Org Groups
/api/v1/msps/{msp_id}/orggroups/{orggroup_id}:
delete:
description: Delete MSP Org Group
operationId: deleteMspOrgGroup
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMspOrgGroup
tags:
- Msps Org Groups
get:
description: Get MSP Org Group Details
operationId: getMspOrgGroup
responses:
'200':
$ref: '#/components/responses/Orggroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspOrgGroup
tags:
- Msps Org Groups
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/orggroup_id'
put:
description: Update MSP Org Group
operationId: updateMspOrgGroup
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/orggroup'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Orggroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspOrgGroup
tags:
- Msps Org Groups
/api/v1/msps/{msp_id}/orgs:
get:
description: Get List of MSP Orgs
operationId: listMspOrgs
responses:
'200':
$ref: '#/components/responses/OrgsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspOrgs
tags:
- Msps Orgs
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Create an Org under MSP
operationId: createMspOrg
requestBody:
content:
application/json:
examples:
example-1:
value:
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
allow_mist: true
name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
session_expiry: 10
schema:
$ref: '#/components/schemas/org'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createMspOrg
tags:
- Msps Orgs
put:
description: Assign or Unassign Orgs to an MSP account
operationId: manageMspOrgs
requestBody:
content:
application/json:
examples:
example-1:
value:
op: assign
org_ids:
- 2b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/msp_org_change'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: manageMspOrgs
tags:
- Msps Orgs
/api/v1/msps/{msp_id}/orgs/search:
get:
description: Search Org in MSP
operationId: searchMspOrgs
parameters:
- $ref: '#/components/parameters/name'
- description: org id
in: query
name: org_id
schema:
format: uuid
type: string
- description: if this org has sufficient subscription
in: query
name: sub_insufficient
schema:
type: boolean
- description: if this org is under trial period
in: query
name: trial_enabled
schema:
type: boolean
- description: a list of types that enabled by usage
in: query
name: usage_types
schema:
$ref: '#/components/schemas/strings'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/OrgsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchMspOrgs
tags:
- Msps Orgs
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/orgs/{org_id}:
delete:
description: delete MSP Org
operationId: deleteMspOrg
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMspOrg
tags:
- Msps Orgs
get:
description: Get MSP Org Details
operationId: getMspOrg
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspOrg
tags:
- Msps Orgs
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/org_id'
put:
description: Update MSP Org
operationId: updateMspOrg
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/org'
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspOrg
tags:
- Msps Orgs
/api/v1/msps/{msp_id}/search:
get:
description: Search in MSP Orgs
operationId: searchMspOrgGroup
parameters:
- description: orgs
example: orgs
in: query
name: type
required: true
schema:
enum:
- orgs
title: MSP Search type
type: string
- $ref: '#/components/parameters/q'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Search'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchMspOrgGroup
tags:
- Msps
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/ssoroles:
get:
description: Get List of MSP SSO Roles
operationId: listMspSsoRoles
responses:
'200':
$ref: '#/components/responses/SsoRolesOrgArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspSsoRoles
tags:
- Msps SSO Roles
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Create MSP Role
operationId: createMspSsoRole
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sso_role_msp'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SsoRoleMsp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createMspSsoRole
tags:
- Msps SSO Roles
/api/v1/msps/{msp_id}/ssoroles/{ssorole_id}:
delete:
description: Delete MSP SSO Roles
operationId: deleteMspSsoRole
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMspSsoRole
tags:
- Msps SSO Roles
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/ssorole_id'
put:
description: Update SSO Role
operationId: updateMspSsoRole
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sso_role_msp'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SsoRoleMsp'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspSsoRole
tags:
- Msps SSO Roles
/api/v1/msps/{msp_id}/ssos:
get:
description: List MSP SSO Configs
operationId: listMspSsos
responses:
'200':
$ref: '#/components/responses/SsosArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspSsos
tags:
- Msps SSO
parameters:
- $ref: '#/components/parameters/msp_id'
post:
description: Create MSP SSO profile
operationId: createMspSso
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sso'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createMspSso
tags:
- Msps SSO
/api/v1/msps/{msp_id}/ssos/{sso_id}:
delete:
description: Delete MSP SSO Config
operationId: deleteMspSso
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteMspSso
tags:
- Msps SSO
get:
description: Get MSP SSO Config
operationId: getMspSso
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspSso
tags:
- Msps SSO
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/sso_id'
put:
description: Update MSP SSO config
operationId: updateMspSso
requestBody:
content:
application/json:
examples:
example-1:
value:
custom_logout_url: string
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
ignore_unmatched_roles: true
issuer: string
name: string
nameid_format: email
schema:
$ref: '#/components/schemas/sso'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateMspSso
tags:
- Msps SSO
/api/v1/msps/{msp_id}/ssos/{sso_id}/failures:
get:
description: Get List of MSP SSO Latest Failures
operationId: listMspSsoLatestFailures
responses:
'200':
$ref: '#/components/responses/SsoLatestFailures'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspSsoLatestFailures
tags:
- Msps SSO
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/msps/{msp_id}/ssos/{sso_id}/metadata:
get:
description: Get MSP SSO SAML Metadata
operationId: getMspSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/SsoSamlMetadata'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getMspSsoSamlMetadata
tags:
- Msps SSO
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/msps/{msp_id}/ssos/{sso_id}/metadata.xml:
get:
description: "Download MSP SSO SAML Metadata\n\nExample of metadata.xml:\n```xml\n\
\n \n \n \
\ urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n\
\ \n \n \
\ Mist\n \n \n \n\
\ \n \n\n\
```"
operationId: downloadMspSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: downloadMspSsoSamlMetadata
tags:
- Msps SSO
parameters:
- $ref: '#/components/parameters/msp_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/msps/{msp_id}/stats/licenses:
get:
description: Get List of MSP Licences
operationId: listMspOrgLicenses
parameters: []
responses:
'200':
$ref: '#/components/responses/Licence'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspOrgLicenses
tags:
- Msps Stats
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/stats/orgs:
get:
description: Get List of MSP Orgs Stats
operationId: listMspOrgStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/OrgsArrayStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspOrgStats
tags:
- Msps Stats
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/suggestion/count:
get:
description: Count Marvis actions
operationId: countMspsMarvisActions
parameters:
- in: query
name: distinct
schema:
default: org_id
enum:
- org_id
- status
title: MSP Marvis Suggestions count distinct
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/CountMarvisActions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countMspsMarvisActions
tags:
- Msps Marvis
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/tickets:
get:
description: Get List of Tickets of a MSP
operationId: listMspTickets
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/TicketsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listMspTickets
tags:
- Msps Tickets
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/msps/{msp_id}/tickets/count:
get:
description: Count tickets
operationId: countMspTickets
parameters:
- in: query
name: distinct
schema:
default: status
enum:
- status
- type
- org_id
title: MSP tickets count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countMspTickets
tags:
- Msps Tickets
parameters:
- $ref: '#/components/parameters/msp_id'
/api/v1/orgs:
post:
description: "Org admin can invite people to manage the org. Furthermore, he\
\ can dictate the level of security those accounts are. The check is enforced\
\ when the invited admin tries to \u201Caccept\u201D the invitation and every\
\ time the admin tries to login"
operationId: createOrg
requestBody:
content:
application/json:
examples:
example-1:
value:
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
allow_mist: true
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
orggroup_ids:
- 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
session_expiry: 0
schema:
$ref: '#/components/schemas/org'
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrg
tags:
- Orgs
/api/v1/orgs/{org_id}:
delete:
description: Delete Org
operationId: deleteOrg
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrg
tags:
- Orgs
get:
description: Get Organization information
operationId: getOrg
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrg
tags:
- Orgs
parameters:
- $ref: '#/components/parameters/org_id'
put:
description: Update Org
operationId: updateOrg
requestBody:
content:
application/json:
examples:
example-1:
value:
alarmtemplate_id: 1984805d-2be2-4aec-a8d4-3ddf67fab0df
allow_mist: true
created_time: 0
id: 497f6eca-6276-5021-bfeb-53cbbbba6f2a
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
name: string
orggroup_ids: []
session_expiry: 1440
schema:
$ref: '#/components/schemas/org'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrg
tags:
- Orgs
/api/v1/orgs/{org_id}/128routers/register_cmd:
get:
description: 128T devices can be managed/adopted by Mist.
operationId: getOrg128TRegistrationCommands
responses:
'200':
$ref: '#/components/responses/Router128TRegisterCmd'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrg128TRegistrationCommands
tags:
- Orgs 128T
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/admins:
get:
description: Get List of people who can manage the Site/Org under the Org
operationId: listOrgAdmins
responses:
'200':
$ref: '#/components/responses/AdminsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAdmins
tags:
- Orgs Admins
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/admins/{admin_id}:
delete:
description: This removes all privileges this admin has against the org
operationId: revokeOrgAdmin
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: revokeOrgAdmin
tags:
- Orgs Admins
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/admin_id'
put:
description: Invite Org Admin
operationId: updateOrgAdmin
requestBody:
content:
application/json:
examples:
Example:
value:
admin_id: 456b7016-a916-a4b1-78dd-72b947c152b7
email: jsnow@abc.com
enable_two_factor: true
expire_time: 0
first_name: John
hours: 24
last_name: Sno
oauth_google: true
phone: string
phone2: string
privileges:
- for_site: true
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
msp_logo_url: string
msp_name: string
msp_url: string
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
org_name: string
orggroup_ids:
- 497f6eca-6276-4993-bfeb-53d5bbba6f08
role: admin
scope: org
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sitegroup_ids:
- 497f6eca-6276-4993-bfeb-53d6bbba6f08
views: switch_admin
session_expiry: 1440
tags:
- string
two_factor_verified: true
via_sso: true
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAdmin
tags:
- Orgs Admins
/api/v1/orgs/{org_id}/alarms/ack:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Ack multiple Org Alarms
operationId: multiAckOrgAlarms
requestBody:
content:
application/json:
examples:
example-1:
value:
alarm_ids:
- ccb8c94d-ca56-4075-932f-1f2ab444ff2c
- 98ff4a3d-ec9b-4138-a42e-54fc3335179d
note: maintenance window
schema:
$ref: '#/components/schemas/alarm_ids'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiAckOrgAlarms
tags:
- Orgs Alarms
/api/v1/orgs/{org_id}/alarms/ack_all:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Ack all Org Alarms
**N.B.**: Batch size for multiple alarm ack and unack has to be less or or
equal to 1000.'
operationId: ackOrgAllAlarms
requestBody:
content:
application/json:
examples:
example-1:
value:
note: string
schema:
$ref: '#/components/schemas/note'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: ackOrgAllAlarms
tags:
- Orgs Alarms
/api/v1/orgs/{org_id}/alarms/count:
get:
description: Count Org Alarms
operationId: countOrgAlarms
parameters:
- in: query
name: distinct
schema:
title: Org Alarms count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgAlarms
tags:
- Orgs Alarms
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/alarms/search:
get:
description: Search Org Alarms
operationId: searchOrgAlarms
parameters:
- in: query
name: site_id
schema:
type: string
- in: query
name: type
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AlarmsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgAlarms
tags:
- Orgs Alarms
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/alarms/unack:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Unack multiple Org Alarms
operationId: multiUnackOrgAlarms
requestBody:
content:
application/json:
examples:
example-1:
value:
alarm_ids:
- ccb8c94d-ca56-4075-932f-1f2ab444ff2c
- 98ff4a3d-ec9b-4138-a42e-54fc3335179d
note: maintenance window
schema:
$ref: '#/components/schemas/alarm_ids'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiUnackOrgAlarms
tags:
- Orgs Alarms
/api/v1/orgs/{org_id}/alarms/unack_all:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Unack all Org Alarms
**N.B.**: Batch size for multiple alarm ack and unack has to be less or or
equal to 1000.'
operationId: unackOrgAllArlarms
requestBody:
content:
application/json:
examples:
example-1:
value:
note: maintenance window
schema:
$ref: '#/components/schemas/note'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unackOrgAllArlarms
tags:
- Orgs Alarms
/api/v1/orgs/{org_id}/alarms/{alarm_id}/ack:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/alarm_id'
post:
description: Ack Org Alarm
operationId: ackOrgAlarm
requestBody:
content:
application/json:
examples:
example-1:
value:
note: maintenance window
schema:
$ref: '#/components/schemas/note'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: ackOrgAlarm
tags:
- Orgs Alarms
/api/v1/orgs/{org_id}/alarmtemplates:
get:
description: Get List of Org Alarm Templates
operationId: listOrgAlarmTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AlarmtemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAlarmTemplates
tags:
- Orgs Alarm Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Available rules can be found in Orgs>Consts>getAlarmDefs
The delivery dict is only required if different from the template delivery
settings.'
operationId: createOrgAlarmTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Alarmtemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgAlarmTemplate
tags:
- Orgs Alarm Templates
/api/v1/orgs/{org_id}/alarmtemplates/suppress:
delete:
description: Un-Suppress Suppressed Alarms
operationId: unsuppressOrgSuppressedAlarms
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unsuppressOrgSuppressedAlarms
tags:
- Orgs Alarm Templates
get:
description: Get List of Org Alarms Currently Suppressed
operationId: listOrgSuppressedAlarms
parameters:
- in: query
name: scope
schema:
$ref: '#/components/schemas/suppressed_alarm_scope'
responses:
'200':
$ref: '#/components/responses/OrgSuppressedAlarms'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSuppressedAlarms
tags:
- Orgs Alarm Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: In certain situations, for example, scheduled maintenance, you
may want to suspend alarms to be triggered against Sites for a period of time.
operationId: suppressOrgAlarm
requestBody:
content:
application/json:
examples:
org-suppression:
value:
duration: 3600
scheduled_time: 1678232980
scope: org
site-suppression:
value:
applies:
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
site_ids:
- 4ac1dcf4-9d8b-7211-65c4-057819f0862b
sitegroup_ids:
- 581328b6-e382-f54e-c9dc-999983183a34
- f57096b9-0c2f-4df6-c77b-ae6ae87a3d43
duration: 3600
scheduled_time: 1678232980
scope: site
schema:
$ref: '#/components/schemas/suppressed_alarm'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: suppressOrgAlarm
tags:
- Orgs Alarm Templates
/api/v1/orgs/{org_id}/alarmtemplates/{alarmtemplate_id}:
delete:
description: Delete Org Alarm Template
operationId: deleteOrgAlarmTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgAlarmTemplate
tags:
- Orgs Alarm Templates
get:
description: Get Org Alarm Template Details
operationId: getOrgAlarmTemplate
responses:
'200':
$ref: '#/components/responses/Alarmtemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgAlarmTemplate
tags:
- Orgs Alarm Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/alarmtemplate_id'
put:
description: Update Org Alarm Template
operationId: updateOrgAlarmTemplate
requestBody:
content:
application/json:
examples:
example-1:
value:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
name: string
rules:
adhoc_network:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
air_magnet_scan:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
ap_offline:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
bad_cable:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
beacon_flood:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
bssid_spoofing:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
device_down:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
device_restarted:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
dhcp_failure:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
disassociation_flood:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
dot1x_failure:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
eap_dictionary_attack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
eap_failure_injection:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
eap_handshake_flood:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
eap_spoofed_success:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
eapol_logoff_attack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
essid_jack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
excessive_client:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
excessive_eapol_start:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
gateway_down:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
gw_bad_cable:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
gw_negotiation_mismatch:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
honeypot_ssid:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
krack_attack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
missing_vlan:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
monkey_jack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
negotiation_mismatch:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
non_compliant:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
out_of_sequence:
enabled: true
psk_failure:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
repeated_auth_failures:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
rogue_ap:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
rogue_client:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
secpolicy_violation:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
ssid_injection:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
switch_down:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
tkip_icv_attack:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
vendor_ie_missing:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
watched_station:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
zero_ssid_association:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
schema:
$ref: '#/components/schemas/alarm_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Alarmtemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAlarmTemplate
tags:
- Orgs Alarm Templates
/api/v1/orgs/{org_id}/apitokens:
get:
description: Get List of Org API Tokens
operationId: listOrgApiTokens
responses:
'200':
$ref: '#/components/responses/ApitokensOrgArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgApiTokens
tags:
- Orgs API Tokens
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Create Org API Token
Note that the token key is only available during creation time.'
operationId: createOrgApiToken
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/org_apitoken'
responses:
'200':
$ref: '#/components/responses/ApitokenOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgApiToken
tags:
- Orgs API Tokens
/api/v1/orgs/{org_id}/apitokens/{apitoken_id}:
delete:
description: Delete Org API Token
operationId: deleteOrgApiToken
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgApiToken
tags:
- Orgs API Tokens
get:
description: Get Org API Token
operationId: getOrgApiToken
responses:
'200':
$ref: '#/components/responses/ApitokenOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgApiToken
tags:
- Orgs API Tokens
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/apitoken_id'
put:
description: Update Org API Token
operationId: updateOrgApiToken
requestBody:
content:
application/json:
examples:
Example:
value:
name: org_token_xyz
privileges:
- org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
role: admin
scope: org
schema:
$ref: '#/components/schemas/org_apitoken'
description: Request Body
responses:
'200':
$ref: '#/components/responses/ApitokenOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgApiToken
tags:
- Orgs API Tokens
/api/v1/orgs/{org_id}/aptemplates:
get:
description: Get List of Org AP Templates
operationId: listOrgAptemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AptemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAptemplates
tags:
- Orgs AP Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org AP Template
operationId: createOrgAptemplate
requestBody:
content:
application/json:
examples:
Example:
value:
ap_matching:
enabled: true
rules:
- match_model: string
name: string
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
created_time: 0
for_site: true
id: 497f6eca-6276-4993-bfeb-53d7bbba6f08
modified_time: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: true
enable_arp_spoof: true
enable_shared_radio_scanning: false
enabled: true
locate_connected: false
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: true
mesh_enabled: true
proxy_arp: false
schema:
$ref: '#/components/schemas/ap_template'
responses:
'200':
$ref: '#/components/responses/Aptemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgAptemplate
tags:
- Orgs AP Templates
/api/v1/orgs/{org_id}/aptemplates/{aptemplate_id}:
delete:
description: Delete existing AP Template
operationId: deleteOrgAptemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgAptemplate
tags:
- Orgs AP Templates
get:
description: Get AP Template
operationId: getOrgAptemplate
responses:
'200':
$ref: '#/components/responses/Aptemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgAptemplate
tags:
- Orgs AP Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/aptemplate_id'
put:
description: Update AP Template
operationId: updateOrgAptemplate
requestBody:
content:
application/json:
examples:
Example:
value:
ap_matching:
enabled: true
rules:
- match_model: string
name: string
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
created_time: 0
for_site: true
id: 497f6eca-6276-4993-bfeb-53d8bbba6f08
modified_time: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: true
enable_arp_spoof: true
enable_shared_radio_scanning: false
enabled: true
locate_connected: false
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: true
mesh_enabled: true
proxy_arp: false
schema:
$ref: '#/components/schemas/ap_template'
responses:
'200':
$ref: '#/components/responses/Aptemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAptemplate
tags:
- Orgs AP Templates
/api/v1/orgs/{org_id}/assetfilters:
get:
description: "Get List of Org BLE asset filters. \nEach asset filter in the\
\ list operates independently. For a filter object to match an asset, all\
\ of the filter properties must match (logical \u2018AND\u2019 of each filter\
\ property). For example, the \u201CVisitor Tags\u201D filter below will match\
\ an asset when both the \u201Cibeacon\\_uuid\u201D and \u201Cibeacon_major\u201D\
\ properties match the asset. All non-matching assets are ignored."
operationId: listOrgAssetFilters
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AssetfiltersArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAssetFilters
tags:
- Orgs Asset Filters
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Create Asset Filter\n\nCreates a single BLE asset filter for the\
\ given site. Any subset of filter properties can be included in the filter.\
\ A matching asset must meet the conditions of all given filter properties\
\ (logical \u2018AND\u2019)."
operationId: createOrgAssetFilters
requestBody:
content:
application/json:
examples:
example-1:
value:
created_time: 0
disasbled: true
eddystone_uid_namespace: string
eddystone_url: string
for_site: true
ibeacon_major: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
id: 430f6eca-6276-4993-bfeb-53cb5bba6f08
mfg_company_id: 0
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
schema:
$ref: '#/components/schemas/asset_filter'
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgAssetFilters
tags:
- Orgs Asset Filters
/api/v1/orgs/{org_id}/assetfilters/{assetfilter_id}:
delete:
description: Deletes an existing BLE asset filter for the given site.
operationId: deleteOrgAssetFilter
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgAssetFilter
tags:
- Orgs Asset Filters
get:
description: Get Org Asset Filter Details
operationId: getOrgAssetFilter
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgAssetFilter
tags:
- Orgs Asset Filters
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/assetfilter_id'
put:
description: Updates an existing BLE asset filter for the given site.
operationId: updateOrgAssetFilters
requestBody:
content:
application/json:
examples:
example-1:
value:
disabled: true
eddystone_uid_namespace: string
eddystone_url: string
ibeacon_major: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab2
mfg_company_id: 0
name: string
schema:
$ref: '#/components/schemas/asset_filter'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAssetFilters
tags:
- Orgs Asset Filters
/api/v1/orgs/{org_id}/assets:
get:
description: Get List of Org Assets
operationId: listOrgAssets
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AssetsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAssets
tags:
- Orgs Assets
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Asset
operationId: createOrgAsset
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgAsset
tags:
- Orgs Assets
/api/v1/orgs/{org_id}/assets/import:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Impert Org Assets. \n\nIt can be done via a CSV file or a JSON\
\ payload.\n\n#### CSV File Format\n```csv\nname,mac\n\"asset_name\",5c5b53010101\n\
``` "
operationId: importOrgAssets
requestBody:
content:
application/json:
examples:
example-1:
value:
- mac: a31eb04e1c38
name: Expensive Instrument
- mac: a31eb04e1c37
name: Cheap Instrument
schema:
$ref: '#/components/schemas/assets_import_json'
multipart/form-data:
schema:
$ref: '#/components/schemas/assets_import_file'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgAssets
tags:
- Orgs Assets
/api/v1/orgs/{org_id}/assets/{asset_id}:
delete:
description: Delete Org Asset
operationId: deleteOrgAsset
responses:
'200':
$ref: '#/components/responses/OK'
'201':
description: Created
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgAsset
tags:
- Orgs Assets
get:
description: Get Org Asset Details
operationId: getOrgAsset
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgAsset
tags:
- Orgs Assets
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/asset_id'
put:
description: Update Org Asset
operationId: updateOrgAsset
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAsset
tags:
- Orgs Assets
/api/v1/orgs/{org_id}/cert:
get:
description: Get Org Certificates
operationId: getOrgCertificates
responses:
'200':
$ref: '#/components/responses/Certificate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgCertificates
tags:
- Orgs Cert
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/cert/regenerate:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Clear Org Certificates
operationId: clearOrgCertificates
responses:
'200':
$ref: '#/components/responses/Certificate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearOrgCertificates
tags:
- Orgs Cert
/api/v1/orgs/{org_id}/claim:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Claim Org licenses / activation codes
operationId: claimOrgLicense
requestBody:
content:
application/json:
examples:
example-1:
value:
code: ZHT3K-H36DT-MG85D-M61AC
type: all
schema:
$ref: '#/components/schemas/claim_activation'
description: Request Body
responses:
'200':
$ref: '#/components/responses/ClaimLicense'
'400':
description: invalid key (or already used)
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: claimOrgLicense
tags:
- Orgs Licenses
/api/v1/orgs/{org_id}/clients/count:
get:
description: Count Org Wireless Clients
operationId: countOrgWirelessClients
parameters:
- in: query
name: distinct
schema:
default: device
enum:
- mac
- hostname
- device
- os
- model
- ap
- vlan
- ssid
- ip
title: Org clients count distinct
type: string
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: device type, e.g. Mac, Nvidia, iPhone
in: query
name: device
schema:
type: string
- description: os, e.g. Sierra, Yosemite, Windows 10
in: query
name: os
schema:
type: string
- description: "model, e.g. \u201CMBP 15 late 2013\u201D, 6, 6s, \u201C8+ GSM\u201D"
in: query
name: model
schema:
type: string
- description: AP mac where the client has connected to
in: query
name: ap
schema:
type: string
- description: vlan
in: query
name: vlan
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- $ref: '#/components/parameters/ip'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgWirelessClients
tags:
- Orgs Clients - Wireless
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/clients/events/search:
get:
description: Get Org Clients Events
operationId: searchOrgWirelessClientEvents
parameters:
- $ref: '#/components/parameters/client_event_type'
- description: for assoc/disassoc events
in: query
name: reason_code
schema:
type: integer
- description: SSID Name
in: query
name: ssid
schema:
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_proto'
- $ref: '#/components/parameters/dot11_band'
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/EventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWirelessClientEvents
tags:
- Orgs Clients - Wireless
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/clients/search:
get:
description: Search Org Wireless Clients
operationId: searchOrgWirelessClients
parameters:
- description: Site ID
in: query
name: site_id
schema:
type: string
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/ip'
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: device type, e.g. Mac, Nvidia, iPhone
in: query
name: device
schema:
type: string
- description: os, e.g. Sierra, Yosemite, Windows 10
in: query
name: os
schema:
type: string
- description: "model, e.g. \u201CMBP 15 late 2013\u201D, 6, 6s, \u201C8+ GSM\u201D"
in: query
name: model
schema:
type: string
- description: AP mac where the client has connected to
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/psk_id_query'
- description: PSK Name
in: query
name: psk_name
schema:
type: string
- description: vlan
in: query
name: vlan
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- description: partial / full MAC address, hostname, username, psk_name or ip
in: query
name: text
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWirelessClients
tags:
- Orgs Clients - Wireless
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/clients/sessions/count:
get:
description: Count Org Wireless Clients Sessions
operationId: countOrgWirelessClientsSessions
parameters:
- in: query
name: distinct
schema:
default: device
enum:
- ssid
- ap
- ip
- vlan
- hostname
- os
- model
- device
title: Org Client Sessions count distinct
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_band'
- description: "E.g. \u201CMac\u201D, \u201CiPhone\u201D, \u201CApple watch\u201D"
in: query
name: client_family
schema:
type: string
- description: "E.g. \u201CApple\u201D"
in: query
name: client_manufacture
schema:
type: string
- description: "E.g. \u201C8+\u201D, \u201CXS\u201D"
in: query
name: client_model
schema:
type: string
- description: "E.g. \u201CMojave\u201D, \u201CWindows 10\u201D, \u201CLinux\u201D"
in: query
name: client_os
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgWirelessClientsSessions
tags:
- Orgs Clients - Wireless
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/clients/sessions/search:
get:
description: Search Org Wireless Clients Sessions
operationId: searchOrgWirelessClientSessions
parameters:
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_band'
- description: "E.g. \u201CMac\u201D, \u201CiPhone\u201D, \u201CApple watch\u201D"
in: query
name: client_family
schema:
type: string
- description: "E.g. \u201CApple\u201D"
in: query
name: client_manufacture
schema:
type: string
- description: "E.g. \u201C8+\u201D, \u201CXS\u201D"
in: query
name: client_model
schema:
type: string
- description: Username
in: query
name: client_username
schema:
type: string
- description: "E.g. \u201CMojave\u201D, \u201CWindows 10\u201D, \u201CLinux\u201D"
in: query
name: client_os
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- $ref: '#/components/parameters/psk_id_query'
- description: PSK Name
in: query
name: psk_name
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/WirelessClientSessionsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWirelessClientSessions
tags:
- Orgs Clients - Wireless
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/clients/{client_mac}/coa:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/client_mac'
post:
description: Trigger a CoA (change of authorization) against a client
operationId: reauthOrgDot1xWirelessClient
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: reauthOrgDot1xWirelessClient
tags:
- Utilities Wi-Fi
/api/v1/orgs/{org_id}/clone:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create an Org by cloning from another one. Org Settings, Templates,
Wxlan Tags, Wxlan Tunnels, Wxlan Rules, Org Wlans will be copied. Sites and
Site Groups will not be copied, and therefore, the copied template will not
be applied to any site/sitegroups.
operationId: cloneOrg
requestBody:
content:
application/json:
examples:
example-1:
value:
name: New Org
schema:
$ref: '#/components/schemas/name'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Org'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: cloneOrg
tags:
- Orgs
/api/v1/orgs/{org_id}/crl:
get:
description: Get Org CRL File
operationId: getOrgCrlFile
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgCrlFile
tags:
- Orgs CRL
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/crl/truncate:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: By default, all certs used by recently unclaimed devices within
9 month will be included in CRL. If the list grows too big, you can truncate
it
operationId: truncateOrgCrlFile
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/days_number'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: truncateOrgCrlFile
tags:
- Orgs Cert
/api/v1/orgs/{org_id}/deviceprofiles:
get:
description: Get List of Org Device Profiles
operationId: listOrgDeviceProfiles
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/DeviceprofilesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgDeviceProfiles
tags:
- Orgs Device Profiles
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Device Profile
operationId: createOrgDeviceProfiles
requestBody:
content:
application/json:
examples:
deviceprofile_ap:
value:
aeroscout:
enabled: false
host: aero.pvt.net
locate_connected: true
ble_config:
beacon_enabled: false
beacon_rate: 3
beacon_rate_mode: custom
beam_disabled:
- 1
- 3
- 6
custom_ble_packet_enabled: false
custom_ble_packet_frame: 0x........
custom_ble_packet_freq_msec: 300
eddystone_uid_adv_power: -65
eddystone_uid_beams: 2-4,7
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_adv_power: -65
eddystone_url_beams: 2-4,7
eddystone_url_enabled: true
eddystone_url_freq_msec: 1000
eddystone_url_url: https://www.abc.com
ibeacon_adv_power: -65
ibeacon_beams: 2-4,7
ibeacon_enabled: false
ibeacon_freq_msec: 0
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
power: 10
power_mode: custom
created_time: 0
disable_eth1: false
disable_eth2: false
disable_eth3: false
disable_module: false
for_site: true
height: 0
id: 497f6eca-6276-4993-bfeb-53d9bbba6f08
iot_config:
A1:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A2:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A3:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A4:
enabled: false
name: motion
output: true
pullup: internal
value: 0
DI1:
enabled: false
name: string
pullup: internal
DI2:
enabled: false
name: string
pullup: internal
DO:
enabled: false
name: motion
output: true
pullup: internal
value: 0
ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.1.1
ip6: 2607:f8b0:4005:808::2004
mtu: 0
netmask: 255.255.255.0
netmask6: /32
type: static
type6: static
vlan_id: 1
led:
brightness: 255
enabled: true
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
mesh:
enabled: false
group: 1
role: base
modified_time: 0
name: string
notes: string
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
orientation: 0
orientation_overwrite: true
poe_passthrough: false
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
pwr_config:
base: 0
radio_config:
allow_rrm_disable: false
ant_gain_24: 4
ant_gain_5: 5
ant_gain_6: 5
antenna_mode: default
band_24:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_24_usage: '5'
band_5:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_6:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
indoor_use: false
scanning_enabled: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
switch_config:
enabled: false
eth0:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth1:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth2:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth3:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
module:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
wds:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
type: ap
usb_config:
cacert: string
channel: 3
enabled: true
host: 1.1.1.1
port: 0
type: imagotag
verify_cert: true
vlan_id: 1
vars: {}
x: 0
y: 0
deviceprofile_hub:
value:
additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f1c
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f1d
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f1e
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
property2:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
$ref: '#/components/schemas/deviceprofile'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Deviceprofile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgDeviceProfiles
tags:
- Orgs Device Profiles
/api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}:
delete:
description: Delete Org Device Profile
operationId: deleteOrgDeviceProfile
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgDeviceProfile
tags:
- Orgs Device Profiles
get:
description: Get Org device Profile Details
operationId: getOrgDeviceProfile
responses:
'200':
$ref: '#/components/responses/Deviceprofile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgDeviceProfile
tags:
- Orgs Device Profiles
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/deviceprofile_id'
put:
description: Update Org Device Profile
operationId: updateOrgDeviceProfile
requestBody:
content:
application/json:
examples:
deviceprofile_ap:
value:
aeroscout:
enabled: true
host: string
ble_config:
beacon_enabled: true
beacon_rate: 0
beacon_rate_mode: default
beam_disabled:
- 0
eddystone_uid_adv_power: -100
eddystone_uid_beams: string
eddystone_uid_enabled: true
eddystone_uid_freq_msec: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_adv_power: 0
eddystone_url_beams: string
eddystone_url_enabled: true
eddystone_url_freq_msec: 0
eddystone_url_url: string
ibeacon_adv_power: -100
ibeacon_beams: string
ibeacon_enabled: true
ibeacon_freq_msec: 0
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 1
power_mode: string
created_time: 0
disable_eth1: true
disable_module: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ip_config:
dns:
- string
dns_suffix:
- string
gateway: 192.168.0.1
gateway6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
ip: 192.168.0.1
ip6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
mtu: 0
netmask: 192.168.0.1
netmask6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
type: static
type6: static
vlan_id: 1
mesh:
enabled: true
group: 0
role: base
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
poe_passthrough: true
radio_config:
ant_gain_24: 0
ant_gain_5: 0
band_24:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_24_usage: '24'
band_5:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
scanning_enabled: true
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
switch_config:
enabled: true
eth0:
port_vlan_id: 1
vlan_ids:
- 0
eth1:
port_vlan_id: 1
vlan_ids:
- 0
eth2:
port_vlan_id: 1
vlan_ids:
- 0
eth3:
port_vlan_id: 1
vlan_ids:
- 0
module:
port_vlan_id: 1
vlan_ids:
- 0
wds:
port_vlan_id: 1
vlan_ids:
- 0
usb_config:
cacert: string
channel: 0
enabled: true
host: string
port: 0
type: imagotag
verify_cert: true
deviceprofile_hub:
value:
additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53dabbba6f08
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53dbbbba6f08
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53dcbbba6f08
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 150
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
property2:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
$ref: '#/components/schemas/deviceprofile'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Deviceprofile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgDeviceProfiles
tags:
- Orgs Device Profiles
/api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/assign:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/deviceprofile_id'
post:
description: Assign Org Device Profile to Devices
operationId: assignOrgDeviceProfile
requestBody:
content:
application/json:
examples:
example-1:
value:
macs:
- 5c5b350e0001
- 5c5b350e0003
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/AssignSuccess'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: assignOrgDeviceProfile
tags:
- Orgs Device Profiles
/api/v1/orgs/{org_id}/deviceprofiles/{deviceprofile_id}/unassign:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/deviceprofile_id'
post:
description: Unassign Org Device Profile from Devices
operationId: unassignOrgDeviceProfiles
requestBody:
content:
application/json:
examples:
example-1:
value:
macs:
- 5c5b350e0001
- 5c5b350e0003
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/AssignSuccess'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unassignOrgDeviceProfiles
tags:
- Orgs Device Profiles
/api/v1/orgs/{org_id}/devices:
get:
description: Get List of Org Devices
operationId: listOrgDevices
responses:
'200':
$ref: '#/components/responses/OrgDevices'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgDevices
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/count:
get:
description: Count Org Devices
operationId: countOrgDevices
parameters:
- in: query
name: distinct
schema:
default: model
enum:
- hostname
- site_id
- model
- mac
- version
- ip
- mxtunnel_status
- mxedge_id
- lldp_system_name
- lldp_system_desc
- lldp_port_id
- lldp_mgmt_addr
title: Org Devices count distinct
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: site id
in: query
name: site_id
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- description: AP mac
in: query
name: mac
schema:
type: string
- description: version
in: query
name: version
schema:
type: string
- $ref: '#/components/parameters/ip'
- description: MxTunnel status, up / down
in: query
name: mxtunnel_status
schema:
enum:
- up
- down
type: string
- description: Mist Edge id, if AP is connecting to a Mist Edge
in: query
name: mxedge_id
schema:
type: string
- description: LLDP system name
in: query
name: lldp_system_name
schema:
type: string
- description: LLDP system description
in: query
name: lldp_system_desc
schema:
type: string
- description: LLDP port id
in: query
name: lldp_port_id
schema:
type: string
- description: LLDP management ip address
in: query
name: lldp_mgmt_addr
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgDevices
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/events/count:
get:
description: Count Org Devices Events
operationId: countOrgDeviceEvents
parameters:
- in: query
name: distinct
schema:
default: model
enum:
- org_id
- site_id
- ap
- apfw
- model
- text
- timestamp
- type
title: Org Devices Events count distinct
type: string
- description: site id
in: query
name: site_id
schema:
type: string
- description: AP mac
in: query
name: ap
schema:
type: string
- description: AP Firmware
in: query
name: apfw
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- description: event message
in: query
name: text
schema:
type: string
- description: event time
in: query
name: timestamp
schema:
type: string
- $ref: '#/components/parameters/device_event_type'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgDeviceEvents
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/events/search:
get:
description: Search Org Devices Events
operationId: searchOrgDeviceEvents
parameters:
- description: device mac
in: query
name: mac
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- in: query
name: device_type
schema:
$ref: '#/components/schemas/device_type'
- description: event message
in: query
name: text
schema:
type: string
- description: event time
in: query
name: timestamp
schema:
type: string
- $ref: '#/components/parameters/device_event_type'
- description: Return last/recent event for passed in field
example: port_id
in: query
name: last_by
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DeviceEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgDeviceEvents
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/last_config/count:
get:
description: Counts the number of entries in device config history for distinct
field with given filters
operationId: countOrgDeviceLastConfigs
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- in: query
name: distinct
schema:
enum:
- mac
- version
- name
- site_id
title: Org Devices Last Configs count distinct
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgDeviceLastConfigs
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/last_config/search:
get:
description: Search Device Last Configs
operationId: searchOrgDeviceLastConfigs
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- in: query
name: mac
schema:
type: string
- in: query
name: name
schema:
type: string
- in: query
name: version
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ConfigsHistorySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgDeviceLastConfigs
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/radio_macs:
get:
description: 'For some scenarios like E911 or security systems, the BSSIDs are
required to identify which AP the client is connecting to. Then the location
of the AP can be used as the approximate location of the client.
Each radio MAC can have 16 BSSIDs (enumerate the last octet from 0-F)'
operationId: listOrgApsMacs
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/RadioMacs'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgApsMacs
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/search:
get:
description: Search Org Devices
operationId: searchOrgDevices
parameters:
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: site id
in: query
name: site_id
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- description: AP mac
in: query
name: mac
schema:
type: string
- description: version
in: query
name: version
schema:
type: string
- description: power_constrained
in: query
name: power_constrained
schema:
type: boolean
- $ref: '#/components/parameters/ip'
- description: MxTunnel status, up / down
in: query
name: mxtunnel_status
schema:
enum:
- up
- down
type: string
- description: Mist Edge id, if AP is connecting to a Mist Edge
in: query
name: mxedge_id
schema:
type: string
- description: LLDP system name
in: query
name: lldp_system_name
schema:
type: string
- description: LLDP system description
in: query
name: lldp_system_desc
schema:
type: string
- description: LLDP port id
in: query
name: lldp_port_id
schema:
type: string
- description: LLDP management ip address
in: query
name: lldp_mgmt_addr
schema:
type: string
- description: Bandwith of band_24
in: query
name: band_24_bandwith
schema:
type: integer
- description: Bandwith of band_5
in: query
name: band_5_bandwith
schema:
type: integer
- description: Bandwith of band_6
in: query
name: band_6_bandwith
schema:
type: integer
- description: Channel of band_24
in: query
name: band_24_channel
schema:
type: integer
- description: Channel of band_5
in: query
name: band_5_channel
schema:
type: integer
- description: Channel of band_6
in: query
name: band_6_channel
schema:
type: integer
- description: Port speed of eth0
in: query
name: eth0_port_speed
schema:
type: integer
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DevicesSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgDevices
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/devices/upgrade:
get:
description: Get List of Org multi devces upgrades
operationId: listOrgMultiSitesDevicesUpgrades
responses:
'200':
$ref: '#/components/responses/OrgDeviceUpgradeMulti'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMultiSitesDevicesUpgrades
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Upgrade Multiple Sites
operationId: upgradeOrgMultiSitesDevices
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/device_upgrade_org_multi'
responses:
'200':
$ref: '#/components/responses/Uuid'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeOrgMultiSitesDevices
tags:
- Utilities Upgrade
/api/v1/orgs/{org_id}/devices/upgrade/{upgrade_id}:
get:
description: Get Multi Site Upgrade
operationId: getOrgMultiSitesUpgrade
responses:
'200':
$ref: '#/components/responses/OrgDeviceUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMultiSitesUpgrade
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/upgrade_id'
/api/v1/orgs/{org_id}/evpn_topologies:
get:
description: Get List of the existing Org EVPN topologies
operationId: listOrgEvpnTopologies
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/EvpnTopologiesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgEvpnTopologies
tags:
- Orgs EVPN Topologies
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "While all the `evpn_id` / `downlink_ips` can be specifidd by hand,\
\ the easiest way is to call the `build_vpn_topology` API, allowing you to\
\ examine the diff, and update it yourself. You can also simply call it with\
\ `overwrite=true` which will apply the updates for you.\n\n**Notes:**\n1.\
\ You can use `core` / `distribution` / `access` to create a CLOS topology\n\
2. You can also use `core` / `distribution` to form a 2-tier EVPN topology\
\ where ESI-Lag is configured distribution to connect to access switches\n\
3. In a small/medium campus, `collapsed-core` can be used where core switches\
\ are the inter-connected to do EVPN\n4. The API uses a few pre-defined parameters\
\ and best-practices to generate the configs. It can be customized by using\
\ `evpn_options` in Site Setting / Network Template. (e.g. a different subnet\
\ for the underlay)\n\n#### Collapsed Core\nIn a small-medium campus, EVPN\
\ can also be enabled only at the core switches (up to 4) by assigning all\
\ participating switches with `collapsed-core role`. When there are more than\
\ 2 switches, a ring-like topology will be formed.\n\n#### ESI-Lag\nIf the\
\ access switchess does not have EVPN support, you can take advantage of EVPN\
\ by setting up ESI-Lag on distribution switches\n\n#### Leaf / Access / Collapsed-Core\n\
For leaf nodes in a EVPN topology, you\u2019d have to configure the IPs for\
\ networks that would participate in EVPN. Optionally, VRFs to isolate traffic\
\ from one tenant verus another"
operationId: createOrgEvpnTopology
requestBody:
content:
application/json:
examples:
Example:
value:
id: 9197ec96-4c8d-529f-c595-035895e688b2
name: CC
pod_names:
'1': default
'2': default
switches:
- mac: 5c5b35000003
role: collapsed-core
- mac: 5c5b35000004
role: collapsed-core
schema:
$ref: '#/components/schemas/junos_evpn_topology'
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgEvpnTopology
tags:
- Orgs EVPN Topologies
/api/v1/orgs/{org_id}/evpn_topologies/{evpn_topology_id}:
delete:
description: Delete the Org EVPN Topology
operationId: deleteOrgEvpnTopology
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgEvpnTopology
tags:
- Orgs EVPN Topologies
get:
description: Get One EVPN Topology Detail
operationId: getOrgEvpnTolopogy
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgEvpnTolopogy
tags:
- Orgs EVPN Topologies
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/evpn_topology_id'
put:
description: Update the EVPN Topolgy
operationId: updateOrgEvpnTopology
requestBody:
content:
application/json:
examples:
example-1:
value:
overwrite: false
switches:
- mac: 5c5b35000003
role: collapsed-core
- mac: 5c5b35000004
role: none
schema:
$ref: '#/components/schemas/junos_evpn_topology'
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgEvpnTopology
tags:
- Orgs EVPN Topologies
/api/v1/orgs/{org_id}/gatewaytemplates:
get:
description: Get List of Org Gateway Templates
operationId: listOrgGatewayTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/GatewaytemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgGatewayTemplates
tags:
- Orgs Gateway Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Gateway Template
operationId: createOrgGatewayTemplate
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f31
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f32
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f33
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 0
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 0
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
community:
- '65003:10'
exclude_as_path:
- '65002'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
summarize: 192.168.0.0/16
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_name:
- string
vpn_path:
- string
property2:
terms:
- action:
accept: true
community:
- '65003:10'
exclude_as_path:
- '65002'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
summarize: 192.168.0.0/16
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_name:
- string
vpn_path:
- string
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
$ref: '#/components/schemas/gateway_template'
description: Gateway Template
responses:
'200':
$ref: '#/components/responses/Gatewaytemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgGatewayTemplate
tags:
- Orgs Gateway Templates
/api/v1/orgs/{org_id}/gatewaytemplates/{gatewaytemplate_id}:
delete:
description: Delete Organization Gateway Template
operationId: deleteOrgGatewayTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgGatewayTemplate
tags:
- Orgs Gateway Templates
get:
description: Get Organization Gateway Template details
operationId: getOrgGatewayTemplate
responses:
'200':
$ref: '#/components/responses/Gatewaytemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgGatewayTemplate
tags:
- Orgs Gateway Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/gatewaytemplate_id'
put:
description: Update Organization Gateway Template
operationId: updateOrgGatewayTemplate
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f34
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f35
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f36
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 0
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 0
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
community:
- '65003:10'
exclude_as_path:
- '65002'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
summarize: 192.168.0.0/16
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_name:
- string
vpn_path:
- string
property2:
terms:
- action:
accept: true
community:
- '65003:10'
exclude_as_path:
- '65002'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
summarize: 192.168.0.0/16
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_name:
- string
vpn_path:
- string
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
$ref: '#/components/schemas/gateway_template'
description: Gateway Template
responses:
'200':
$ref: '#/components/responses/Gatewaytemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgGatewayTemplate
tags:
- Orgs Gateway Templates
/api/v1/orgs/{org_id}/guests:
get:
description: Get List of Org Guest Authorizations
operationId: listOrgGuestAuthorizations
responses:
'200':
$ref: '#/components/responses/GuestsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgGuestAuthorizations
tags:
- Orgs Guests
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/guests/count:
get:
description: Count Org Authorized Guest
operationId: countOrgGuestAuthorizations
parameters:
- in: query
name: distinct
schema:
default: auth_method
enum:
- auth_method
- ssid
- company
title: Org Guests count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgGuestAuthorizations
tags:
- Orgs Guests
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/guests/search:
get:
description: Search Authorized Guest
operationId: searchOrgGuestAuthorization
parameters:
- example: 00000000-0000-0000-0000-000000000000
in: query
name: wlan_id
schema:
type: string
- in: query
name: auth_method
schema:
type: string
- in: query
name: ssid
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/GuestsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgGuestAuthorization
tags:
- Orgs Guests
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/guests/{guest_mac}:
delete:
description: Delete Guest Authorization
operationId: deleteOrgGuestAuthorization
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgGuestAuthorization
tags:
- Orgs Guests
get:
description: Get Guest Authorization
operationId: getOrgGuestAuthorization
responses:
'200':
$ref: '#/components/responses/Guest'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgGuestAuthorization
tags:
- Orgs Guests
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/guest_mac'
put:
description: Update Guest Authorization
operationId: updateOrgGuestAuthorization
requestBody:
content:
application/json:
examples:
Example:
value:
authorized: true
authorized_expiring_time: 0
authorized_time: 0
company: string
email: user@example.com
field1: string
field2: string
field3: string
field4: string
mac: string
minutes: 0
name: string
schema:
$ref: '#/components/schemas/guest'
responses:
'200':
$ref: '#/components/responses/Guest'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgGuestAuthorization
tags:
- Orgs Guests
/api/v1/orgs/{org_id}/idpprofiles:
get:
description: get the list of Org IDP Profiles
operationId: listOrgIdpProfiles
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/IdpProfileArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgIdpProfiles
tags:
- Orgs IDP Profiles
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org IDP Profile
operationId: createOrgIdpProfile
requestBody:
content:
application/json:
examples:
Example:
value:
base_profile: strict
name: relaxed
overwrites:
- action: alert
matching:
attack_name:
- HTTP:INVALID:HDR-FIELD
dst_subnet:
- 63.1.2.0/24
severity:
- major
schema:
$ref: '#/components/schemas/idp_profile'
responses:
'200':
$ref: '#/components/responses/IdpProfile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgIdpProfile
tags:
- Orgs IDP Profiles
/api/v1/orgs/{org_id}/idpprofiles/{idpprofile_id}:
delete:
description: Delete Org IDP Profile
operationId: deleteOrgIdpProfile
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgIdpProfile
tags:
- Orgs IDP Profiles
get:
description: Get Org IDP Profile
operationId: getOrgIdpProfile
responses:
'200':
$ref: '#/components/responses/IdpProfile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgIdpProfile
tags:
- Orgs IDP Profiles
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/idpprofile_id'
put:
description: Update Org IDP Profile
operationId: updateOrgIdpProfile
requestBody:
content:
application/json:
examples:
idpprofile:
value:
base_profile: strict
name: relaxed
overwrites:
- action: alert
matching:
attack_name:
- HTTP:INVALID:HDR-FIELD
dst_subnet:
- 63.1.2.0/24
severity:
- major
schema:
$ref: '#/components/schemas/idp_profile'
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgIdpProfile
tags:
- Orgs IDP Profiles
/api/v1/orgs/{org_id}/insights/sites-sle:
get:
description: Get Org Sites SLE
operationId: getOrgSitesSle
parameters:
- in: query
name: sle
schema:
enum:
- wan
- wired
- wifi
title: org_site_sle_type
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/OrgSiteSle'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSitesSle
tags:
- Orgs SLEs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/insights/{metric}:
get:
description: Get Org SLEs (all/worst sites, Mx Edges, ...)
operationId: getOrgSle
parameters:
- description: see [listInsightMetrics](/#operation/listInsightMetrics) for
more details
in: query
name: sle
schema:
type: string
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
responses:
'200':
$ref: '#/components/responses/InsightMetricOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSle
tags:
- Orgs SLEs
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/metric'
/api/v1/orgs/{org_id}/inventory:
get:
description: "Get Org Inventory\n\n### VC (Virtual-Chassis) Management\nIdeally\
\ VC should be managed as a single device - where - one managed entity where\
\ config / monitoring is anchored against (with a stable identify MAC) - all\
\ members appears in the inventory\n\nIn our implementation, we strive to\
\ achieve that without manual user configurations by \n1. during claim or\
\ adoption a VC, we require FPC0 to exist and will use its MAC as identify\
\ for the entire chassis\n2. other VC members will be automatically populated\
\ when they\u2019re all present\n\nThe perceivable result is \n1. from `/sites/:site_id/stats/devices/:fpc0_mac`\
\ API, you\u2019d see the VC where module_stat contains the VC members \n\
2. from `/orgs/:org_id/inventory?vc=true` API, you\u2019d see all VC members\
\ with vc_mac pointing to the FPC0"
operationId: getOrgInventory
parameters:
- description: device serial
in: query
name: serial
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- description: MAC address
in: query
name: mac
schema:
type: string
- description: site id if assigned, null if not assigned
in: query
name: site_id
schema:
type: string
- in: query
name: vc_mac
schema:
type: string
- in: query
name: vc
schema:
type: string
- in: query
name: unassigned
schema:
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/OrgInventory'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgInventory
tags:
- Orgs Inventory
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Add Device to Org Inventory with the device claim codes
operationId: addOrgInventory
requestBody:
content:
application/json:
examples:
example-1:
value:
- 6JG8E-PTFV2-A9Z2N
- DVH4V-SNMSZ-PDXBR
schema:
$ref: '#/components/schemas/claim_codes'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OrgInventoryAdd'
'400':
content:
application/json:
examples:
example-1:
value: {}
schema:
properties: {}
type: object
description: if none of the entries are valid
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addOrgInventory
tags:
- Orgs Inventory
put:
description: Update Org Inventory
operationId: updateOrgInventoryAssignment
requestBody:
content:
application/json:
examples:
assign:
value:
disable_auto_config: false
macs:
- 5c5b350e0001
managed: false
no_reassign: false
op: assign
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
delete:
value:
macs:
- 5c5b350e0001
op: delete
serials:
- FXLH2015150025
- FXLH2015150026
schema:
$ref: '#/components/schemas/inventory_update'
responses:
'200':
$ref: '#/components/responses/OrgInventoryChanges'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgInventoryAssignment
tags:
- Orgs Inventory
/api/v1/orgs/{org_id}/inventory/create_ha_cluster:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create HA Cluster from unassigned Gateways
operationId: createOrgGatewayHaCluster
requestBody:
content:
application/json:
examples:
Example:
value:
disable_auto_config: true
managed: true
nodes:
- mac: aff827549235
- mac: 8396cd006c8c
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
schema:
$ref: '#/components/schemas/ha_cluster_config'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgGatewayHaCluster
tags:
- Orgs Devices - WAN Cluster
/api/v1/orgs/{org_id}/inventory/delete_ha_cluster:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Delete HA Cluster
After HA cluster deleted, both of the nodes will be unassigned.'
operationId: deleteOrgGatewayHaCluster
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ha_cluster_delete'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgGatewayHaCluster
tags:
- Orgs Devices - WAN Cluster
/api/v1/orgs/{org_id}/inventory/reevaluate_auto_assignment:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Reevaluate Auto Assignment
operationId: reevaluateOrgAutoAssignment
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: reevaluateOrgAutoAssignment
tags:
- Orgs Inventory
/api/v1/orgs/{org_id}/inventory/replace:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "It\u2019s a common request we get from the customers. When a AP\
\ HW has problem and need a replacement, they would want to copy the existing\
\ attributes (Device Config) of this old AP to the new one. It can be done\
\ by providing the MAC of a device that\u2019s currently in the inventory\
\ but not assigned. The Device replaced will become unassigned.\n\nThis API\
\ also supports replacement of Mist Edges. This API copies device agnostic\
\ attributes from old Mist edge to new one.\nMist manufactured Mist Edges\
\ will be reset to factory settings but will still be in Inventory.Brownfield\
\ or VM\u2019s will be\ndeleted from Inventory\n\n**Note:** For Gateway devices\
\ only like-for-like replacements (can only replace a SRX320 with a SRX320\
\ and not some otehr model) are allowed."
operationId: replaceOrgDevices
requestBody:
content:
application/json:
examples:
example-1:
value:
discard: []
inventory_mac: 5c5b35000301
mac: 5c5b35000101
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
schema:
$ref: '#/components/schemas/replace_device'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OrgInventoryChanges'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: replaceOrgDevices
tags:
- Orgs Inventory
/api/v1/orgs/{org_id}/invites:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: If the request is successful, an email will also be sent to the
user with a link to ```https://manage.mist.com/verify/invite?token=:token&expire=1459632743&org=OrgName```
operationId: inviteOrgAdmin
requestBody:
content:
application/json:
examples:
example-1:
value:
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: inviteOrgAdmin
tags:
- Orgs Admins
/api/v1/orgs/{org_id}/invites/{invite_id}:
delete:
description: Delete Admin Invite
operationId: uninviteOrgAdmin
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uninviteOrgAdmin
tags:
- Orgs Admins
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/invite_id'
put:
description: Update Admin Invite
operationId: updateOrgAdminInvite
requestBody:
content:
application/json:
examples:
example-1:
value:
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgAdminInvite
tags:
- Orgs Admins
/api/v1/orgs/{org_id}/jsi/devices:
get:
description: Get List of Org devices that connected to JSI
operationId: listOrgJsiDevices
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- in: query
name: model
schema:
type: string
- in: query
name: serial
schema:
type: string
- in: query
name: mac
schema:
type: string
responses:
'200':
$ref: '#/components/responses/JsiDevices'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgJsiDevices
tags:
- Orgs JSI
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/jsi/devices/outbound_ssh_cmd:
get:
description: Adopt JSI devices
operationId: adoptOrgJsiDevice
responses:
'200':
$ref: '#/components/responses/JunosRegisterCmd'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: adoptOrgJsiDevice
tags:
- Orgs JSI
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/jsi/devices/{device_mac}/shell:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
post:
description: Create Shell Session
operationId: createOrgJsiDeviceShellSession
responses:
'200':
$ref: '#/components/responses/JsiShellSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgJsiDeviceShellSession
tags:
- Orgs JSI
/api/v1/orgs/{org_id}/jsi/devices/{device_mac}/upgrade:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
post:
description: Upgrade
operationId: upgradeOrgJsiDevice
requestBody:
content:
application/json:
examples:
example-1:
value:
version: 3.1.5
schema:
$ref: '#/components/schemas/version'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeOrgJsiDevice
tags:
- Utilities Upgrade
/api/v1/orgs/{org_id}/jsi/inventory:
get:
description: Get List of all devices purchased from the accounts associated
with the Org
operationId: listOrgJsiPastPurchases
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- in: query
name: model
schema:
type: string
- in: query
name: serial
schema:
type: string
responses:
'200':
$ref: '#/components/responses/JsiInventory'
'400':
$ref: '#/components/responses/JsiInventoryError'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgJsiPastPurchases
tags:
- Orgs JSI
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/licenses:
get:
description: Get the list of licenses
operationId: getOrgLicencesSummary
responses:
'200':
$ref: '#/components/responses/Licence'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgLicencesSummary
tags:
- Orgs Licenses
parameters:
- $ref: '#/components/parameters/org_id'
put:
description: "Move, Undo Move or Delete Org License to Another Org\nIf the admin\
\ has admin privilege against the `org_id` and `dst_org_id`, he can move some\
\ of the licenses to another Org. Given that: \n1. the specified license is\
\ currently active \n2. there\u2019s enough licenses left in the specified\
\ license (by subscription_id) \n3. there will still be enough entitled licenses\
\ for the type of license after the amendment"
operationId: moveOrDeleteOrgLicenseToAnotherOrg
requestBody:
content:
application/json:
examples:
annotate:
value:
notes: customer notes
op: annotate
subscription_id: SUB-000144
delete:
value:
op: delete
subscription_id: SUB-0000144
move:
value:
dst_org_id: 3eff35f7-c218-894e-bca2-24e5325601cc
op: amend
quantity: 10
subscription_id: SUB-0000144
undo_move:
value:
amendment_id: 2b9116ab-cd1e-e897-6e08-31fccd88e792
op: unamend
schema:
$ref: '#/components/schemas/org_license_action'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: moveOrDeleteOrgLicenseToAnotherOrg
tags:
- Orgs Licenses
/api/v1/orgs/{org_id}/licenses/usages:
get:
description: 'Get Licenses Usage by Sites
This shows license usage (i.e. needed) based on the features enabled for the
site.'
operationId: getOrgLicencesBySite
responses:
'200':
$ref: '#/components/responses/LicenceUsage'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgLicencesBySite
tags:
- Orgs Licenses
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/logs:
get:
description: Get List of change logs for the current Org
operationId: listOrgLogs
parameters:
- description: site id
in: query
name: site_id
schema:
type: string
- description: admin name or email
in: query
name: admin_name
schema:
type: string
- description: message
in: query
name: message
schema:
type: string
- description: sort order
in: query
name: sort
schema:
enum:
- timestamp
- -timestamp
- site_id
- admin_id
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/LogsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgLogs
tags:
- Orgs Logs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/logs/count:
get:
description: Count by Distinct Attributes of Audit Logs
operationId: countOrgLogs
parameters:
- in: query
name: distinct
schema:
default: admin_name
enum:
- admin_id
- admin_name
- message
- site_id
title: Org Logs count distinct
type: string
- in: query
name: admin_id
schema:
type: string
- in: query
name: admin_name
schema:
type: string
- in: query
name: site_id
schema:
type: string
- in: query
name: message
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgLogs
tags:
- Orgs Logs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/maps/import:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Import data from files is a multipart POST which has a file, an
optional json, and an optional csv, to create floorplan, assign matching inventory
to specific site, place ap if name or mac matches
### CSV File Format
```csv
Vendor AP name,Mist AP Mac
US Office AP-2 - 5c:5b:35:00:00:02,5c5b35000002
```'
operationId: importOrgMaps
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_org_import_file'
responses:
'200':
$ref: '#/components/responses/MapImport'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgMaps
tags:
- Orgs Maps
/api/v1/orgs/{org_id}/mist_nac/test_idp:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "IDP Credential Validation. The output will be available through\
\ websocket. As there can be multiple command issued against the same device\
\ at the same time and the output all goes through the same websocket stream,\
\ `session` is introduced for demux.\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n``` json\n{\n \"subscribe\": \"orgs/:org_id/mist_nac/test_idp\"\
\n}\n\n ```\n\n### Response (no idp can be found)\n\n``` json\n{\n \"event\"\
: \"data\",\n \"channel\": \"/orgs/:org_id/mist_nac/test_idp\",\n \"\
status\": \n \"data\": {\n \"status\": \"failure\",\n \"\
error\": \"No matching IDP found\"\n }\n}\n\n ```\n\n### Response OK\n\n\
``` json\n{\n \"event\": \"data\",\n \"channel\": \"/orgs/:org_id/mist_nac/test_idp\"\
,\n \"status\": \n \"data\": {\n \"status\": \"success\",\n \
\ \"idp_id\": \"915793c0-1355-4e98-b1c0-23df2227b357\",\n \"\
idp_type\": \"ldap\",\n // more attributes will be added later\n \
\ }\n}\n\n ```\n\n### Response Invalid Credentials\n\n``` json\n{\n \"\
event\": \"data\",\n \"channel\": \"/orgs/:org_id/mist_nac/test_idp\",\n\
\ \"status\": \n \"data\": {\n \"status\": \"failure\",\n \
\ \"error\": \"Invalid Credentials\",\n \"idp_id\": \"915793c0-1355-4e98-b1c0-23df2227b357\"\
,\n \"idp_type\": \"ldap\",\n }\n}\n\n ```"
operationId: validateOrgIdpCredential
requestBody:
content:
application/json:
examples:
Example:
value:
password: xxxxxx
username: suriyas@juniper.net
schema:
$ref: '#/components/schemas/username_password'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: validateOrgIdpCredential
tags:
- Orgs NAC IDP
/api/v1/orgs/{org_id}/mxclusters:
get:
description: Get List of Org MxEdge Clusters
operationId: listOrgMxEdgeClusters
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MxclustersArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMxEdgeClusters
tags:
- Orgs MxClusters
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create MxCluster
operationId: createOrgMxEdgeCluster
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
radsec:
enabled: true
server_name: string
servers:
- host: string
port: 0
tunterm_ap_subnets:
- string
tunterm_hosts:
- string
schema:
$ref: '#/components/schemas/mxcluster'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxcluster'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgMxEdgeCluster
tags:
- Orgs MxClusters
/api/v1/orgs/{org_id}/mxclusters/{mxcluster_id}:
delete:
description: Delete Org MXEdge Cluster
operationId: deleteOrgMxEdgeCluster
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgMxEdgeCluster
tags:
- Orgs MxClusters
get:
description: Get Org MxEdge Cluster Details
operationId: getOrgMxEdgeCluster
responses:
'200':
$ref: '#/components/responses/Mxcluster'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxEdgeCluster
tags:
- Orgs MxClusters
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxcluster_id'
put:
description: Update Org MxEdge Cluster
operationId: updateOrgMxEdgeCluster
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
radsec:
enabled: true
server_name: string
servers:
- host: string
port: 0
tunterm_ap_subnets:
- string
tunterm_hosts:
- string
schema:
$ref: '#/components/schemas/mxcluster'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxcluster'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgMxEdgeCluster
tags:
- Orgs MxClusters
/api/v1/orgs/{org_id}/mxedges:
get:
description: Get List of Org MxEdges
operationId: listOrgMxEdges
parameters:
- description: filter for site level mist edges
in: query
name: for_sites
schema:
default: any
enum:
- any
- 'true'
- 'false'
title: mxedge_for_site
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/MxedgesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMxEdges
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create MxEdge
operationId: createOrgMxEdge
requestBody:
content:
application/json:
examples:
example-1:
value:
model: ME-100
mxcluster_id: 572586b7-f97b-a22b-526c-8b97a3f609c4
mxedge_mgmt: {}
name: Guest
ntp_servers: []
oob_ip_config: {}
services:
- tunterm
tunterm_ip_config:
gateway: 10.2.1.254
ip: 10.2.1.1
netmask: 255.255.255.0
tunterm_port_config:
downstream_ports:
- '0'
- '1'
- '2'
- '3'
separate_upstream_downstream: true
upstream_port_vlan_id: 1
upstream_ports:
- '0'
- '1'
- '2'
- '3'
tunterm_switch_config:
'0':
port_vlan_id: 1
vlan_ids:
- 5
- 2
- 3
enabled: true
versions:
mxagent: 2.4.194
tunterm: 0.1.928-1
schema:
$ref: '#/components/schemas/mxedge'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgMxEdge
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/assign:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Assign Org MxEdge to Site
operationId: assignOrgMxEdgeToSite
requestBody:
content:
application/json:
examples:
example-1:
value:
mxedge_ids:
- 387804a7-3474-85ce-15a2-f9a9684c9c90
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
schema:
$ref: '#/components/schemas/mxedges_assign'
description: Request Body
responses:
'200':
$ref: '#/components/responses/AssignSuccess'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: assignOrgMxEdgeToSite
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/claim:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "For a Mist Edge in default state, it will show a random claim\
\ code like `135-546-673` which you can \u201Cclaim\u201D it into your Org"
operationId: claimOrgMxEdge
requestBody:
content:
application/json:
examples:
example-1:
value:
code: 135-546-673
schema:
$ref: '#/components/schemas/code'
description: Request Body
responses:
'200':
$ref: '#/components/responses/ClaimMxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: claimOrgMxEdge
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/count:
get:
description: Count Org Mist Edges
operationId: countOrgMxEdges
parameters:
- in: query
name: distinct
schema:
default: model
enum:
- model
- mxcluster_id
- distro
- tunterm_version
- site_id
title: Org MxEdge count distinct
type: string
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge site id
in: query
name: site_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- description: model name
in: query
name: model
schema:
type: string
- description: debian code name(buster, bullseye)
in: query
name: distro
schema:
type: string
- description: tunterm version
in: query
name: tunterm_version
schema:
type: string
- description: sort options, -prefix represents DESC order, default is -last_seen
in: query
name: sort
schema:
type: string
- description: whether to return device stats, default is false
in: query
name: stats
schema:
type: boolean
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgMxEdges
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/mxedges/events/count:
get:
description: Count Org Mist Edge Events
operationId: countOrgSiteMxEdgeEvents
parameters:
- in: query
name: distinct
schema:
default: mxedge_id
enum:
- mxedge_id
- type
- mxcluster_id
- package
title: Org Mx Edge events count distinct
type: string
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- $ref: '#/components/parameters/mxedge_event_type'
- description: service running on mist edge(mxagent, tunterm etc)
in: query
name: service
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgSiteMxEdgeEvents
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/mxedges/events/search:
get:
description: Search Org Mist Edge Events
operationId: searchOrgMistEdgeEvents
parameters:
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- $ref: '#/components/parameters/mxedge_event_type'
- description: service running on mist edge(mxagent, tunterm etc)
in: query
name: service
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MxEdgeEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgMistEdgeEvents
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/mxedges/search:
get:
description: Search Org Mist Edges
operationId: searchOrgMxEdges
parameters:
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge site id
in: query
name: site_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- description: model name
in: query
name: model
schema:
type: string
- description: debian code name(buster, bullseye)
in: query
name: distro
schema:
type: string
- description: tunterm version
in: query
name: tunterm_version
schema:
type: string
- description: sort options, -prefix represents DESC order, default is -last_seen
in: query
name: sort
schema:
type: string
- description: whether to return device stats, default is false
in: query
name: stats
schema:
type: boolean
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/MxEdgeSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgMxEdges
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/mxedges/unassign:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Unassign Org MxEdge from Site
operationId: unassignOrgMxEdgeFromSite
requestBody:
content:
application/json:
examples:
example-1:
value:
mxedge_ids:
- 387804a7-3474-85ce-15a2-f9a9684c9c90
schema:
$ref: '#/components/schemas/mxedges_unassign'
description: Request Body
responses:
'200':
$ref: '#/components/responses/AssignSuccess'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unassignOrgMxEdgeFromSite
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/upgrade:
get:
description: Get List of Org Mist Edge Upgrades
operationId: listOrgMxEdgeUpgrades
responses:
'200':
$ref: '#/components/responses/MxEdgeUpgradesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMxEdgeUpgrades
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Upgrade Mist Edges
operationId: upgradeOrgMxEdges
requestBody:
content:
application/json:
examples:
example-1:
value:
channel: stable
mxedge_ids:
- 387804a7-3474-85ce-15a2-f9a9684c9c90
versions:
mxagent: current
tunterm: default
schema:
$ref: '#/components/schemas/mxedge_upgrade_multi'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeOrgMxEdges
tags:
- Utilities Upgrade
/api/v1/orgs/{org_id}/mxedges/upgrade/{upgrade_id}:
get:
description: Get Mist Edge Upgrade
operationId: getOrgMxEdgeUpgrade
responses:
'200':
$ref: '#/components/responses/MxEdgeUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxEdgeUpgrade
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/upgrade_id'
/api/v1/orgs/{org_id}/mxedges/version:
get:
description: Get Mist Edge Upgrade Information
operationId: getOrgMxEdgeUpgradeInfo
parameters:
- description: upgrade channel to follow, stable (default) / beta / alpha
in: query
name: channel
schema:
default: stable
enum:
- stable
- beta
- alpha
type: string
responses:
'200':
$ref: '#/components/responses/MxedgeUpgradeInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxEdgeUpgradeInfo
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}:
delete:
description: Delete Org MxEdge
operationId: deleteOrgMxEdge
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgMxEdge
tags:
- Orgs MxEdges
get:
description: Get Org MxEdge details
operationId: getOrgMxEdge
responses:
'200':
$ref: '#/components/responses/Mxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxEdge
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
put:
description: Update Org MxEdge
operationId: updateOrgMxEdge
requestBody:
content:
application/json:
examples:
example-1:
value:
magic: string
model: string
mxcluster_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
ntp_servers:
- string
services:
- tunterm
tunterm_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
tunterm_port_config:
downstream_ports:
- string
separate_upstream_downstream: true
upstream_port_vlan_id: 1
upstream_ports:
- string
schema:
$ref: '#/components/schemas/mxedge'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgMxEdge
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/image/{image_number}:
delete:
description: Remove MxEdge Image
operationId: deleteOrgMxEdgeImage
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgMxEdgeImage
tags:
- Orgs MxEdges
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
- in: path
name: image_number
required: true
schema:
maximum: 3
minimum: 1
type: integer
post:
description: Attach up to 3 images to a mxedge
operationId: addOrgMxEdgeImage
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/image_import'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addOrgMxEdgeImage
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/restart:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
post:
description: In the case where a Mist Edge is replaced, you would need to unregister
it. Which disconnects the currently the connected Mist Edge and allow another
to register.
operationId: restartOrgMxEdge
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: restartOrgMxEdge
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/services/tunterm/bounce_port:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
post:
description: Bounce TunTerm Data Ports
operationId: bounceOrgMxEdgeDataPorts
parameters: []
requestBody:
content:
application/json:
examples:
example-1:
value:
ports:
- '0'
- '2'
example-2:
value:
hold_time: 0
ports:
- string
schema:
$ref: '#/components/schemas/utils_tunterm_bounce_port'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: bounceOrgMxEdgeDataPorts
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/services/{name}/{action}:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
- in: path
name: name
required: true
schema:
enum:
- tunterm
- radsecproxy
- mxagent
- mxocproxy
- mxdas
title: mxedge_service_name
type: string
- description: restart or start or stop
in: path
name: action
required: true
schema:
enum:
- restart
- start
- stop
title: mxedge_service_action
type: string
post:
description: Control Services on a Mist Edge
operationId: controlOrgMxEdgeServices
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: controlOrgMxEdgeServices
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/support:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
post:
description: Support / Upload Mist Edge support files
operationId: uploadOrgMxEdgeSupportFiles
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uploadOrgMxEdgeSupportFiles
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxedges/{mxedge_id}/unregister:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
post:
description: In the case where a Mist Edge is replaced, you would need to unregister
it. Which disconnects the currently the connected Mist Edge and allow another
to register.
operationId: unregisterOrgMxEdge
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unregisterOrgMxEdge
tags:
- Orgs MxEdges
/api/v1/orgs/{org_id}/mxtunnels:
get:
description: Get List of Org MxTunnels
operationId: listOrgMxTunnels
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MxtunnelsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMxTunnels
tags:
- Orgs MxTunnels
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create MxTunnel
operationId: createOrgMxTunnel
requestBody:
content:
application/json:
examples:
example-1:
value:
cluster_ids:
- string
created_time: 0
for_site: true
hello_interval: 60
hello_retries: 7
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ipsec:
dns_servers:
- string
enabled: true
extra_routes:
- dest: string
next_hop: 192.168.0.1
split_tunnel: true
use_mxedge: true
modified_time: 0
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vlan_ids:
- 0
schema:
$ref: '#/components/schemas/mxtunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgMxTunnel
tags:
- Orgs MxTunnels
/api/v1/orgs/{org_id}/mxtunnels/{mxtunnel_id}:
delete:
description: Delete Org MxTunnel
operationId: deleteOrgMxTunnel
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgMxTunnel
tags:
- Orgs MxTunnels
get:
description: Get Org MxTunnel Details
operationId: getOrgMxTunnel
responses:
'200':
$ref: '#/components/responses/Mxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxTunnel
tags:
- Orgs MxTunnels
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxtunnel_id'
put:
description: Update Org MxTunnel
operationId: updateOrgMxTunnel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mxtunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Mxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgMxTunnel
tags:
- Orgs MxTunnels
/api/v1/orgs/{org_id}/nac_clients/count:
get:
description: Count by Distinct Attributes of NAC Clients
operationId: countOrgNacClients
parameters:
- description: NAC Policy Rule ID, if matched
in: query
name: distinct
schema:
default: type
enum:
- type
- last_nacrule_id
- auth_type
- last_vlan_id
- last_nas_vendor
- last_username
- last_ap
- mac
- last_ssid
- last_status
- mdm_compliance_status
- mdm_provider
title: Org Nac Clients count distinct
type: string
- description: NAC Policy Rule ID, if matched
in: query
name: last_nacrule_id
schema:
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cdevice-auth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: last_vlan_id
schema:
type: string
- description: vendor of NAS device
in: query
name: last_nas_vendor
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
type: string
- description: SSID
in: query
name: last_ssid
schema:
type: string
- description: Username presented by the client
in: query
name: last_username
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: site id if assigned, null if not assigned
in: query
name: site_id
schema:
type: string
- description: AP MAC connected to by client
in: query
name: last_ap
schema:
type: string
- description: MAC address
in: query
name: mac
schema:
type: string
- description: "Connection status of client i.e \u201Cpermitted\u201D, \u201C\
denied, \u201Csession_ended\u201D"
in: query
name: last_status
schema:
type: string
- description: "Client type i.e. \u201Cwireless\u201D, \u201Cwired\u201D etc."
in: query
name: type
schema:
type: string
- description: "MDM compliancy of client i.e \u201Ccompliant\u201D, \u201Cnot\
\ compliant\u201D"
in: query
name: mdm_compliance_status
schema:
type: string
- description: "MDM provider of client\u2019s organisation eg \u201Cintune\u201D\
, \u201Cjamf\u201D"
in: query
name: mdm_provider
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgNacClients
tags:
- Orgs Clients - NAC
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/nac_clients/events/count:
get:
description: Count by Distinct Attributes of NAC Client-Events
operationId: countOrgNacClientEvents
parameters:
- in: query
name: distinct
schema:
enum:
- type
- nacrule_id
- dryrun_nacrule_id
- auth_type
- vlan
- nas_vendor
- username
- ap
- mac
- ssid
title: Org Nac Client events count distinct
type: string
- $ref: '#/components/parameters/nac_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgNacClientEvents
tags:
- Orgs Clients - NAC
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/nac_clients/events/search:
get:
description: Search NAC Client Events
operationId: searchOrgNacClientEvents
parameters:
- $ref: '#/components/parameters/nac_event_type'
- description: NAC Policy Rule ID, if matched
in: query
name: nacrule_id
schema:
format: uuid
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: NAC Policy Dry Run Rule ID, if present and matched
in: query
name: dryrun_nacrule_id
schema:
type: string
- description: True - if dryrun rule present and matched with priority, False
- if not matched or not present
in: query
name: dryrun_nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201C802.1X\u201D, \u201CMAB\u201D\
, \u201CDeviceAuth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: vlan
schema:
type: integer
- description: vendor of NAS device
in: query
name: nas_vendor
schema:
type: string
- description: SSID
in: query
name: bssid
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
format: uuid
type: string
- description: IDP returned roles/groups for the user
in: query
name: idp_role
schema:
type: string
- description: Radius attributes returned by NAC to NAS Devive
in: query
name: resp_attrs
schema:
$ref: '#/components/schemas/strings'
- description: SSID
in: query
name: ssid
schema:
type: string
- description: Username presented by the client
in: query
name: username
schema:
type: string
- description: site id
in: query
name: site_id
schema:
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- description: AP random macMAC
in: query
name: random_mac
schema:
type: boolean
- description: MAC address
in: query
name: mac
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/EventsNacClientSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgNacClientEvents
tags:
- Orgs Clients - NAC
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/nac_clients/search:
get:
description: Search Org NAC Clients
operationId: searchOrgNacClients
parameters:
- description: NAC Policy Rule ID, if matched
in: query
name: last_nacrule_id
schema:
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cdevice-auth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: last_vlan_id
schema:
type: string
- description: vendor of NAS device
in: query
name: last_nas_vendor
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
type: string
- description: SSID
in: query
name: last_ssid
schema:
type: string
- description: Username presented by the client
in: query
name: last_username
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: site id if assigned, null if not assigned
in: query
name: site_id
schema:
type: string
- description: AP MAC connected to by client
in: query
name: last_ap
schema:
type: string
- description: MAC address
in: query
name: mac
schema:
type: string
- description: "Connection status of client i.e \u201Cpermitted\u201D, \u201C\
denied, \u201Csession_ended\u201D"
in: query
name: last_status
schema:
type: string
- description: "Client type i.e. \u201Cwireless\u201D, \u201Cwired\u201D etc."
in: query
name: type
schema:
type: string
- description: "MDM compliancy of client i.e \u201Ccompliant\u201D, \u201Cnot\
\ compliant\u201D"
in: query
name: mdm_compliance_status
schema:
type: string
- description: "MDM provider of client\u2019s organisation eg \u201Cintune\u201D\
, \u201Cjamf\u201D"
in: query
name: mdm_provider
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/ClientNacSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgNacClients
tags:
- Orgs Clients - NAC
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/nacportals:
get:
description: List Org NAC Portals
operationId: "listOrg\u03BCNacPortals"
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/NacPortalArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgUserMacs
tags:
- Orgs NAC Portals
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org NAC Portal
operationId: createOrgNacPortal
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_portal'
responses:
'200':
$ref: '#/components/responses/NacPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgNacPortal
tags:
- Orgs NAC Portals
/api/v1/orgs/{org_id}/nacportals/{nacportal_id}:
delete:
description: Delete Org NAC Portal
operationId: deleteOrgNacPortal
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNacPortal
tags:
- Orgs NAC Portals
get:
description: Get Org NAC Portal
operationId: getOrgNacPortal
responses:
'200':
$ref: '#/components/responses/NacPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNacPortal
tags:
- Orgs NAC Portals
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nacportal_id'
put:
description: Update Org NAC Portal
operationId: updateOrgNacPortal
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_portal'
responses:
'200':
$ref: '#/components/responses/NacPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgNacPortal
tags:
- Orgs NAC Portals
/api/v1/orgs/{org_id}/nacportals/{nacportal_id}/failures:
get:
description: Get List of Org NAC Portal SSO Latest Failures
operationId: listOrgNacPortalSsoLatestFailures
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SsoLatestFailures'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgNacPortalSsoLatestFailures
tags:
- Orgs NAC Portals
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nacportal_id'
/api/v1/orgs/{org_id}/nacportals/{nacportal_id}/saml_metadata:
get:
description: Get Org NAC Portal SSO SAML Metadata
operationId: getOrgNacPortalSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/SsoSamlMetadata'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNacPortalSsoSamlMetadata
tags:
- Orgs NAC Portals
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nacportal_id'
/api/v1/orgs/{org_id}/nacportals/{nacportal_id}/saml_metadata.xml:
get:
description: "Download Org NAC Portal SSO SAML Metdata\n\nExample of metadata.xml:\n\
```xml\n\n \n \n \
\ urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n\
\ \n \n \
\ Mist\n \n \n \n\
\ \n \n\n\
```"
operationId: downloadOrgNacPortalSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: downloadOrgNacPortalSsoSamlMetadata
tags:
- Orgs NAC Portals
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nacportal_id'
/api/v1/orgs/{org_id}/nacrules:
get:
description: Get List of Org NAC Rules
operationId: listOrgNacRules
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/NacRulesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgNacRules
tags:
- Orgs NAC Rules
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: create Org NAC Rule
operationId: createOrgNacRule
requestBody:
content:
application/json:
examples:
example-1:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5"
matching:
auth_type: eap-tls
nactags:
- 041d5d36-716c-4cfb-4988-3857c6aa14a2
- a809a97f-d599-f812-eb8c-c3f84aabf6ba
port_types:
- wired
site_ids:
- bb19fc3e-4124-4b57-80d9-c3f6edce47c4
- bb19fc3e-6564-4b57-80d9-c3f6edce47c1
sitegroup_ids:
- bb19fc3e-4124-4b57-80d9-c3f6edce47c4
- bb19fc3e-6564-4b57-80d9-c3f6edce47c1
name: name1
not_matching: {}
order: 1
schema:
$ref: '#/components/schemas/nac_rule'
responses:
'200':
$ref: '#/components/responses/NacRule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgNacRule
tags:
- Orgs NAC Rules
/api/v1/orgs/{org_id}/nacrules/{nacrule_id}:
delete:
description: Delete Org NAC Rule
operationId: deleteOrgNacRule
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNacRule
tags:
- Orgs NAC Rules
get:
description: Get Org NAC Rule
operationId: getOrgNacRule
responses:
'200':
$ref: '#/components/responses/NacRule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNacRule
tags:
- Orgs NAC Rules
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nacrule_id'
put:
description: Update Org NAC Rule
operationId: updateOrgNacRule
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_rule'
responses:
'200':
$ref: '#/components/responses/NacRule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgNacRule
tags:
- Orgs NAC Rules
/api/v1/orgs/{org_id}/nactags:
get:
description: Get List of Org NAC Tags
operationId: listOrgNacTags
parameters:
- description: Type of NAC Tag
in: query
name: type
schema:
type: string
- description: Name of NAC Tag
in: query
name: name
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/NacTagsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgNacTags
tags:
- Orgs NAC Tags
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org NAC Tag
operationId: createOrgNacTag
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_tag'
responses:
'200':
$ref: '#/components/responses/NacTag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgNacTag
tags:
- Orgs NAC Tags
/api/v1/orgs/{org_id}/nactags/{nactag_id}:
delete:
description: Delete Org NAC Tag
operationId: deleteOrgNacTag
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNacTag
tags:
- Orgs NAC Tags
get:
description: Get Org NAC Tag
operationId: getOrgNacTag
responses:
'200':
$ref: '#/components/responses/NacTag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNacTag
tags:
- Orgs NAC Tags
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/nactag_id'
put:
description: Update Org NAC Tag
operationId: updateOrgNacTag
requestBody:
content:
application/json:
examples: {}
schema:
$ref: '#/components/schemas/nac_tag'
responses:
'200':
$ref: '#/components/responses/NacTag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgNacTag
tags:
- Orgs NAC Tags
/api/v1/orgs/{org_id}/networks:
get:
description: Get List of Org Networks
operationId: listOrgNetworks
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/NetworksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgNetworks
tags:
- Orgs Networks
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Organization Network
operationId: createOrgNetwork
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f37
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
schema:
$ref: '#/components/schemas/network'
responses:
'200':
$ref: '#/components/responses/Network'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgNetwork
tags:
- Orgs Networks
/api/v1/orgs/{org_id}/networks/{network_id}:
delete:
description: Delete Organization Network
operationId: deleteOrgNetwork
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNetwork
tags:
- Orgs Networks
get:
description: Get Organization Network Details
operationId: getOrgNetwork
responses:
'200':
$ref: '#/components/responses/Network'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNetwork
tags:
- Orgs Networks
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/network_id'
put:
description: Update Organization Network
operationId: updateOrgNetwork
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f38
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
schema:
$ref: '#/components/schemas/network'
responses:
'200':
$ref: '#/components/responses/Network'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgNetwork
tags:
- Orgs Networks
/api/v1/orgs/{org_id}/networktemplates:
get:
description: Get List of Org Network Templates
operationId: listOrgNetworkTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/NetworktemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgNetworkTemplates
tags:
- Orgs Network Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Update Org Network Templates
operationId: createOrgNetworkTemplate
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
dhcp_snooping:
all_networks: true
enable_arp_spoof_check: true
enable_ip_source_guard: true
enabled: true
networks:
- string
dns_servers:
- string
dns_suffix:
- string
extra_routes:
property1:
via: string
property2:
via: string
group_tags: {}
id: 497f6eca-6276-4993-bfeb-53debbba6f08
import_org_networks:
- ap
mist_nac:
enabled: true
network: string
modified_time: 0
name: string
networks:
property1:
subnet: 192.168.1.0/24
vlan_id: 10
property2:
subnet: 192.168.1.0/24
vlan_id: 10
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 111
size: 5m
console:
contents:
- facility: any
severity: any
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: any
severity: any
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: string
send_to_all_servers: true
servers:
- contents:
- facility: any
severity: any
explicit_priority: true
facility: any
host: syslogd.internal
match: '!alarm|ntp|errors.crc_error[chan]'
port: 514
protocol: udp
routing_instance: routing-instance-name
severity: any
source_address: string
structured_data: true
tag: string
time_format: millisecond
users:
- contents:
- facility: any
severity: any
match: '!alarm|ntp|errors.crc_error[chan]'
user: '*'
snmp_config:
client_list:
- client_list_name: clist-1
clients:
- 151.140.101.218/32
contact: cns@juniper.net
description: Juniper QFX Series Switch - 1K_5LA
enabled: true
engine_id: local
location: Las Vegas, NV
name: TGH-1K-QFX10K
network: default
trap_groups:
- categories:
- authentication
group_name: profiler
targets:
- 172.29.158.19
version: v2
v2c_config:
- authorization: read-only
client_list_name: clist-1
community_name: abc123
view: all
v3_config:
notify:
- name: string
tag: string
type: trap
notify_filter:
- contents:
- include: true
oid: 1.3.6.1.4.1
profile_name: string
target_address:
- address: address
address_mask: address_mask
port: 161
tag_list: string
target_address_name: target_address_name
target_parameters: string
target_parameters:
- message_processing_model: v1
name: string
notify_filter: string
security_level: authentication
security_model: usm
security_name: m01620
usm:
engine-id: 00:00:00:0b:00:00:70:10:6f:08:b6:3f
engine_type: remote_engine
users:
- authentication_password: strings
authentication_type: authentication-md5
encryption_password: stringst
encryption_type: privacy-aes128
name: string
vacm:
access:
- group_name: string
prefix_list:
- context_prefix: iil
notify_view: all
read_view: all
security_level: privacy
security_model: any
type: default_context_prefix
write_view: all
security_to_group:
content:
- group: string
security_name: string
security_model: usm
views:
include: true
oid: 1.3.6.1
view_name: all
switch_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
match_role: string
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
switch_mgmt:
ap_affinity_threshold: '10'
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
use_mxedge_proxy: false
switch_mgmt:
config_revert: 10
protect_re:
enabled: false
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
vrf_config:
enabled: false
vrf_instances:
property1:
extra_routes:
property1:
via: 192.0.2.10
property2:
via: 198.51.100.1
networks:
- string
property2:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.10
networks:
- string
schema:
$ref: '#/components/schemas/network_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Networktemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgNetworkTemplate
tags:
- Orgs Network Templates
/api/v1/orgs/{org_id}/networktemplates/{networktemplate_id}:
delete:
description: Delete Org Network Template
operationId: deleteOrgNetworkTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNetworkTemplate
tags:
- Orgs Network Templates
get:
description: Get Org Network Templates Details
operationId: getOrgNetworkTemplate
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/network_template'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNetworkTemplate
tags:
- Orgs Network Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/networktemplate_id'
put:
description: Update Org Network Template
operationId: updateOrgNetworkTemplates
parameters: []
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
dhcp_snooping:
all_networks: true
enable_arp_spoof_check: true
enable_ip_source_guard: true
enabled: true
networks:
- string
dns_servers:
- string
dns_suffix:
- string
extra_routes:
property1:
via: string
property2:
via: string
group_tags: {}
id: 497f6eca-6276-4993-bfeb-53dfbbba6f08
import_org_networks:
- ap
mist_nac:
enabled: true
network: string
modified_time: 0
name: string
networks:
property1:
subnet: 192.168.1.0/24
vlan_id: 10
property2:
subnet: 192.168.1.0/24
vlan_id: 10
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 111
size: 5m
console:
contents:
- facility: any
severity: any
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: any
severity: any
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: string
send_to_all_servers: true
servers:
- contents:
- facility: any
severity: any
explicit_priority: true
facility: any
host: syslogd.internal
match: '!alarm|ntp|errors.crc_error[chan]'
port: 514
protocol: udp
routing_instance: routing-instance-name
severity: any
source_address: string
structured_data: true
tag: string
time_format: millisecond
users:
- contents:
- facility: any
severity: any
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
snmp_config:
client_list:
- client_list_name: clist-1
clients:
- 151.140.101.218/32
contact: cns@juniper.net
description: Juniper QFX Series Switch - 1K_5LA
enabled: true
engine_id: local
location: Las Vegas, NV
name: TGH-1K-QFX10K
network: default
trap_groups:
- categories:
- authentication
group_name: profiler
targets:
- 172.29.158.19
version: v2
v2c_config:
- authorization: read-only
client_list_name: clist-1
community_name: abc123
view: all
v3_config:
notify:
- name: string
tag: string
type: trap
notify_filter:
- contents:
- include: true
oid: 1.3.6.1.4.1
profile_name: string
target_address:
- address: address
address_mask: address_mask
port: 161
tag_list: string
target_address_name: target_address_name
target_parameters: string
target_parameters:
- message_processing_model: v1
name: string
notify_filter: string
security_level: authentication
security_model: usm
security_name: m01620
usm:
engine-id: 00:00:00:0b:00:00:70:10:6f:08:b6:3f
engine_type: remote_engine
users:
- authentication_password: strings
authentication_type: authentication-md5
encryption_password: stringst
encryption_type: privacy-aes128
name: string
vacm:
access:
- group_name: string
prefix_list:
- context_prefix: iil
notify_view: all
read_view: all
security_level: privacy
security_model: any
type: default_context_prefix
write_view: all
security_to_group:
content:
- group: string
security_name: string
security_model: usm
views:
include: true
oid: 1.3.6.1
view_name: all
switch_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
match_role: string
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
switch_mgmt:
ap_affinity_threshold: '10'
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
use_mxedge_proxy: false
switch_mgmt:
config_revert: 10
protect_re:
enabled: false
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
vrf_config:
enabled: false
vrf_instances:
property1:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.2
networks:
- string
property2:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.2
networks:
- string
schema:
$ref: '#/components/schemas/network_template'
description: Request Body
responses:
'200':
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
dhcp_snooping:
all_networks: true
enable_arp_spoof_check: true
enable_ip_source_guard: true
enabled: true
networks:
- string
dns_servers:
- string
dns_suffix:
- string
extra_routes:
property1:
via: string
property2:
via: string
group_tags: {}
id: 497f6eca-6276-4993-bfeb-53e0bbba6f08
import_org_networks:
- ap
mist_nac:
enabled: true
network: string
modified_time: 0
name: string
networks:
property1:
subnet: 192.168.1.0/24
vlan_id: 10
property2:
subnet: 192.168.1.0/24
vlan_id: 10
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 111
size: 5m
console:
contents:
- facility: any
severity: any
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: any
severity: any
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: string
send_to_all_servers: true
servers:
- contents:
- facility: any
severity: any
explicit_priority: true
facility: any
host: syslogd.internal
match: '!alarm|ntp|errors.crc_error[chan]'
port: 514
protocol: udp
routing_instance: routing-instance-name
severity: any
source_address: string
structured_data: true
tag: string
time_format: millisecond
users:
- contents:
- facility: any
severity: any
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
snmp_config:
client_list:
- client_list_name: clist-1
clients:
- 151.140.101.218/32
contact: cns@juniper.net
description: Juniper QFX Series Switch - 1K_5LA
enabled: true
engine_id: local
location: Las Vegas, NV
name: TGH-1K-QFX10K
network: default
trap_groups:
- categories:
- authentication
group_name: profiler
targets:
- 172.29.158.19
version: v2
v2c_config:
- authorization: read-only
client_list_name: clist-1
community_name: abc123
view: all
v3_config:
notify:
- name: string
tag: string
type: trap
notify_filter:
- contents:
- include: true
oid: 1.3.6.1.4.1
profile_name: string
target_address:
- address: address
address_mask: address_mask
port: 161
tag_list: string
target_address_name: target_address_name
target_parameters: string
target_parameters:
- message_processing_model: v1
name: string
notify_filter: string
security_level: authentication
security_model: usm
security_name: m01620
usm:
engine-id: 00:00:00:0b:00:00:70:10:6f:08:b6:3f
engine_type: remote_engine
users:
- authentication_password: strings
authentication_type: authentication-md5
encryption_password: stringst
encryption_type: privacy-aes128
name: string
vacm:
access:
- group_name: string
prefix_list:
- context_prefix: iil
notify_view: all
read_view: all
security_level: privacy
security_model: any
type: default_context_prefix
write_view: all
security_to_group:
content:
- group: string
security_name: string
security_model: usm
views:
include: true
oid: 1.3.6.1
view_name: all
switch_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
match_role: string
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
switch_mgmt:
ap_affinity_threshold: '10'
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
use_mxedge_proxy: false
switch_mgmt:
config_revert: 10
protect_re:
enabled: false
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
vrf_config:
enabled: false
vrf_instances:
property1:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.2
networks:
- string
property2:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.2
networks:
- string
schema:
$ref: '#/components/schemas/network_template'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgNetworkTemplates
tags:
- Orgs Network Templates
/api/v1/orgs/{org_id}/ocdevices/outbound_ssh_cmd:
get:
description: 'Get Org Juniper Devices command
Juniper devices can be managed/adopted by Mist. Currently outbound-ssh + netconf
is used.
A few lines of CLI commands are generated per-Org, allowing the Juniper devices
to phone home to Mist.'
operationId: getOrgJuniperDevicesCommand
parameters:
- description: site_id would be used for proxy config check of the site and
automatic site assignment
in: query
name: site_id
schema:
type: string
responses:
'200':
$ref: '#/components/responses/JunosRegisterCmd'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgJuniperDevicesCommand
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/otherdevices:
get:
description: Get List of Org other devices (3rd party devices)
operationId: listOrgOtherDevices
parameters:
- in: query
name: vendor
schema:
type: string
- in: query
name: mac
schema:
type: string
- in: query
name: serial
schema:
type: string
- in: query
name: model
schema:
type: string
- in: query
name: name
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/DeviceOtherArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgOtherDevices
tags:
- Orgs Devices Others
parameters:
- $ref: '#/components/parameters/org_id'
put:
description: Assign or unassign OtherDevices to and from a site.
operationId: updateOrgOtherDevices
requestBody:
content:
application/json:
examples:
Example:
value:
device_mac: 0adfea67e65b
macs:
- 5c5b350e0001
- 5c5b350e0003
op: assign
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
schema:
$ref: '#/components/schemas/other_device_update_multi'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgOtherDevices
tags:
- Orgs Devices Others
/api/v1/orgs/{org_id}/otherdevices/events/count:
get:
description: Count Org OtherDevices Events
operationId: countOrgOtherDeviceEvents
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- mac
- type
- vendor
- site_id
title: Org Other Devices events count distinct
type: string
- $ref: '#/components/parameters/otherdevice_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgOtherDeviceEvents
tags:
- Orgs Devices Others
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/otherdevices/events/search:
get:
description: Search Org OtherDevices Events
operationId: searchOrgOtherDeviceEvents
parameters:
- description: site id
in: query
name: site_id
schema:
type: string
- description: mac
in: query
name: mac
schema:
type: string
- description: mac of attached device
in: query
name: device_mac
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- description: vendor name
in: query
name: vendor
schema:
type: string
- $ref: '#/components/parameters/otherdevice_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/EventsOtherDevicesSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgOtherDeviceEvents
tags:
- Orgs Devices Others
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/otherdevices/{device_mac}:
delete:
description: Delete OtherDevice
operationId: deleteOrgOtherDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgOtherDevice
tags:
- Orgs Devices Others
get:
description: Get Org other device (3rd party device)
operationId: getOrgOtherDevice
responses:
'200':
$ref: '#/components/responses/DeviceOther'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgOtherDevice
tags:
- Orgs Devices Others
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
put:
description: If the Site / Device cannot be identified, a manual association
can be made
operationId: updateOrgOtherDevice
requestBody:
content:
application/json:
examples:
Example:
value:
device_mac: 0adfea67e65b
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
schema:
$ref: '#/components/schemas/other_device_update'
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgOtherDevice
tags:
- Orgs Devices Others
/api/v1/orgs/{org_id}/otherdevices/{device_mac}/reboot:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
post:
description: Reboot OtherDevice
operationId: rebootOrgOtherDevice
requestBody:
content:
application/json:
schema:
properties: {}
type: object
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: rebootOrgOtherDevice
tags:
- Orgs Devices Others
/api/v1/orgs/{org_id}/pcaps:
get:
description: Get List of Org Packet Captures
operationId: listOrgPacketCaptures
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/PcapsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgPacketCaptures
tags:
- Utilities PCAPs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/pcaps/capture:
delete:
description: Stop current Org capture
operationId: stopOrgPacketCapture
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: stopOrgPacketCapture
tags:
- Utilities PCAPs
get:
description: Get Org Capturing status
operationId: getOrgCapturingStatus
responses:
'200':
$ref: '#/components/responses/PcapStatus'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgCapturingStatus
tags:
- Utilities PCAPs
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Initiate a Packet Capture\n\nThe output will be available through\
\ websocket. As there can be multiple command issued against the same AP at\
\ the same time and the output all goes through the same websocket stream,\
\ session is introduced for demux.\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n```json\n{\n subscribe: \"/sites/{site_id}/pcaps\"\
\n}\n```\n#### Response (Wireless/RadioTap)\n```json\n{\n \"event\": \"data\"\
\n \"channel\": \"/orgs/67970e46-4e12-11e6-9188-0242ac110007/pcaps\"\n \"\
data\": {\n \"capture_id\": \"f039b1b4-a23e-48b2-906a-0da40524de73\"\
, \n \"pcap_dict\": {\n \"dst_mac\": \"68:ec:c5:09:2e:87\",\n\
\ \"src_mac\": \"8c:3b:ad:e0:47:40\", \n \"vlan\": 1, \n\
\ \"src_ip\": \"34.224.147.117\", \n \"dst_ip\": \"192.168.1.55\"\
,\n \"dst_port\": 51635, \n \"src_port\": 443,\n \
\ \"protocol\": \"TCP\", \n \"mxedge_id\": \"00000000-0000-0000-1000-001122334455\"\
,\n \"direction\": \"tx\", \n \"timestamp\": 1652247615,\
\ \n \"length\": 159.0, \n \"interface\": \"port0\",\n \
\ \"info\": \"1652247616.007409 IP ec2-34-224-147-117.compute-1.amazonaws.com.https\
\ > ip-192-168-1-55.ec2.internal.51635: Flags [P.], seq \n \
\ 2192123968:2192124057, ack 4035166782, win 12, options [nop,nop,TS val\
\ 597467050 ecr 740580660], length 89\\\\n\",\n }, \n \"pcap_raw\"\
: \"1MOyoQIABAAAAAAAAAAAAP//AAABAAAAQEx7YhMzAACfAAAAnwAAAGjsxQkuh4w7reBHQIEAAAEIAEUAAI1bLEAAKAZ/CiLgk3XAqAE3AbvJs4KpKEDwg8I+gBgADFf9AAABAQgKI5yfqiwkXTQXAwMAVKY5JopoKQrVEn0/3ld4YntctGEH/rTZuwtCvzSncFw71QJveJi9uxHs57KC8w9Apph3YvXJrmWg7M37+o+YV0KH/xmr626s5Bkhb3QhKOu+NoNEmA==\\\
\"\n }\n}\n```"
operationId: startOrgPacketCapture
requestBody:
content:
application/json:
examples:
MxEdge-Packet-Capture:
value:
duration: 600
format: stream
max_pkt_len: 1500
mxedges:
00000000-0000-0000-1000-001122334455:
interfaces:
port1:
tcpdump_expression: udp port 67 or udp port 68
num_packets: 100
tcpdump_expression: vlan 999
type: mxedge
schema:
$ref: '#/components/schemas/capture_org'
description: Request Body
responses:
'200':
$ref: '#/components/responses/PcapStart'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startOrgPacketCapture
tags:
- Utilities PCAPs
/api/v1/orgs/{org_id}/pma/dashboards:
get:
description: Get List of premium analytics dashboards for this Org
operationId: listOrgPmaDashboards
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/PmaDashboards'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgPmaDashboards
tags:
- Orgs Premium Analytics
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/pskportals:
get:
description: Get List of Org Psk Portals
operationId: listOrgPskPortals
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/PskPortalsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgPskPortals
tags:
- Orgs Psk Portals
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Psk Portal
operationId: createOrgPskPortal
requestBody:
content:
application/json:
examples:
example-1:
value:
auth: sso
created_time: 0
expire: 0
id: string
max_usage: 0
modified_time: 0
name: string
org_id: 31f27122-68a9-47a4-b526-8fb8a62a8acb
required_fields:
- string
role: string
ssid: string
sso:
default_role: string
forced_role: string
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
issuer: string
nameid_format: string
sso_required_role: string
template_url: string
type: byod
vlan_id: 0
schema:
$ref: '#/components/schemas/psk_portal'
responses:
'200':
$ref: '#/components/responses/PskPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgPskPortal
tags:
- Orgs Psk Portals
/api/v1/orgs/{org_id}/pskportals/logs:
get:
description: Get the list of PSK Portals Logs
operationId: listOrgPskPortalLogs
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/PskPortalLogsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgPskPortalLogs
tags:
- Orgs Psk Portals
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/pskportals/logs/count:
get:
description: Count by Distinct Attributes of PskPortal Logs
operationId: countOrgPskPortalLogs
parameters:
- in: query
name: distinct
schema:
default: pskportal_id
enum:
- admin_id
- admin_name
- psk_name
- psk_id
- pskportal_id
- user_id
title: Org Psk Portal logs count distinct
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgPskPortalLogs
tags:
- Orgs Psk Portals
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/pskportals/logs/search:
get:
description: Search Org PSK Portal Logs
operationId: searchOrgPskPortalLogs
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
- in: query
name: psk_name
schema:
type: string
- in: query
name: psk_id
schema:
format: uuid
type: string
- in: query
name: pskportal_id
schema:
format: uuid
type: string
- description: audit_id
in: query
name: id
schema:
format: uuid
type: string
- in: query
name: admin_name
schema:
type: string
- in: query
name: admin_id
schema:
format: uuid
type: string
- description: name_id used in SSO
in: query
name: name_id
schema:
format: uuid
type: string
responses:
'200':
$ref: '#/components/responses/PskPortalLogsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgPskPortalLogs
tags:
- Orgs Psk Portals
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/pskportals/{pskportal_id}:
delete:
description: Delete Org Psk Portal
operationId: deleteOrgPskPortal
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgPskPortal
tags:
- Orgs Psk Portals
get:
description: get Org Psk Portal Details
operationId: getOrgPskPortal
responses:
'200':
$ref: '#/components/responses/PskPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgPskPortal
tags:
- Orgs Psk Portals
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/pskportal_id'
put:
description: update Org Psk Portal
operationId: updateOrgPskPortal
requestBody:
content:
application/json:
examples:
example-1:
value:
auth: sso
created_time: 0
expire: 0
id: string
max_usage: 0
modified_time: 0
name: string
org_id: 31f27122-68a9-47a4-b526-8fb8a62a8acb
required_fields:
- string
role: string
ssid: string
sso:
default_role: string
forced_role: string
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
issuer: string
nameid_format: string
sso_required_role: string
template_url: string
type: byod
vlan_id: 0
schema:
$ref: '#/components/schemas/psk_portal'
responses:
'200':
$ref: '#/components/responses/PskPortal'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgPskPortal
tags:
- Orgs Psk Portals
/api/v1/orgs/{org_id}/psks:
get:
description: Get List of Org Psks
operationId: listOrgPsks
parameters:
- example: psk_name
in: query
name: name
schema:
type: string
- in: query
name: ssid
schema:
type: string
- in: query
name: role
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgPsks
tags:
- Orgs Psks
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org PSK
operationId: createOrgPsk
parameters:
- description: if a key exists with the same `name`, replace it with the new
one
in: query
name: upsert
schema:
type: boolean
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/psk'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgPsk
tags:
- Orgs Psks
put:
description: Update multi PSKs
operationId: updateOrgMultiPsks
requestBody:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
expire_time: 1614990263
id: 426f6eca-6286-4993-bfeb-53cbbbba6f07
mac: string
max_usage: 0
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
passphrase: stringst
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
ssid: string
usage: multi
vlan_id: 0
schema:
$ref: '#/components/schemas/psks'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgMultiPsks
tags:
- Orgs Psks
/api/v1/orgs/{org_id}/psks/import:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Import PSK from CSV file or JSON\n\n##\_CSV File Format\n```\n\
PSK Import CSV File Format:\nname,ssid,passphrase,usage,vlan_id,mac,max_usage,role,expire_time,notify_expiry,expiry_notification_time,notify_on_create_or_edit,email\n\
Common,warehouse,foryoureyesonly,single,35,a31425f31278,0,student,1618594236\n\
Justin,reception,visible,multi,1002,200,teacher,1618594236\nCommon2,ssid,1245678-xx,single,35,a31425f31278,0,student,1618594236,true,7,true,admin@test.com\n\
```"
operationId: importOrgPsks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/psks'
multipart/form-data:
schema:
$ref: '#/components/schemas/psks_import_file'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgPsks
tags:
- Orgs Psks
/api/v1/orgs/{org_id}/psks/{psk_id}:
delete:
description: Delete Org PSK
operationId: deleteOrgPsk
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgPsk
tags:
- Orgs Psks
get:
description: Get Org PSK Details
operationId: getOrgPsk
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgPsk
tags:
- Orgs Psks
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/psk_id'
put:
description: Update Org PSK
operationId: updateOrgPsk
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/psk'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgPsk
tags:
- Orgs Psks
/api/v1/orgs/{org_id}/psks/{psk_id}/delete_old_passphrase:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/psk_id'
post:
description: "Delete `old_passphrase` from PSK. \nIf successful, response is\
\ same as GET, returns the PSK with `old_passphrase` removed."
operationId: deleteOrgPskOldPassphrase
requestBody:
content:
application/json:
schema:
properties: {}
type: object
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgPskOldPassphrase
tags:
- Orgs Psks
/api/v1/orgs/{org_id}/rftemplates:
get:
description: Get List of Org RF Template
operationId: listOrgRfTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/RftemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgRfTemplates
tags:
- Orgs RF Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org RF Template
operationId: createOrgRfTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/rf_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Rftemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgRfTemplate
tags:
- Orgs RF Templates
/api/v1/orgs/{org_id}/rftemplates/{rftemplate_id}:
delete:
description: Delete Org RF Template
operationId: deleteOrgRfTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgRfTemplate
tags:
- Orgs RF Templates
get:
description: Get Org RF Template Details
operationId: getOrgRfTemplate
responses:
'200':
$ref: '#/components/responses/Rftemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgRfTemplate
tags:
- Orgs RF Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/rftemplate_id'
put:
description: Update Org RF Template
operationId: updateOrgRfTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/rf_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Rftemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgRfTemplate
tags:
- Orgs RF Templates
/api/v1/orgs/{org_id}/sdkclients/{sdkclient_id}:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdkclient_id'
put:
description: Update SDK Client
operationId: updateSdkClient
requestBody:
content:
application/json:
examples:
example-1:
value:
name: John Smith
schema:
$ref: '#/components/schemas/name'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSdkClient
tags:
- Orgs SDK Clients
/api/v1/orgs/{org_id}/sdkinvites:
get:
description: Get List of Org SDK Invites
operationId: listSdkInvites
responses:
'200':
$ref: '#/components/responses/SdkinvitesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSdkInvites
tags:
- Orgs SDK Invites
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create SDK Invite
operationId: createSdkInvite
requestBody:
content:
application/json:
examples:
example-1:
value:
enabled: true
name: string
quota: 0
quota_limited: true
schema:
$ref: '#/components/schemas/sdkinvite'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sdkinvite'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSdkInvite
tags:
- Orgs SDK Invites
/api/v1/orgs/{org_id}/sdkinvites/{sdkinvite_id}:
delete:
description: Revoke SDK Invite
operationId: revokeSdkInvite
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: revokeSdkInvite
tags:
- Orgs SDK Invites
get:
description: Get SDK Invite Details
operationId: getSdkInvite
responses:
'200':
$ref: '#/components/responses/Sdkinvite'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSdkInvite
tags:
- Orgs SDK Invites
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdkinvite_id'
put:
description: Update SDK Invite
operationId: updateSdkInvite
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sdkinvite'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sdkinvite'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSdkInvite
tags:
- Orgs SDK Invites
/api/v1/orgs/{org_id}/sdkinvites/{sdkinvite_id}/email:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdkinvite_id'
post:
description: Send SDK Invite by Email
operationId: sendSdkInviteEmail
requestBody:
content:
application/json:
examples:
example-1:
value:
email: test@abc.com
schema:
$ref: '#/components/schemas/email'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: sendSdkInviteEmail
tags:
- Orgs SDK Invites
/api/v1/orgs/{org_id}/sdkinvites/{sdkinvite_id}/qrcode:
get:
description: Revoke SDK Invite
operationId: getSdkInviteQrCode
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSdkInviteQrCode
tags:
- Orgs SDK Invites
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdkinvite_id'
/api/v1/orgs/{org_id}/sdkinvites/{sdkinvite_id}/sms:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdkinvite_id'
post:
description: Send SDK Invite by SMS
operationId: sendSdkInviteSms
requestBody:
content:
application/json:
examples:
example-1:
value:
number: '14081234567'
schema:
$ref: '#/components/schemas/sdk_invite_sms'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: sendSdkInviteSms
tags:
- Orgs SDK Invites
/api/v1/orgs/{org_id}/sdktemplates:
get:
description: Get List of Org SDK Templates
operationId: listSdkTemplates
responses:
'200':
$ref: '#/components/responses/SdktemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSdkTemplates
tags:
- Orgs SDK Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create SDK Template
operationId: createSdkTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sdktemplate'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sdktemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSdkTemplate
tags:
- Orgs SDK Templates
/api/v1/orgs/{org_id}/sdktemplates/{sdktemplate_id}:
delete:
description: Delete SDK Template
operationId: deleteSdkTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSdkTemplate
tags:
- Orgs SDK Templates
get:
description: Get SDK Template Details
operationId: getSdkTemplate
responses:
'200':
$ref: '#/components/responses/Sdktemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSdkTemplate
tags:
- Orgs SDK Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sdktemplate_id'
put:
description: Update SDK Template
operationId: updateSdkTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sdktemplate'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sdktemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSdkTemplate
tags:
- Orgs SDK Templates
/api/v1/orgs/{org_id}/secpolicies:
get:
description: Get List of Org Security Policies
operationId: listOrgSecPolicies
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/SecpoliciesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSecPolicies
tags:
- Orgs SecPolicies
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Security Policy
operationId: createOrgSecPolicies
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 0
id: 497f6eca-6276-4993-bfeb-53e1bbba6f08
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
wlans:
- acct_immediate_update: false
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
airwatch:
api_key: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
console_url: https://hs1.airwatchportals.com
enabled: true
password: user1
username: test123
allow_ipv6_ndp: true
allow_mdns: false
allow_ssdp: false
ap_ids:
- 497f6eca-6276-4993-bfeb-53e2bbba6f08
app_limit:
apps:
dropbox: 300
netflix: 60
enabled: false
wxtag_ids:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
app_qos:
apps:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
enabled: true
others:
- dscp: 32
dst_subnet: 10.2.0.0/16
port_ranges: 80,1024-6553
protocol: udp
src_subnet: 10.2.0.0/16
apply_to: site
arp_filter: false
auth:
anticlog_threshold: 16
eap_reauth: false
enable_mac_auth: false
key_idx: 1
keys:
- string
multi_psk_only: false
owe: string
pairwise:
- wpa2-ccmp
private_wlan: true
psk: foryoureyesonly
type: psk
wep_as_secondary_auth: true
auth_server_selection: ordered
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_nas_id: 5c5b350e0101-nas
auth_servers_nas_ip: 15.3.1.5
auth_servers_retries: 5
auth_servers_timeout: 5
band: string
band_steer: false
band_steer_force_band5: false
bands:
- '24'
- '5'
block_blacklist_clients: false
bonjour:
additional_vlan_ids:
- 0
enabled: false
services:
airplay:
radius_groups:
- teachers
scope: same_ap
cisco_cwa:
allowed_hostnames:
- snapchat.com
allowed_subnets:
- 63.5.3.0/24
blocked_subnets:
- 192.168.0.0/16
enabled: false
client_limit_down: 0
client_limit_down_enabled: false
client_limit_up: 0
client_limit_up_enabled: false
coa_servers:
- disable_event_timestamp_check: false
enabled: false
ip: 1.2.3.4
port: 3799
secret: testing456
created_time: 0
disable_11ax: false
disable_ht_vht_rates: false
disable_uapsd: false
disable_v1_roam_notify: false
disable_v2_roam_notify: false
disable_wmm: false
dns_server_rewrite:
enabled: false
radius_groups:
contractor: 172.1.1.1
guest: 8.8.8.8
dtim: 2
dynamic_psk:
default_psk: foryoureyesonly
default_vlan_id: 999
enabled: false
source: cloud_psks
vlan_ids:
- 1
dynamic_vlan:
default_vlan_id: 999
enabled: false
local_vlan_ids:
- 1
type: airespace-interface-name
vlans:
'131': default
'322': fast,video
enable_local_keycaching: false
enable_wireless_bridging: false
enabled: true
fast_dot1x_timers: false
for_site: true
hide_ssid: false
hostname_ie: false
hotspot20:
domain_name:
- mist.com
enabled: true
nai_realms:
- string
operators:
- google
- att
rcoi:
- 5A03BA0000
venue_name: some_name
id: 497f6eca-6276-4993-bfeb-53e3bbba6f08
interface: all
isolation: false
l2_isolation: false
legacy_overds: false
limit_bcast: false
limit_probe_response: true
max_idletime: 1800
mist_nac:
enabled: false
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
mxtunnel: {}
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name:
- default
no_static_dns: false
no_static_ip: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
portal:
amazon_client_id: string
amazon_client_secret: string
amazon_email_domains:
- string
amazon_enabled: false
auth: none
azure_client_id: string
azure_client_secret: string
azure_enabled: false
azure_tenant_id: string
broadnet_password: password
broadnet_sid: MIST
broadnet_user_id: juniper
bypass_when_cloud_down: false
clickatell_api_key: string
cross_site: false
email_enabled: true
enabled: false
expire: 1440
external_portal_url: string
facebook_client_id: string
facebook_client_secret: string
facebook_email_domains:
- string
facebook_enabled: false
forward: false
forward_url: http://abc.com/promotions
google_client_id: string
google_client_secret: string
google_email_domains:
- mydomain.edu
- mydomain.org
google_enabled: false
gupshup_password: string
gupshup_userid: string
microsoft_client_id: string
microsoft_client_secret: string
microsoft_email_domains:
- string
microsoft_enabled: false
passphrase_enabled: false
password: let me in
portal_allowed_hostnames: string
portal_allowed_subnets: string
portal_api_secret: string
portal_denied_hostnames: string
portal_image: https://url/to/image.png
portal_sso_url: string
predefined_sponsors_enabled: true
privacy: true
puzzel_password: string
puzzel_service_id: string
puzzel_username: string
smsMessageFormat: string
sms_enabled: false
sms_provider: twilio
sponsor_auto_approve: false
sponsor_email_domains:
- reserved.net
- reserved.org
sponsor_enabled: false
sponsor_link_validity_duration: 30
sponsor_notify_all: false
sponsor_status_notify: false
sponsors:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
sso_default_role: string
sso_forced_role: string
sso_idp_cert: string
sso_idp_sign_algo: string
sso_idp_sso_url: string
sso_issuer: string
sso_nameid_format: email
telstra_client_id: string
telstra_client_secret: string
thumbnail: string
twilio_auth_token: af9dac44c344a875ab5d31cb7abcdefg
twilio_phone_number: '+18548888888'
twilio_sid: AC72ec6ba0ec5af30e6731c5e47abcdefgh
portal_allowed_hostnames:
- snapchat.com
- ibm.com
portal_allowed_subnets:
- 63.5.3.0/24
portal_api_secret: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
portal_denied_hostnames:
- msg.snapchat.com
portal_image: http://example.com
portal_sso_url: string
portal_template_url: string
qos:
class: best_effort
overwrite: false
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
rateset:
'24':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
'5':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
roam_mode: none
schedule:
enabled: false
hours:
fri: 09:00-17:00
mon: 09:00-17:00
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sle_excluded: false
ssid: corporate
template_id: c6d67e98-83ea-49f0-8812-e4abae2b68bc
thumbnail: http://example.com
use_eapol_v1: false
vlan_enabled: false
vlan_id: 1
vlan_ids:
- 3
- 4
- 5
vlan_pooling: false
wlan_limit_down: 0
wlan_limit_down_enabled: false
wlan_limit_up: 0
wlan_limit_up_enabled: false
wxtag_ids:
- 497f6eca-6276-4993-bfeb-53e4bbba6f08
wxtunnel_id: string
wxtunnel_remote_id: string
schema:
$ref: '#/components/schemas/secpolicy'
responses:
'200':
$ref: '#/components/responses/Secpolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSecPolicies
tags:
- Orgs SecPolicies
/api/v1/orgs/{org_id}/secpolicies/{secpolicy_id}:
delete:
description: Delete Org Security Policy
operationId: deleteOrgSecPolicy
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgSecPolicy
tags:
- Orgs SecPolicies
get:
description: Get Org Security Policy
operationId: getOrgSecPolicy
responses:
'200':
$ref: '#/components/responses/Secpolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSecPolicy
tags:
- Orgs SecPolicies
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/secpolicy_id'
put:
description: Update Org Security Policy
operationId: updateOrgSecPolicies
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/secpolicy'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Secpolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSecPolicies
tags:
- Orgs SecPolicies
/api/v1/orgs/{org_id}/servicepolicies:
get:
description: Get List of Org Service Policies
operationId: listOrgServicePolicies
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/ServicePoliciesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgServicePolicies
tags:
- Orgs Service Policies
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Serrvice Policy
operationId: createOrgServicePolicy
requestBody:
content:
application/json:
examples:
example-1:
value:
action: allow
name: string
services:
- string
tenants:
- string
schema:
$ref: '#/components/schemas/service_policy'
responses:
'200':
$ref: '#/components/responses/ServicePolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgServicePolicy
tags:
- Orgs Service Policies
/api/v1/orgs/{org_id}/servicepolicies/{servicepolicy_id}:
delete:
description: Delete Org Service Policuy
operationId: deleteOrgServicePolicy
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgServicePolicy
tags:
- Orgs Service Policies
get:
description: Get Org Service Policy Details
operationId: getOrgServicePolicy
responses:
'200':
$ref: '#/components/responses/ServicePolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgServicePolicy
tags:
- Orgs Service Policies
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/servicepolicy_id'
put:
description: Update Org Serrvice Policy
operationId: updateOrgServicePolicy
requestBody:
content:
application/json:
examples:
example-1:
value:
action: allow
name: string
services:
- string
tenants:
- string
schema:
$ref: '#/components/schemas/service_policy'
responses:
'200':
$ref: '#/components/responses/ServicePolicy'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgServicePolicy
tags:
- Orgs Service Policies
/api/v1/orgs/{org_id}/services:
get:
description: Get List of Org Services
operationId: listOrgServices
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/ServicesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgServices
tags:
- Orgs Services
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create getOrgServices Service
operationId: createOrgService
requestBody:
content:
application/json:
examples:
example-1:
value:
app_key: string
name: string
network_id: d6797cf4-42b9-4cad-8591-9dd91c3f0fc3
specs:
- address: string
port: 0
protocol: any
subnet: string
type: custom
schema:
$ref: '#/components/schemas/service'
responses:
'200':
$ref: '#/components/responses/Service'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgService
tags:
- Orgs Services
/api/v1/orgs/{org_id}/services/{service_id}:
delete:
description: deleteOrgService
operationId: deleteOrgService
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgService
tags:
- Orgs Services
get:
description: Get Org Service
operationId: getOrgService
responses:
'200':
$ref: '#/components/responses/Service'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgService
tags:
- Orgs Services
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/service_id'
put:
description: update Org Service
operationId: updateOrgService
requestBody:
content:
application/json:
examples:
example-1:
value:
addresses:
- string
app_caetgories:
- string
apps:
- string
dscp: 0
failover_policy: revertable
hostnames:
- string
max_jitter: 0
max_latency: string
max_loss: 0
name: string
sle_enabled: false
specs:
- port_range: '0'
protocol: any
traffic_class: best_effort
traffic_type: data_best_effort
type: custom
vpn_name: addresses
schema:
$ref: '#/components/schemas/service'
responses:
'200':
$ref: '#/components/responses/Service'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgService
tags:
- Orgs Services
/api/v1/orgs/{org_id}/setting:
get:
description: Get Org Settings
operationId: getOrgSettings
responses:
'200':
$ref: '#/components/responses/OrgSetting'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSettings
tags:
- Orgs Setting
parameters:
- $ref: '#/components/parameters/org_id'
put:
description: Update Org Settings
operationId: updateOrgSettings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/org_setting'
description: Request Body
responses:
'200':
content:
application/json:
examples:
example-1:
value:
auto_device_naming:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
auto_deviceprofile_assignment:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
auto_site_assignment:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
cacerts:
- string
cloudshark:
apitoken: string
url: string
created_time: 0
device_cert:
cert: string
key: string
disable_pcap: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
installer:
allow_all_sites: true
extra_site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
grace_period: 0
mgmt:
mxtunnel_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
use_mxtunnel: true
use_wxtunnel: true
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
password_policy:
enabled: true
freshness: 0
min_length: 8
requires_special_char: true
requires_two_factor_auth: true
pcap:
bucket: string
max_pkt_len: 0
pcap_bucket_verified: true
remote_syslog:
enabled: true
send_to_all_servers: true
servers:
- facility: change-log
host: string
port: 0
protocol: udp
severity: critical
tag: string
security:
disable_local_ssh: true
fips_zeroize_password: string
limit_ssh_access: true
tags:
- string
ui_idle_timeout: 0
schema:
$ref: '#/components/schemas/org_setting'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSettings
tags:
- Orgs Setting
/api/v1/orgs/{org_id}/setting/blacklist:
delete:
description: Delete Org Blacklist Station Clients
operationId: deleteOrgWirelessClientsBlocklist
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWirelessClientsBlocklist
tags:
- Orgs Setting
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Create Org Blacklist Client List. \n\nIf there is already a blacklist,\
\ this API will replace it with the new one. \n\nMax number of blacklist clients\
\ is 1000. \n\nRetrieve the current blacklisted clients from `blacklist_url`\
\ under Org:Setting\n"
operationId: createOrgWirelessClientsBlocklist
requestBody:
content:
application/json:
examples:
example-1:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWirelessClientsBlocklist
tags:
- Orgs Setting
/api/v1/orgs/{org_id}/setting/cradlepoint/setup:
delete:
description: This deletes the Cradlepoint integration in Mist
operationId: deleteOrgCradlepointConnection
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgCradlepointConnection
tags:
- Orgs Cradlepoint
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: This sets up cradlepoint webhooks to send events to Mist
operationId: setupOrgCradlepointConnectionToMist
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/account_cradlepoint_config'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setupOrgCradlepointConnectionToMist
tags:
- Orgs Cradlepoint
put:
description: This updates the Cradlepoint integration settings in Mist
operationId: updateOrgCradlepointConnectionToMist
requestBody:
content:
application/json:
examples:
Example:
value:
cp_api_id: 84446d61-2206-4ea5-855a-0043f980be54
cp_api_key: 79c329da9893e34099c7d8ad5cb9c941
ecm_api_id: 73446d61-2206-4ea5-855a-0043f980be62
ecm_api_key: 68b329da9893e34099c7d8ad5cb9c9405
schema:
$ref: '#/components/schemas/account_cradlepoint_config'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgCradlepointConnectionToMist
tags:
- Orgs Cradlepoint
/api/v1/orgs/{org_id}/setting/cradlepoint/sync:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "This syncs cradlepoint devices with Mist. We\u2019ll also attempt\
\ to use the LLDP data from cradlepoint to identify the linkage against Mist\
\ Site / Device"
operationId: syncOrgCradlepointRouters
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: syncOrgCradlepointRouters
tags:
- Orgs Cradlepoint
/api/v1/orgs/{org_id}/setting/jse/info:
get:
description: Retrieves the list of JSE orgs associated with the account.
operationId: getOrgJseInfo
responses:
'200':
$ref: '#/components/responses/JseInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgJseInfo
tags:
- Orgs JSE
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/setting/jse/setup:
delete:
description: Delete JSE credential
operationId: deleteOrgJsecCredential
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgJsecCredential
tags:
- Orgs JSE
get:
description: Get Org JSE Credential
operationId: getOrgJsecCredential
responses:
'200':
$ref: '#/components/responses/AccountJseInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgJsecCredential
tags:
- Orgs JSE
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "in JSE UI: \n1. Create custom role with Read access to service-location\
\ and RW access to site and IPSec profile APIs. \n2. Create a user with the\
\ above custom role. - email: john@abc.com \n3. Activate the user in the JSE\
\ account. \n4. Create the service locations on the JSE account."
operationId: setupOrgJsecCredential
requestBody:
content:
application/json:
examples:
Example:
value:
cloud_name: devcentral.juniperclouds.net
password: foryoureyesonly
username: john@abc.com
schema:
$ref: '#/components/schemas/account_jse_config'
responses:
'200':
$ref: '#/components/responses/AccountJseInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setupOrgJsecCredential
tags:
- Orgs JSE
/api/v1/orgs/{org_id}/setting/juniper/link_accounts:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Link Juniper Accounts
operationId: linkOrgToJuniperJuniperAccount
requestBody:
content:
application/json:
examples:
Example:
value:
password: password
username: john@nmo.com
schema:
$ref: '#/components/schemas/account_juniper_config'
responses:
'200':
$ref: '#/components/responses/JuniperLinkAccountSuccess'
'400':
$ref: '#/components/responses/JuniperLinkAccountFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: linkOrgToJuniperJuniperAccount
tags:
- Orgs Linked Applications
/api/v1/orgs/{org_id}/setting/juniper/unlink_account:
delete:
description: 'Unlink Juniper Customer ID
`linked_by` field is only required if there are duplicate account_names.'
operationId: unlinkOrgFromJuniperCustomerId
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/account_juniper_info'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unlinkOrgFromJuniperCustomerId
tags:
- Orgs Linked Applications
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/setting/mist_nac_crls:
get:
description: Returns all uploaded CRL file IDs with names for the orgI
operationId: getOrgNacCrl
responses:
'200':
$ref: '#/components/responses/NacCrlFilesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgNacCrl
tags:
- Orgs NAC CRL
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Import NAC Org CRL file is a multipart POST which has a .crl file
to allow user to manually upload a Certificate Revocation List file. We support
one file upload per Issuer. Re-uploads for the same issuer will overwrite
the existing file.
operationId: importOrgNacCrl
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/org_crl_import_file'
description: ''
responses:
'200':
$ref: '#/components/responses/NacCrlFile'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgNacCrl
tags:
- Orgs NAC CRL
/api/v1/orgs/{org_id}/setting/mist_nac_crls/{naccrl_id}:
delete:
description: Delete NAC Org CRL file is a DELETE request to delete CRL file
identified by its ID (ID assigned on file upload/creation)
operationId: deleteOrgNacCrl
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgNacCrl
tags:
- Orgs NAC CRL
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/naccrl_id'
/api/v1/orgs/{org_id}/setting/pcap_bucket/setup:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Provide Customer Bucket Name\n\nSetting up Custom PCAP Bucket\
\ Involves the following:\n* provide the bucket name\n* we\u2019ll attempt\
\ to write a file MIST_TOKEN\n* you have to verify the ownership of the bucket\
\ by providing the content of the MIST_TOKEN"
operationId: setOrgCustomBucket
requestBody:
content:
application/json:
examples:
example-1:
value:
bucket: company-private-pcap
schema:
$ref: '#/components/schemas/pcap_bucket'
description: Request Body
responses:
'200':
$ref: '#/components/responses/PcapBucketConfig'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setOrgCustomBucket
tags:
- Orgs Setting
/api/v1/orgs/{org_id}/setting/pcap_bucket/verify:
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: "Verify Customer PCAP Bucket\n\n**Note**: If successful, a \u201C\
VERIFIED\u201D file will be created in the bucket"
operationId: verifyOrgCustomBucket
requestBody:
content:
application/json:
examples:
example-1:
value:
bucket: company-private-pcap
verify_token: eyJhbGciOiJIUzI1J9.eyJzdWIiOiIxMjM0joiMjgxOG5MDIyfQ.2rzcRvMA3Eg09NnjCAC-1EWMRtxAnFDM
schema:
$ref: '#/components/schemas/pcap_bucket_verify'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifyOrgCustomBucket
tags:
- Orgs Setting
/api/v1/orgs/{org_id}/setting/zscaler/setup:
delete:
description: To delete Zscaler credential
operationId: deleteOrgZscalerCredential
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgZscalerCredential
tags:
- Orgs Devices Zscaler
get:
description: To get Zscaler credential
operationId: getOrgZscalerCredential
responses:
'200':
$ref: '#/components/responses/ZscalerAccount'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgZscalerCredential
tags:
- Orgs Devices Zscaler
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: To setup Zscaler credential
operationId: setupOrgZscalerCredential
requestBody:
content:
application/json:
examples:
Example:
value:
cloud_name: zscalerbeta.net
parnter_key: K35vrZcK3JvrZc
password: password
username: john@nmo.com
schema:
$ref: '#/components/schemas/account_zscaler_config'
description: ''
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setupOrgZscalerCredential
tags:
- Orgs Devices Zscaler
/api/v1/orgs/{org_id}/setting/{app_name}/link_accounts:
get:
description: Get Org Level OAuth Application Linked Status
operationId: getOrgOauthAppLinkedStatus
parameters:
- description: Mist portal url to which backend needs to redirect after succesful
OAuth authorization. **Required** to get the `authorization_url`
in: query
name: forward
required: true
schema:
type: string
responses:
'200':
$ref: '#/components/responses/OauthAppLink'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgOauthAppAuthorizationUrl
tags:
- Orgs Linked Applications
parameters:
- $ref: '#/components/parameters/org_id'
- description: OAuth application name
in: path
name: app_name
required: true
schema:
enum:
- zoom
- teams
- intune
- jamf
- vmware
title: oauth_app_name
type: string
post:
description: Add Jamf, VMware Authorization With Mist Portal
operationId: addOrgOauthAppAccounts
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/account_oauth_add'
responses:
'200':
description: Successful
'400':
description: Unsuccessful
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addOrgOauthAppAccounts
tags:
- Orgs Linked Applications
put:
description: 'Update Zoom, Teams, Intune Authorization.
Request Payload, These Field And Values Will Be Specific To Each Of The Third
Party Apps Accounts.'
operationId: updateOrgOauthAppAccounts
requestBody:
content:
application/json:
examples:
Example:
value:
account_id: iojzXIJWEuiD73ZvydOfg
max_daily_api_requests: 5000
schema:
$ref: '#/components/schemas/account_oauth_config'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgOauthAppAccounts
tags:
- Orgs Linked Applications
/api/v1/orgs/{org_id}/setting/{app_name}/link_accounts/{account_id}:
delete:
description: Delete Org Level OAuth Application Authorization With Mist Portal
operationId: deleteOrgOauthAppAuthorization
responses:
'200':
description: Successful
'400':
description: Unsuccessful
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgOauthAppAuthorization
tags:
- Orgs Linked Applications
parameters:
- $ref: '#/components/parameters/org_id'
- description: OAuth application name
in: path
name: app_name
required: true
schema:
enum:
- zoom
- teams
- intune
- jamf
- vmware
title: account_oauth_app_name
type: string
- $ref: '#/components/parameters/account_id'
/api/v1/orgs/{org_id}/sitegroups:
get:
description: Get List of Org Site Groups
operationId: listOrgSiteGroups
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/SitegroupsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSiteGroups
tags:
- Orgs Sitegroups
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Site Group
operationId: createOrgSiteGroup
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
schema:
$ref: '#/components/schemas/sitegroup'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sitegroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSiteGroup
tags:
- Orgs Sitegroups
/api/v1/orgs/{org_id}/sitegroups/{sitegroup_id}:
delete:
description: Delete Org Site Group
operationId: deleteOrgSiteGroup
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgSiteGroup
tags:
- Orgs Sitegroups
get:
description: Get Org Site Group
operationId: getOrgSiteGroup
responses:
'200':
$ref: '#/components/responses/Sitegroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSiteGroup
tags:
- Orgs Sitegroups
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sitegroup_id'
put:
description: Update Org Site Group
operationId: updateOrgSiteGroup
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
schema:
$ref: '#/components/schemas/name'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sitegroup'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSiteGroup
tags:
- Orgs Sitegroups
/api/v1/orgs/{org_id}/sites:
get:
description: Get List of Org Sites
operationId: listOrgSites
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/SitesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSites
tags:
- Orgs Sites
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Site
operationId: createOrgSite
requestBody:
content:
application/json:
examples:
example-1:
value:
address: 1601 S. Deanza Blvd., Cupertino, CA, 95014
alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
apporttemplate_id: string
aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b
country_code: US
gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f
latlng:
lat: 37.295833
lng: -122.032946
name: Mist Office
networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2
notes: string
rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2
secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef
sitegroup_ids:
- 497f6eca-6276-4997-bfeb-53cbbbba6f3b
timezone: America/Los_Angeles
schema:
$ref: '#/components/schemas/site'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Site'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSite
tags:
- Orgs Sites
/api/v1/orgs/{org_id}/sites/count:
get:
description: Count Sites
operationId: countOrgSites
parameters:
- in: query
name: distinct
schema:
default: id
enum:
- analytic_enabled
- app_waking
- asset_enabled
- auto_upgrade_enabled
- auto_upgrade_version
- country_code
- honeypot_enabled
- id
- locate_unconnected
- mesh_enabled
- name
- rogue_enabled
- remote_syslog_enabled
- rtsa_enabled
- vna_enabled
- wifi_enabled
title: Org Sites count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgSites
tags:
- Orgs Sites
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/sites/search:
get:
description: Search Sites
operationId: searchOrgSites
parameters:
- description: if Advanced Analytic feature is enabled
in: query
name: analytic_enabled
schema:
type: boolean
- description: if App Waking feature is enabled
in: query
name: app_waking
schema:
type: boolean
- description: if Asset Tracking is enabled
in: query
name: asset_enabled
schema:
type: boolean
- description: if Auto Upgrade feature is enabled
in: query
name: auto_upgrade_enabled
schema:
type: boolean
- description: if Auto Upgrade feature is enabled
in: query
name: auto_upgrade_version
schema:
type: string
- description: site country code
in: query
name: country_code
schema:
type: string
- description: if Honeypot detection is enabled
in: query
name: honeypot_enabled
schema:
type: boolean
- description: site id
in: query
name: id
schema:
type: string
- description: if unconnected client are located
in: query
name: locate_unconnected
schema:
type: boolean
- description: if Mesh feature is enabled
in: query
name: mesh_enabled
schema:
type: boolean
- description: site name
in: query
name: name
schema:
type: string
- description: if Rogue detection is enabled
in: query
name: rogue_enabled
schema:
type: boolean
- description: if Remote Syslog is enabled
in: query
name: remote_syslog_enabled
schema:
type: boolean
- description: if managed mobility feature is enabled
in: query
name: rtsa_enabled
schema:
type: boolean
- description: if Virtual Network Assistant is enabled
in: query
name: vna_enabled
schema:
type: boolean
- description: if WIFI feature is enabled
in: query
name: wifi_enabled
schema:
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SitesSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgSites
tags:
- Orgs Sites
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/sites/{site_name}/maps/import:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/site_name'
post:
description: 'Import data from files is a multipart POST which has a file, an
optional json, and an optional csv, to create floorplan, assign matching inventory
to specific site, place ap if name or mac matches
#### Request
```
"json": a JSON string describing your upload
"file": a binary file
```'
operationId: importOrgMapToSite
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_site_import_file'
description: 'a JSON string, site id required, vendor option: ekahau, ibwave,
etc., import_all_floorplans: optional, default: false, import_height: optional,
default: true, import_orientation: optional, default: true
"file": a binary file, option: .esx
"csv": a csv file for ap name mapping, optional'
responses:
'200':
$ref: '#/components/responses/MapImport'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgMapToSite
tags:
- Orgs Maps
/api/v1/orgs/{org_id}/sitetemplates:
get:
description: Get List of Org Site Templates
operationId: listOrgSiteTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/SiteTemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSiteTemplates
tags:
- Orgs Site Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Site Template
operationId: createOrgSiteTemplates
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/site_template'
responses:
'200':
$ref: '#/components/responses/SiteTemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSiteTemplates
tags:
- Orgs Site Templates
/api/v1/orgs/{org_id}/sitetemplates/{sitetemplate_id}:
delete:
description: Delete Org Site Template
operationId: deleteOrgSiteTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgSiteTemplate
tags:
- Orgs Site Templates
get:
description: Get Org Site Template
operationId: getOrgSiteTemplate
responses:
'200':
$ref: '#/components/responses/SiteTemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSiteTemplate
tags:
- Orgs Site Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sitetemplate_id'
put:
description: Update Org Site Template
operationId: updateOrgSiteTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/site_template'
responses:
'200':
$ref: '#/components/responses/SiteTemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSiteTemplate
tags:
- Orgs Site Templates
/api/v1/orgs/{org_id}/ssoroles:
get:
description: Get List of Org SSO Roles
operationId: listOrgSsoRoles
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/SsoRolesMspArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSsoRoles
tags:
- Orgs SSO Roles
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org SSO Role
operationId: createOrgSsoRole
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/sso_role_org'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SsoRoleOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSsoRole
tags:
- Orgs SSO Roles
/api/v1/orgs/{org_id}/ssoroles/{ssorole_id}:
delete:
description: Delete Org SSO Role
operationId: deleteOrgSsoRole
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgSsoRole
tags:
- Orgs SSO Roles
get:
description: Get Org SSO Role Details
operationId: getOrgSsoRole
responses:
'200':
$ref: '#/components/responses/SsoRoleOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSsoRole
tags:
- Orgs SSO Roles
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/ssorole_id'
put:
description: Update Org SSO Role
operationId: updateOrgSsoRole
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/sso_role_org'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SsoRoleOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSsoRole
tags:
- Orgs SSO Roles
/api/v1/orgs/{org_id}/ssos:
get:
description: Get List of Org SSO Configuration
operationId: listOrgSsos
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/SsosArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSsos
tags:
- Orgs SSO
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org SSO Configuration
operationId: createOrgSso
requestBody:
content:
application/json:
examples:
example-1:
value:
custom_logout_url: string
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
ignore_unmatched_roles: true
issuer: string
name: string
nameid_format: email
schema:
$ref: '#/components/schemas/sso'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgSso
tags:
- Orgs SSO
/api/v1/orgs/{org_id}/ssos/{sso_id}:
delete:
description: Delete Org SSO Configuration
operationId: deleteOrgSso
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgSso
tags:
- Orgs SSO
get:
description: Get Org SSO Configuration Details
operationId: getOrgSso
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSso
tags:
- Orgs SSO
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sso_id'
put:
description: Update Org SSO Configuration
operationId: updateOrgSso
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/sso'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Sso'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgSso
tags:
- Orgs SSO
/api/v1/orgs/{org_id}/ssos/{sso_id}/failures:
get:
description: Get List of Org SSO Latest Failures
operationId: listOrgSsoLatestFailures
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SsoLatestFailures'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSsoLatestFailures
tags:
- Orgs SSO
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/orgs/{org_id}/ssos/{sso_id}/metadata:
get:
description: Get Org SSO SAML Metadata
operationId: getOrgSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/SsoSamlMetadata'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgSsoSamlMetadata
tags:
- Orgs SSO
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/orgs/{org_id}/ssos/{sso_id}/metadata.xml:
get:
description: "Download Org SSO SAML Metdata\n\nExample of metadata.xml:\n```xml\n\
\n \n \n \
\ urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified\n\
\ \n \n \
\ Mist\n \n \n \n\
\ \n \n\n\
```"
operationId: downloadOrgSsoSamlMetadata
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: downloadOrgSsoSamlMetadata
tags:
- Orgs SSO
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/sso_id'
/api/v1/orgs/{org_id}/ssr/upgrade:
get:
description: Get List of Org SSR Upgrades
operationId: listOrgSsrUpgrades
responses:
'200':
$ref: '#/components/responses/SsrUpgradesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgSsrUpgrades
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Upgrade Org SSRs
operationId: upgradeOrgSsrs
requestBody:
content:
application/json:
examples:
example-1:
value:
channel: stable
device_ids:
- 00000000-0000-0000-1000-5c5b3500001f
- 00000000-0000-0000-1000-5c5b35000020
strategy: big_bang
version: 5.3.0-93
schema:
$ref: '#/components/schemas/ssr_upgrade_multi'
responses:
'200':
$ref: '#/components/responses/SsrUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeOrgSsrs
tags:
- Utilities Upgrade
/api/v1/orgs/{org_id}/ssr/upgrade/{upgrade_id}/cancel:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/upgrade_id'
post:
description: "Best effort to cancel an upgrade. Devices which are already upgraded\
\ wont be touched\u21B5\n"
operationId: cancelOrgSsrUpgrade
requestBody:
content:
application/json:
schema:
properties: {}
type: object
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: cancelOrgSsrUpgrade
tags:
- Utilities Upgrade
/api/v1/orgs/{org_id}/ssr/versions:
get:
description: Get available version for SSR
operationId: listOrgAvailableSsrVersions
parameters:
- in: query
name: channel
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SsrVersions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAvailableSsrVersions
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats:
get:
description: Get Org Stats
operationId: getOrgStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/OrgStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgStats
tags:
- Orgs Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/assets:
get:
description: Get List of Org Assets Stats
operationId: listOrgAssetsStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AssetsArrayStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgAssetsStats
tags:
- Orgs Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/assets/count:
get:
description: Count Org Assets
operationId: countOrgAssetsByDistanceField
parameters:
- in: query
name: distinct
schema:
enum:
- site_id
- mac
- map_id
- ibeacon_uuid
- ibeacon_major
- ibeacon_minor
title: Org Asset count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgAssetsByDistanceField
tags:
- Orgs Assets
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/assets/search:
get:
description: Search for Org Assets
operationId: searchOrgAssets
parameters:
- in: query
name: site_id
schema:
format: uuid
type: string
- in: query
name: mac
schema:
type: string
- in: query
name: device_name
schema:
type: string
- in: query
name: name
schema:
type: string
- in: query
name: map_id
schema:
format: uuid
type: string
- in: query
name: ibeacon_uuid
schema:
format: uuid
type: string
- in: query
name: ibeacon_major
schema:
type: string
- in: query
name: ibeacon_minor
schema:
type: string
- in: query
name: eddystone_uid_namespace
schema:
type: string
- in: query
name: eddystone_uid_instance
schema:
type: string
- in: query
name: eddystone_url
schema:
type: string
- in: query
name: ap_mac
schema:
type: string
- in: query
name: beam
schema:
type: integer
- in: query
name: rssi
schema:
type: integer
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AssetsArrayStatsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgAssets
tags:
- Orgs Assets
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/bgp_peers/count:
get:
description: Count Org BGP Stats
operationId: countOrgBgpStats
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgBgpStats
tags:
- Orgs Devices Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/bgp_peers/search:
get:
description: Search Org BGP Stats
operationId: searchOrgBgpStats
responses:
'200':
$ref: '#/components/responses/BgpStatsArraySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgBgpStats
tags:
- Orgs Devices Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/devices:
get:
description: 'Get List of Org Devices stats
This API renders some high-level device stats, pagination is assumed and returned
in response header (as the response is an array)'
operationId: listOrgDevicesStats
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type_with_all'
- in: query
name: status
schema:
default: all
enum:
- all
- connected
- disconnected
title: device_status
type: string
- in: query
name: site_id
schema:
format: uuid
type: string
- in: query
name: mac
schema:
type: string
- description: EVPN Topology ID
in: query
name: evpntopo_id
schema:
format: uuid
type: string
- description: "if `evpn_unused`==`true`, find EVPN eligible switches which\
\ don\u2019t belong to any EVPN Topology yet"
in: query
name: evpn_unused
schema:
type: string
- $ref: '#/components/parameters/fields'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DevicesArrayStatsOrg'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgDevicesStats
tags:
- Orgs Devices
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/mxedges:
get:
description: Get List of Org MxEdge Stats
operationId: listOrgMxEdgesStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- description: filter for site level mist edges
in: query
name: for_site
schema:
default: 'false'
enum:
- 'true'
- 'false'
- any
type: string
responses:
'200':
$ref: '#/components/responses/MxedgesArrayStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgMxEdgesStats
tags:
- Orgs Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/mxedges/{mxedge_id}:
get:
description: Get Org MxEdge Details Stats
operationId: getOrgMxEdgeStats
responses:
'200':
$ref: '#/components/responses/MxedgeStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgMxEdgeStats
tags:
- Orgs Stats
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/mxedge_id'
/api/v1/orgs/{org_id}/stats/otherdevices/{device_mac}:
get:
description: Get Otherdevice Stats
operationId: getOrgOtherDeviceStats
responses:
'200':
$ref: '#/components/responses/DeviceOtherStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgOtherDeviceStats
tags:
- Orgs Devices Others
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/device_mac'
/api/v1/orgs/{org_id}/stats/ports/search:
get:
description: Search Switch / Gateway Ports
operationId: searchOrgSwOrGwPorts
parameters:
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Output errors
in: query
name: tx_errors
schema:
type: integer
- description: Input errors
in: query
name: rx_errors
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: Limit on number of dynamically learned macs
in: query
name: mac_limit
schema:
type: integer
- description: Number of mac addresses in the forwarding table
in: query
name: mac_count
schema:
type: integer
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: if `up`==`true` && has Authenticator role
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/PortStatsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgSwOrGwPorts
tags:
- Orgs Devices Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/switch_ports/count:
get:
description: Count by Distinct Attributes of Switch/Gateway Ports
operationId: countOrgSwitchPorts
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- port_id
- port_mac
- full_duplex
- mac
- neighbor_mac
- neighbor_port_desc
- neighbor_system_name
- poe_disabled
- poe_mode
- poe_on
- speed
- up
title: Org Switch Port count distinct
type: string
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: if `up`==`true`
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgSwitchPorts
tags:
- Orgs Devices Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/tunnels/count:
get:
description: Count Mist Tunnels Stats
operationId: countOrgTunnelsStats
parameters:
- description: "- If `type`==`wxtunnel`: wxtunnel_id / ap / remote_ip / remote_port\
\ / state / mxedge_id / mxcluster_id / site_id / peer_mxedge_id; default\
\ is wxtunnel_id \n- If `type`==`wan`: mac / site_id / node / peer_ip /\
\ peer_host/ ip / tunnel_name / protocol / auth_algo / encrypt_algo / ike_version\
\ / last_event / up"
in: query
name: distinct
schema:
default: wxtunnel_id
enum:
- auth_algo
- wxtunnel_id
- ap
- remote_ip
- remote_port
- state
- mxedge_id
- mxcluster_id
- site_id
- peer_mxedge_id
- mac
- node
- peer_ip
- peer_host
- ip
- tunnel_name
- protocol
- encrypt_algo
- ike_version
- last_event
- up
title: Org Tunnel count distinct
type: string
- in: query
name: type
schema:
default: wxtunnel
enum:
- wxtunnel
- wan
title: Org Tunnel type count
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgTunnelsStats
tags:
- Orgs Tunnels Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/tunnels/search:
get:
description: Search Org Tunnels Stats
operationId: searchOrgTunnelsStats
parameters:
- description: if `type`==`wxtunnel`
in: query
name: mxcluster_id
schema:
type: string
- in: query
name: site_id
schema:
type: string
- description: if `type`==`wxtunnel`
in: query
name: wxtunnel_id
schema:
type: string
- description: if `type`==`wxtunnel`
in: query
name: ap
schema:
type: string
- description: if `type`==`wan`
in: query
name: mac
schema:
type: string
- description: if `type`==`wan`
in: query
name: node
schema:
type: string
- description: if `type`==`wan`
in: query
name: peer_ip
schema:
type: string
- description: if `type`==`wan`
in: query
name: peer_host
schema:
type: string
- description: if `type`==`wan`
in: query
name: ip
schema:
type: string
- description: if `type`==`wan`
in: query
name: tunnel_name
schema:
type: string
- description: if `type`==`wan`
in: query
name: protocol
schema:
type: string
- description: if `type`==`wan`
in: query
name: auth_algo
schema:
type: string
- description: if `type`==`wan`
in: query
name: encrypt_algo
schema:
type: string
- description: if `type`==`wan`
in: query
name: ike_version
schema:
type: string
- description: if `type`==`wan`
in: query
name: up
schema:
type: string
- in: query
name: type
schema:
default: wxtunnel
enum:
- wxtunnel
- wan
title: tunnel_type
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/TunnelsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgTunnelsStats
tags:
- Orgs Tunnels Stats
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/vpn_peers/count:
get:
description: Count Org Peer Path Statgs
operationId: countOrgPeerPathStats
parameters:
- in: query
name: distinct
schema:
title: Org VPN Peers count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgPeerPathStats
tags:
- Orgs VPNs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/stats/vpn_peers/search:
get:
description: Search Org Peer Path Stats
operationId: searchOrgPeerPathStats
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/VpnPeersStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgPeerPathStats
tags:
- Orgs VPNs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/subscriptions:
delete:
description: 'Unsubscribe from Org Alarms/Reports
Subscriptions define how Org Alarms/Reports are delivered to whom'
operationId: unsubscribeOrgAlarmsReports
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unsubscribeOrgAlarmsReports
tags:
- Orgs Subscriptions
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Subscribe to Org Alarms/Reports
Subscriptions define how Org Alarms/Reports are delivered to whom'
operationId: subscribeOrgAlarmsReports
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: subscribeOrgAlarmsReports
tags:
- Orgs Subscriptions
/api/v1/orgs/{org_id}/templates:
get:
description: Get List of Org WLAN Templates
operationId: listOrgTemplates
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/TemplatesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgTemplates
tags:
- Orgs WLAN Templates
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Template
operationId: createOrgTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Template'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgTemplate
tags:
- Orgs WLAN Templates
/api/v1/orgs/{org_id}/templates/{template_id}:
delete:
description: Delete Org Template
operationId: deleteOrgTemplate
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgTemplate
tags:
- Orgs WLAN Templates
get:
description: Get Org Template Details
operationId: getOrgTemplate
responses:
'200':
$ref: '#/components/responses/Template'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgTemplate
tags:
- Orgs WLAN Templates
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/template_id'
put:
description: Update Org Template
operationId: updateOrgTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Template'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgTemplate
tags:
- Orgs WLAN Templates
/api/v1/orgs/{org_id}/templates/{template_id}/clone:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/template_id'
post:
description: Clone Org Template
operationId: cloneOrgTemplate
requestBody:
content:
application/json:
examples:
example-1:
value:
name: Cloned
schema:
$ref: '#/components/schemas/name'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Template'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: cloneOrgTemplate
tags:
- Orgs WLAN Templates
/api/v1/orgs/{org_id}/tickets:
get:
description: Get List of Tickets of an Org
operationId: listOrgTickets
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/TicketsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgTickets
tags:
- Orgs Tickets
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create a support ticket
operationId: createOrgTicket
requestBody:
content:
application/json:
examples:
example-1:
value:
comment: string
subject: string
type: question
schema:
$ref: '#/components/schemas/ticket'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Ticket'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgTicket
tags:
- Orgs Tickets
/api/v1/orgs/{org_id}/tickets/count:
get:
description: Count Org Tickets
operationId: countOrgTickets
parameters:
- in: query
name: distinct
schema:
default: status
enum:
- status
- type
title: Org Tickets count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgTickets
tags:
- Orgs Tickets
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/tickets/{ticket_id}:
get:
description: Get support ticket details
operationId: getOrgTicket
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Ticket'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgTicket
tags:
- Orgs Tickets
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/ticket_id'
put:
description: Update support ticket
operationId: updateOrgTicket
requestBody:
content:
application/json:
examples:
example-1:
value:
comment: string
subject: string
type: question
schema:
$ref: '#/components/schemas/ticket'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Ticket'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgTicket
tags:
- Orgs Tickets
/api/v1/orgs/{org_id}/tickets/{ticket_id}/comments:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/ticket_id'
post:
description: Add Comment to support ticket
operationId: addOrgTicketComment
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ticket_comment'
multipart/form-data:
schema:
$ref: '#/components/schemas/ticket_comment_import_file'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Ticket'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addOrgTicketComment
tags:
- Orgs Tickets
/api/v1/orgs/{org_id}/troubleshoot:
get:
description: 'Troubleshoot sites, devices, clients, and wired clients. See search
APIs for device information:
- [search Device](/#operation/searchOrgDevices)
- [search Wireless Client](/#operation/searchOrgWirelessClients)
- [search Wired Client](/#operation/searchOrgWiredClients)
- [search Wan Client](/#operation/searchOrgWanClients)
**NOTE**: requires Marvis subscription license'
operationId: troubleshootOrg
parameters:
- description: '**required** when troubleshooting device or a client'
in: query
name: mac
schema:
type: string
- description: '**required** when troubleshooting site'
in: query
name: site_id
schema:
format: uuid
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- description: when troubleshooting site, type of network to troubleshoot
in: query
name: type
schema:
enum:
- wireless
- wired
- wan
title: troubleshoot_type
type: string
responses:
'200':
$ref: '#/components/responses/Troubleshoot'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: troubleshootOrg
tags:
- Orgs Marvis
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/usermacs:
get:
description: List Org User MACs
operationId: listOrgUserMacs
parameters:
- in: query
name: blacklisted
schema:
type: boolean
- in: query
name: for
schema:
type: boolean
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/UserMacArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgUserMacs
tags:
- Orgs User MACs
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org User MACs
operationId: createOrgUserMacs
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/user_mac'
responses:
'200':
$ref: '#/components/responses/UserMac'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgUserMacs
tags:
- Orgs User MACs
/api/v1/orgs/{org_id}/usermacs/delete:
delete:
description: Delete Org User MACs
operationId: deleteOrgUserMacs
requestBody:
content:
application/json:
schema:
example:
- 5684dae9ac8b
items:
type: string
type: array
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgUserMacs
tags:
- Orgs User MACs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/usermacs/import:
delete:
description: Import Org User MACs
operationId: importOrgUserMacs
requestBody:
content:
application/octet-stream:
schema:
$ref: '#/components/schemas/binary_stream'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importOrgUserMacs
tags:
- Orgs User MACs
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/vars/search:
get:
description: 'Search vars
Example: /api/v1/orgs/:org_id/vars/search?vars=*'
operationId: searchOrgVars
parameters:
- in: query
name: site_id
schema:
type: string
- in: query
name: vars
schema:
type: string
- in: query
name: src
schema:
enum:
- site
- deviceprofile
title: var_source
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/SearchVar'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgVars
tags:
- Orgs Vars
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/vpns:
get:
description: Get List of Org VPNs
operationId: listOrgsVpns
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/VpnsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgsVpns
tags:
- Orgs VPNs
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org VPN
operationId: createOrgVpns
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
paths:
property1:
bfd_profile: broadband
ip: string
property2:
bfd_profile: lte
ip: string
schema:
$ref: '#/components/schemas/vpn'
responses:
'200':
$ref: '#/components/responses/Vpn'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgVpns
tags:
- Orgs VPNs
/api/v1/orgs/{org_id}/vpns/{vpn_id}:
delete:
description: delete Org Vpn
operationId: deleteOrgVpn
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgVpn
tags:
- Orgs VPNs
get:
description: getOrgVpn
operationId: getOrgVpn
responses:
'200':
$ref: '#/components/responses/Vpn'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgVpn
tags:
- Orgs VPNs
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/vpn_id'
put:
description: update Org Vpn
operationId: updateOrgVpn
requestBody:
content:
application/json:
examples:
example-1:
value:
name: string
paths:
property1:
bfd_profile: broadband
ip: string
property2:
bfd_profile: broadband
ip: string
schema:
$ref: '#/components/schemas/vpn'
responses:
'200':
$ref: '#/components/responses/Vpn'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgVpn
tags:
- Orgs VPNs
/api/v1/orgs/{org_id}/wan_client/events/count:
get:
description: Count by Distinct Attributes of Org WAN Client-Events
operationId: countOrgWanClientEvents
parameters:
- in: query
name: distinct
schema:
default: type
enum:
- type
- hostname
- ip
- mfg
- mac
title: Org Wan Clients events count distinct
type: string
- $ref: '#/components/parameters/client_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgWanClientEvents
tags:
- Orgs Clients - Wan
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wan_clients/count:
get:
description: Count Org WAN Clients
operationId: countOrgWanClients
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- hostname
- ip
- mfg
- mac
title: Org Wan Clients count distinct
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgWanClients
tags:
- Orgs Clients - Wan
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wan_clients/events/search:
get:
description: Search Org WAN Client Events
operationId: searchOrgWanClientEvents
parameters:
- $ref: '#/components/parameters/client_event_type'
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: client IP
in: query
name: ip
schema:
type: string
- description: Manufacture
in: query
name: mfg
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WanClientEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWanClientEvents
tags:
- Orgs Clients - Wan
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wan_clients/search:
get:
description: Search Org WAN Clients
operationId: searchOrgWanClients
parameters:
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: client IP
in: query
name: ip
schema:
type: string
- description: Manufacture
in: query
name: mfg
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/WanClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWanClients
tags:
- Orgs Clients - Wan
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/webhooks:
get:
description: Get List of Org Webhooks
operationId: listOrgWebhooks
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WebhooksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgWebhooks
tags:
- Orgs Webhooks
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: 'Create Org Webhook
**N.B**. For org webhooks, only alarms/audits/client-info/client-join/client-sessions/device-events/device-updowns/mxedge-events
Infrastructure topics are supported.'
operationId: createOrgWebhook
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWebhook
tags:
- Orgs Webhooks
/api/v1/orgs/{org_id}/webhooks/{webhook_id}:
delete:
description: Delete Org Webhook
operationId: deleteOrgWebhook
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWebhook
tags:
- Orgs Webhooks
get:
description: Get Org Webhook Details
operationId: getOrgWebhook
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWebhook
tags:
- Orgs Webhooks
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/webhook_id'
put:
description: Update Org Webhook
operationId: updateOrgWebhook
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/webhook'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWebhook
tags:
- Orgs Webhooks
/api/v1/orgs/{org_id}/webhooks/{webhook_id}/events/search:
get:
description: 'Search webhooks deliveries Supported Topics: - alarms - audits
- device-updowns - occupancy-alerts - ping'
operationId: searchOrgWebhooksDeliveries
parameters:
- in: query
name: site_id
schema:
format: uuid
type: string
- in: query
name: error
schema:
type: string
- in: query
name: status_code
schema:
type: integer
- in: query
name: status
schema:
$ref: '#/components/schemas/webhook_delivery_status'
- description: webhook topic
in: query
name: topic
schema:
$ref: '#/components/schemas/webhook_delivery_topic'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WebhookDeliverySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWebhooksDeliveries
tags:
- Orgs Webhooks
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/webhook_id'
/api/v1/orgs/{org_id}/webhooks/{webhook_id}/ping:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/webhook_id'
post:
description: send a Ping event to the webhook
operationId: pingOrgWebhook
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: pingOrgWebhook
tags:
- Orgs Webhooks
/api/v1/orgs/{org_id}/wired_clients/count:
get:
description: 'Count by Distinct Attributes of Clients
Note: For list of avaialable `type` values, please refer to [listClientEventsDefinitions](/#operation/listClientEventsDefinitions)'
operationId: countOrgWiredClients
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- port_id
- vlan
- mac
- device_mac
- site_id
- type
title: Org Wired Clients count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countOrgWiredClients
tags:
- Orgs Clients - Wired
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wired_clients/search:
get:
description: 'Search for Wired Clients in org
Note: For list of avaialable `type` values, please refer to [listClientEventsDefinitions](/#operation/listClientEventsDefinitions)'
operationId: searchOrgWiredClients
parameters:
- description: Site ID
in: query
name: site_id
schema:
type: string
- description: device mac
in: query
name: device_mac
schema:
type: string
- description: client mac
in: query
name: mac
schema:
type: string
- description: port id
in: query
name: port_id
schema:
type: string
- description: vlan
in: query
name: vlan
schema:
type: integer
- description: ip
in: query
name: ip
schema:
type: string
- description: client manufacturer
in: query
name: manufacture
schema:
type: string
- description: single entry of hostname/mac
in: query
name: text
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/WiredClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchOrgWiredClients
tags:
- Orgs Clients - Wired
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wlans:
get:
description: Get List of Org Wlans
operationId: listOrgWlans
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WlansArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgWlans
tags:
- Orgs Wlans
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org Wlan
operationId: createOrgWlan
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wlan'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wlan'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWlan
tags:
- Orgs Wlans
/api/v1/orgs/{org_id}/wlans/{wlan_id}:
delete:
description: Delete Org WLAN
operationId: deleteOrgWlan
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWlan
tags:
- Orgs Wlans
get:
description: Get Org Wlan Detail
operationId: getOrgWLAN
responses:
'200':
$ref: '#/components/responses/WlansArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWLAN
tags:
- Orgs Wlans
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wlan_id'
put:
description: Update Org Wlan
operationId: updateOrgWlan
requestBody:
content:
application/json:
examples:
Example:
value:
acct_immediate_update: false
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
airwatch:
api_key: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
console_url: https://hs1.airwatchportals.com
enabled: true
password: user1
username: test123
allow_ipv6_ndp: true
allow_mdns: false
allow_ssdp: false
ap_ids:
- 497f6eca-6276-4993-bfeb-53e5bbba6f08
app_limit:
apps:
dropbox: 300
netflix: 60
enabled: false
wxtag_ids:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
app_qos:
apps:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
enabled: true
others:
- dscp: 32
dst_subnet: 10.2.0.0/16
port_ranges: 80,1024-6553
protocol: udp
src_subnet: 10.2.0.0/16
apply_to: site
arp_filter: false
auth:
anticlog_threshold: 16
eap_reauth: false
enable_mac_auth: false
key_idx: 1
keys:
- string
multi_psk_only: false
owe: string
pairwise:
- wpa2-ccmp
private_wlan: true
psk: foryoureyesonly
type: psk
wep_as_secondary_auth: true
auth_server_selection: ordered
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_nas_id: 5c5b350e0101-nas
auth_servers_nas_ip: 15.3.1.5
auth_servers_retries: 5
auth_servers_timeout: 5
band: string
band_steer: false
band_steer_force_band5: false
bands:
- '24'
- '5'
block_blacklist_clients: false
bonjour:
additional_vlan_ids:
- 0
enabled: false
services:
airplay:
radius_groups:
- teachers
scope: same_ap
cisco_cwa:
allowed_hostnames:
- snapchat.com
allowed_subnets:
- 63.5.3.0/24
blocked_subnets:
- 192.168.0.0/16
enabled: false
client_limit_down: 0
client_limit_down_enabled: false
client_limit_up: 0
client_limit_up_enabled: false
coa_servers:
- disable_event_timestamp_check: false
enabled: false
ip: 1.2.3.4
port: 3799
secret: testing456
created_time: 0
disable_11ax: false
disable_ht_vht_rates: false
disable_uapsd: false
disable_v1_roam_notify: false
disable_v2_roam_notify: false
disable_wmm: false
dns_server_rewrite:
enabled: false
radius_groups:
contractor: 172.1.1.1
guest: 8.8.8.8
dtim: 2
dynamic_psk:
default_psk: foryoureyesonly
default_vlan_id: 999
enabled: false
source: cloud_psks
vlan_ids:
- 1
dynamic_vlan:
default_vlan_id: 999
enabled: false
local_vlan_ids:
- 1
type: airespace-interface-name
vlans:
'131': default
'322': fast,video
enable_local_keycaching: false
enable_wireless_bridging: false
enabled: true
fast_dot1x_timers: false
for_site: true
hide_ssid: false
hostname_ie: false
hotspot20:
domain_name:
- mist.com
enabled: true
nai_realms:
- string
operators:
- google
- att
rcoi:
- 5A03BA0000
venue_name: some_name
id: 497f6eca-6276-4993-bfeb-53e6bbba6f08
interface: all
isolation: false
l2_isolation: false
legacy_overds: false
limit_bcast: false
limit_probe_response: true
max_idletime: 1800
mist_nac:
enabled: false
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
mxtunnel: {}
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name:
- default
no_static_dns: false
no_static_ip: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
portal:
amazon_client_id: string
amazon_client_secret: string
amazon_email_domains:
- string
amazon_enabled: false
auth: none
azure_client_id: string
azure_client_secret: string
azure_enabled: false
azure_tenant_id: string
broadnet_password: password
broadnet_sid: MIST
broadnet_user_id: juniper
bypass_when_cloud_down: false
clickatell_api_key: string
cross_site: false
email_enabled: true
enabled: false
expire: 1440
external_portal_url: string
facebook_client_id: string
facebook_client_secret: string
facebook_email_domains:
- string
facebook_enabled: false
forward: false
forward_url: http://abc.com/promotions
google_client_id: string
google_client_secret: string
google_email_domains:
- mydomain.edu
- mydomain.org
google_enabled: false
gupshup_password: string
gupshup_userid: string
microsoft_client_id: string
microsoft_client_secret: string
microsoft_email_domains:
- string
microsoft_enabled: false
passphrase_enabled: false
password: let me in
portal_allowed_hostnames: string
portal_allowed_subnets: string
portal_api_secret: string
portal_denied_hostnames: string
portal_image: https://url/to/image.png
portal_sso_url: string
predefined_sponsors_enabled: true
privacy: true
puzzel_password: string
puzzel_service_id: string
puzzel_username: string
smsMessageFormat: string
sms_enabled: false
sms_provider: twilio
sponsor_auto_approve: false
sponsor_email_domains:
- reserved.net
- reserved.org
sponsor_enabled: false
sponsor_link_validity_duration: 30
sponsor_notify_all: false
sponsor_status_notify: false
sponsors:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
sso_default_role: string
sso_forced_role: string
sso_idp_cert: string
sso_idp_sign_algo: string
sso_idp_sso_url: string
sso_issuer: string
sso_nameid_format: email
telstra_client_id: string
telstra_client_secret: string
thumbnail: string
twilio_auth_token: af9dac44c344a875ab5d31cb7abcdefg
twilio_phone_number: '+18548888888'
twilio_sid: AC72ec6ba0ec5af30e6731c5e47abcdefgh
portal_allowed_hostnames:
- snapchat.com
- ibm.com
portal_allowed_subnets:
- 63.5.3.0/24
portal_api_secret: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
portal_denied_hostnames:
- msg.snapchat.com
portal_image: http://example.com
portal_sso_url: string
portal_template_url: string
qos:
class: best_effort
overwrite: false
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
rateset:
'24':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
'5':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
roam_mode: none
schedule:
enabled: false
hours:
fri: 09:00-17:00
mon: 09:00-17:00
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sle_excluded: false
ssid: corporate
template_id: c6d67e98-83ea-49f0-8812-e4abae2b68bc
thumbnail: http://example.com
use_eapol_v1: false
vlan_enabled: false
vlan_id: 1
vlan_ids:
- 3
- 4
- 5
vlan_pooling: false
wlan_limit_down: 0
wlan_limit_down_enabled: false
wlan_limit_up: 0
wlan_limit_up_enabled: false
wxtag_ids:
- 497f6eca-6276-4993-bfeb-53e7bbba6f08
wxtunnel_id: string
wxtunnel_remote_id: string
schema:
$ref: '#/components/schemas/wlan'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wlan'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWlan
tags:
- Orgs Wlans
/api/v1/orgs/{org_id}/wlans/{wlan_id}/portal_image:
delete:
description: Delete Org WLAN Portal Image
operationId: deleteOrgWlanPortalImage
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWlanPortalImage
tags:
- Orgs Wlans
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wlan_id'
post:
description: Upload Org WLAN Portal Image
operationId: uploadOrgWlanPortalImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/image_import'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uploadOrgWlanPortalImage
tags:
- Orgs Wlans
/api/v1/orgs/{org_id}/wlans/{wlan_id}/portal_template:
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wlan_id'
put:
description: 'Update a Portal Template
#### Sponsor Email Template
Sponsor Email Template supports following template variables:
| **Name** | **Description** |
| --- | --- |
| approve_url | Renders URL to approve the request; optionally &minutes=N
query param can be appended to change the Authorization period of the guest,
where N is a valid integer denoting number of minutes a guest remains authorized
|
| deny_url | Renders URL to reject the request |
| guest_email | Renders Email ID of the guest |
| guest_name | Renders Name of the guest |
| field1 | Renders value of the Custom Field 1 |
| field2 | Renders value of the Custom Field 2 |
| company | Renders value of the Company field |
| sponsor_link_validity_duration | Renders validity time of the request (i.e.
Approve/Deny URL) |
| auth_expire_minutes | Renders Wlan-level configured Guest Authorization
Expiration time period (in minutes), If not configured then default (1 day
in minutes) |'
operationId: updateOrgWlanPortalTemplate
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wlan_portal_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Portaltemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWlanPortalTemplate
tags:
- Orgs Wlans
/api/v1/orgs/{org_id}/wxrules:
get:
description: Get List of Org WxRules
operationId: listOrgWxRules
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxruleArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgWxRules
tags:
- Orgs WxRules
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org WxRule
operationId: createOrgWxRule
requestBody:
content:
application/json:
examples:
Example:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-bfeb-53e8bbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
$ref: '#/components/schemas/wxlan_rule'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWxRule
tags:
- Orgs WxRules
/api/v1/orgs/{org_id}/wxrules/derived:
get:
description: Get Derived Org WxRule
operationId: getOrgWxRulesDerived
responses:
'200':
$ref: '#/components/responses/WxruleArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWxRulesDerived
tags:
- Orgs WxRules
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wxrules/{wxrules_id}:
delete:
description: Delete Org WxRule
operationId: deleteOrgWxRule
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWxRule
tags:
- Orgs WxRules
get:
description: Get Org WxRule Details
operationId: getOrgWxRule
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWxRule
tags:
- Orgs WxRules
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wxrules_id'
put:
description: Update Org WxRule
operationId: updateOrgWxRule
requestBody:
content:
application/json:
examples:
Example:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-bfeb-53e9bbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
$ref: '#/components/schemas/wxlan_rule'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWxRule
tags:
- Orgs WxRules
/api/v1/orgs/{org_id}/wxtags:
get:
description: Get List of Org WxLAN Tags
operationId: listOrgWxTags
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxtagArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgWxTags
tags:
- Orgs WxTags
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create WxLAN Tag
operationId: createOrgWxTag
requestBody:
content:
application/json:
examples:
app:
value:
match: app
name: match app
type: match
values:
- gmail
- dropbox
client_mac:
value:
match: client_mac
name: file-servers
type: match
values:
- b0c4e7001543
- a0c4e7001543
- 00c4e7001543
hostnames:
value:
match: hostname
name: mist
type: match
values:
- mist.com
ip_range_subnets:
value:
match: ip_range_subnet
name: file-servers
type: match
values:
- 10.1.2.1
- 10.2.3.4/24
- 10.1.2.5-10.2.3.4
ports:
value:
match: port
name: web-ports
type: match
values:
- '80'
- '8000'
- '8080'
psk_name:
value:
match: psk_name
name: VIP
type: match
values:
- test_key1
- test_key2
psk_role:
value:
match: psk_role
name: VIP
type: match
values:
- test_role
radius_group:
value:
match: radius_group
name: VIP
type: match
values:
- vip
radius_username:
value:
match: radius_username
name: VIP
type: match
values:
- john@abc.com
- eric@abc.com
traffic-spec:
value:
name: protocol-subnet-port
specs:
- port_range: '80'
protocol: tcp
subnets:
- 10.1.2.0/24
type: spec
vlan:
value:
name: vlan-assignment
type: vlan
vlan_id: 1055
wlan_id:
value:
match: wlan_id
name: guest-wlan
type: match
values:
- be22bba78e22e1cf5185b880816fe2cf
schema:
$ref: '#/components/schemas/wxlan_tag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWxTag
tags:
- Orgs WxTags
/api/v1/orgs/{org_id}/wxtags/apps:
get:
description: Get Application List
operationId: getOrgApplicationList
responses:
'200':
$ref: '#/components/responses/WxTagsAppsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgApplicationList
tags:
- Orgs WxTags
parameters:
- $ref: '#/components/parameters/org_id'
/api/v1/orgs/{org_id}/wxtags/{wxtag_id}:
delete:
description: Delete WxLAN Tag
operationId: deleteOrgWxTag
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWxTag
tags:
- Orgs WxTags
get:
description: Get WxLAN Tag Details
operationId: getOrgWxTag
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWxTag
tags:
- Orgs WxTags
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wxtag_id'
put:
description: Update WxLAN Tag
operationId: updateOrgWxTag
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wxlan_tag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWxTag
tags:
- Orgs WxTags
/api/v1/orgs/{org_id}/wxtags/{wxtag_id}/clients:
get:
description: Get Current Matching Clients of a WXLAN Tag
operationId: getOrgCurrentMatchingClientsOfAWxTag
responses:
'200':
$ref: '#/components/responses/WxtagClients'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgCurrentMatchingClientsOfAWxTag
tags:
- Orgs WxTags
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wxtag_id'
/api/v1/orgs/{org_id}/wxtunnels:
get:
description: Get List of Org WxLAN Tunnels
operationId: listOrgWxTunnels
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxtunnelArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listOrgWxTunnels
tags:
- Orgs WxTunnels
parameters:
- $ref: '#/components/parameters/org_id'
post:
description: Create Org WxAN Tunnel
operationId: createOrgWxTunnel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wxlan_tunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createOrgWxTunnel
tags:
- Orgs WxTunnels
/api/v1/orgs/{org_id}/wxtunnels/{wxtunnel_id}:
delete:
description: Delete Org WxLAN Tunnel
operationId: deleteOrgWxTunnel
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteOrgWxTunnel
tags:
- Orgs WxTunnels
get:
description: Get Org WxLAN Tunnel Details
operationId: getOrgWxTunnel
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOrgWxTunnel
tags:
- Orgs WxTunnels
parameters:
- $ref: '#/components/parameters/org_id'
- $ref: '#/components/parameters/wxtunnel_id'
put:
description: Update Org WxLAN Tunnel
operationId: updateOrgWxTunnel
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wxlan_tunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateOrgWxTunnel
tags:
- Orgs WxTunnels
/api/v1/recover:
post:
description: 'Recover Password
An email will also be sent to the user with a link to https://manage.mist.com/verify/recover?token=:token'
operationId: recoverPassword
requestBody:
content:
application/json:
examples:
Example:
value:
email: test@mistsys.com
recaptcha: string
recaptcha_flavor: hcaptcha
schema:
$ref: '#/components/schemas/recover'
description: ''
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: recoverPassword
tags:
- Recover Password
/api/v1/recover/verify/{token}:
parameters:
- $ref: '#/components/parameters/token'
post:
description: 'Verify Recover Password
With correct verification, the user will be authenticated. UI can then prompt
for new password'
operationId: verifyRecoverPasssword
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifyRecoverPasssword
tags:
- Recover Password
/api/v1/register:
post:
description: "Register a new admin and his/her org\nAn email will also be sent\
\ to the user with a link to `/verify/register?token={token}`\n\n### reCAPTCHA\n\
Google reCAPTCHA is the choice to prevent bot registration\n\nIt needs this\
\ \n\n<script src='https://www.google.com/recaptcha/api.js' ></script>\n\
\nand this <div> in the desired place\n```html\n
\n```\n\n\
Use GET /api/v1/register/recaptcha to read the current setting.\nResponse\
\ example:\n```json\n{ \n \"flavor\": \"google\",\n \"required\": true,\
\ \n \"sitekey\": \"6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd\"\n}\n```\n\
\n### hCaptcha\nAlternative to reCAPTCHA is hCaptcha to prevent bot registration\n\
\nIt needs this script\n\n<script src='https://js.hcaptcha.com/1/api.js'\
\ async defer ></script>\n\nand this <div> in the desired place\n\
```html\n\n```\n\nUse GET /api/v1/register/recaptcha?recaptcha_flavor=hcaptcha\
\ to read the current setting for hcaptcha with reply.\nResponse example:\n\
```json\n{\n \"flavor\": \"hcaptcha\",\n \"required\": true,\n \"sitekey\"\
: \"6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd\"\n}\"\n```"
operationId: registerNewAdmin
requestBody:
content:
application/json:
examples:
Example:
value:
account_only: false
allow_mist: false
city: Cupertino
country: United States
email: test@mistsys.com
first_name: John
invite_code: MISTROCKS
last_name: Smith
org_name: Smith LLC
password: foryoureyesonly
recaptcha: string
recaptcha_flavor: hcaptcha
referer_invite_token: Dm2gtT8dwMeM4Bc2E8FLIaA96VHOjPat
return_to: http://mist.zendesk.com/hc/quickstart.pdf
state: California
street_address: 1601 S De Anza Blvd Ste 248
street_address 2: 1601 S De Anza Blvd Ste 248
zipcode: '95014'
schema:
$ref: '#/components/schemas/new_admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: registerNewAdmin
tags:
- Admins
/api/v1/register/recaptcha:
get:
description: Get Registration Information
operationId: getAdminRegistrationInfo
parameters:
- in: query
name: recaptcha_flavor
schema:
default: google
enum:
- google
- hcaptcha
type: string
responses:
'200':
$ref: '#/components/responses/Recaptcha'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getAdminRegistrationInfo
tags:
- Admins
/api/v1/register/verify/{token}:
parameters:
- $ref: '#/components/parameters/token'
post:
description: Verify registration
operationId: verifyRegistration
responses:
'200':
$ref: '#/components/responses/VerifyRegisterTokenSuccess'
'400':
$ref: '#/components/responses/VerifyRegisterTokenAlreadyRegistered'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/VerifyRegisterTokenInvalid'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifyRegistration
tags:
- Admins
/api/v1/self:
delete:
description: 'To delete ones account and every associated with it. The effects:
the account would be deleted
any orphaned Org (that only has this account as admin) will be deleted
along with all data with Org (sites, wlans, devices) will be gone.'
operationId: deleteSelf
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/DeleteSelfFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSelf
tags:
- Self Account
get:
description: "Get \u2018whoami\u2019 and privileges (which org and which sites\
\ I have access to)"
operationId: getSelf
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSelf
tags:
- Self Account
put:
description: update Account Information
operationId: updateSelf
requestBody:
content:
application/json:
examples:
example-1:
value:
email: john.smith@mycorp.net
enable_two_factor: true
first_name: John
last_name: Smith
password: foryoureyesonly
persona: security
phone: '14081112222'
phone2: '14083334444'
schema:
$ref: '#/components/schemas/admin'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Admin'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSelf
tags:
- Self Account
/api/v1/self/apitokens:
get:
description: Get List of Current User API Tokens
operationId: listApiTokens
responses:
'200':
$ref: '#/components/responses/ApitokensUserArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listApiTokens
tags:
- Self API Token
post:
description: 'Create API Token
Note that the key is only available during creation time.'
operationId: createApiToken
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 1626875902
last_used: 1690115110
name: org_token_xyz
schema:
$ref: '#/components/schemas/user_apitoken'
responses:
'200':
$ref: '#/components/responses/ApitokensUserArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createApiToken
tags:
- Self API Token
/api/v1/self/apitokens/{apitoken_id}:
delete:
description: Delete an API Token
operationId: deleteApiToken
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteApiToken
tags:
- Self API Token
get:
description: Get User API Token
operationId: getApiToken
responses:
'200':
$ref: '#/components/responses/ApitokenUser'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getApiToken
tags:
- Self API Token
parameters:
- $ref: '#/components/parameters/apitoken_id'
put:
description: Update User API Token
operationId: updateApiToken
requestBody:
content:
application/json:
examples:
Example:
value:
name: org_token_xyz
schema:
$ref: '#/components/schemas/user_apitoken'
responses:
'200':
$ref: '#/components/responses/ApitokenUser'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateApiToken
tags:
- Self API Token
/api/v1/self/logs:
get:
description: 'Get List of change logs across all Orgs for current admin
Audit logs records all administrative activities done by current admin across
all orgs'
operationId: listSelfAuditLogs
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SelfAuditLogs'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSelfAuditLogs
tags:
- Self Audit Logs
/api/v1/self/oauth/{provider}:
get:
description: Obtain Authorization URL for Linking
operationId: getOauth2UrlForLinking
parameters:
- in: query
name: forward
schema:
example: http://manage.mist.com/oauth/callback.html
type: string
responses:
'200':
$ref: '#/components/responses/SelfOauthUrl'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getOauth2UrlForLinking
tags:
- Self OAuth2
parameters:
- in: path
name: provider
required: true
schema:
type: string
post:
description: Link Mist account with an OAuth2 Provider
operationId: linkOauth2MistAccount
requestBody:
content:
application/json:
examples:
example-1:
value:
code: 4/S9tegDeLkrYg0L9pWNXV4cgMVbbr3SR9t693A2kSHzw
schema:
$ref: '#/components/schemas/code'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SelfOauthLinkSuccess'
'400':
$ref: '#/components/responses/SelfOauthLinkFailure'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: linkOauth2MistAccount
tags:
- Self OAuth2
/api/v1/self/subscriptions:
get:
description: Get List of all the subscriptions
operationId: listAlarmSubscriptions
responses:
'200':
$ref: '#/components/responses/SelfSubscriptions'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listAlarmSubscriptions
tags:
- Self Alarms
/api/v1/self/two_factor/token:
get:
description: Generate Secret Key for 2FA verification
operationId: generateSecretFor2faVerification
parameters:
- description: if `by`==`qrcode`, returns the secret as a qrcode image
in: query
name: by
schema:
default: qrcode
enum:
- qrcode
title: mfa_secret_type
type: string
responses:
'200':
$ref: '#/components/responses/TwoFactor'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: generateSecretFor2faVerification
tags:
- Self MFA
/api/v1/self/two_factor/verify:
post:
description: "Verify Two-factor (OTP)\n\nTo verify two-factor authentication\
\ by using a code generated by app (e.g. Google Authenticator, Authy). Upon\
\ successful verification, the `two_factor_passed` will be set to true if\
\ it hasn\u2019t already been.\n"
operationId: verifyTwoFactor
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/two_factor_code'
description: Request Body
responses:
'200':
content:
application/json:
schema:
properties: {}
type: object
description: Response when 2FA verification is successful
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifyTwoFactor
tags:
- Self MFA
/api/v1/self/update:
post:
description: 'Change Email
We require the user to verify that they actually own the email address they
intend to change it to.
After the API call, the user will receive an email to the new email address
with a link like https://manage.mist.com/verify/update?expire=:exp_time&email=:admin_email&token=:token
Upon clicking the link, the user is provided with a login page to authenticate
using existing credentials. After successful login, the email address of the
user gets updated
**Note**: The request parameter email can be used by UI to validate that the
current session (if any) belongs to the admin or provide a login page (by
pre-populating the email on login screen). UI can also use the request parameter
expire to validate token expiry.'
operationId: updateSelfEmail
requestBody:
content:
application/json:
examples:
example-1:
value:
email: new@mistsys.com
schema:
$ref: '#/components/schemas/email'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/UpdateSelfFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSelfEmail
tags:
- Self Account
/api/v1/self/update/verify/{token}:
get:
description: Verify Email change
operationId: verifySelfEmail
responses:
'200':
$ref: '#/components/responses/SelfVerifyEmailSuccess'
'400':
$ref: '#/components/responses/SelfVerifyEmailFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: verifySelfEmail
tags:
- Self Account
parameters:
- $ref: '#/components/parameters/token'
/api/v1/sites/{site_id}:
delete:
description: Delete Site
operationId: deleteSite
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSite
tags:
- Sites
get:
description: Get Site Info
operationId: getSiteInfo
responses:
'200':
$ref: '#/components/responses/Site'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteInfo
tags:
- Sites
parameters:
- $ref: '#/components/parameters/site_id'
put:
description: Update Site Info
operationId: updateSiteInfo
requestBody:
content:
application/json:
examples:
example-1:
value:
address: string
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
country_code: string
latlng:
lat: 0
lng: 0
name: string
networktemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
notes: string
rftemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
secpolicy_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
timezone: string
schema:
$ref: '#/components/schemas/site'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Site'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteInfo
tags:
- Sites
/api/v1/sites/{site_id}/alarms/ack:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Ack multiple Site Alarms
operationId: multiAckSiteAlarms
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_ack'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiAckSiteAlarms
tags:
- Sites Alarms
/api/v1/sites/{site_id}/alarms/ack_all:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Ack all Site Alarms
**N.B.**: Batch size for multiple alarm ack and unack has to be less or or
equal to 1000.'
operationId: ackSiteAllAlarms
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/note'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: ackSiteAllAlarms
tags:
- Sites Alarms
/api/v1/sites/{site_id}/alarms/count:
get:
description: Count Site Alarms
operationId: countSiteAlarms
parameters:
- description: Group by and count the alarms by some distinct field
in: query
name: distinct
schema:
default: type
enum:
- type
- acked
- severity
- group
title: Site Alarms count distinct
type: string
- description: Name of the admins who have acked the alarms; accepts multiple
values separated by comma
in: query
name: ack_admin_name
schema:
type: string
- in: query
name: acked
schema:
type: boolean
- description: Key-name of the alarms; accepts multiple values separated by
comma
in: query
name: type
schema:
type: string
- description: Alarm severity; accepts multiple values separated by comma
in: query
name: severity
schema:
type: string
- description: Alarm group name; accepts multiple values separated by comma
in: query
name: group
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteAlarms
tags:
- Sites Alarms
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/alarms/search:
get:
description: Search Site Alarms
operationId: searchSiteAlarms
parameters:
- description: Key-name of the alarms; accepts multiple values separated by
comma
in: query
name: type
schema:
type: string
- description: Name of the admins who have acked the alarms; accepts multiple
values separated by comma
in: query
name: ack_admin_name
schema:
type: string
- in: query
name: acked
schema:
type: boolean
- description: Alarm severity; accepts multiple values separated by comma
in: query
name: severity
schema:
type: string
- description: Alarm group name; accepts multiple values separated by comma
in: query
name: group
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AlarmsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteAlarms
tags:
- Sites Alarms
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/alarms/unack:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Unack multiple Site Alarms
operationId: multiUnackSiteAlarms
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_ack'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiUnackSiteAlarms
tags:
- Sites Alarms
/api/v1/sites/{site_id}/alarms/unack_all:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Unack all Site Alarms
**N.B.**: Batch size for multiple alarm ack and unack has to be less or or
equal to 1000.'
operationId: unackSiteAllArlarms
requestBody:
content:
application/json:
examples:
example-1:
value:
note: maintenance window
schema:
$ref: '#/components/schemas/note'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unackSiteAllArlarms
tags:
- Sites Alarms
/api/v1/sites/{site_id}/alarms/{alarm_id}/ack:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/alarm_id'
post:
description: Ack Site Alarm
operationId: ackSiteAlarm
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/note'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: ackSiteAlarm
tags:
- Sites Alarms
/api/v1/sites/{site_id}/alarms/{alarm_id}/unack:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/alarm_id'
post:
description: Unack Site Alarm
operationId: unackSiteAlarm
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/note'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unackSiteAlarm
tags:
- Sites Alarms
/api/v1/sites/{site_id}/anomaly/client/{client_mac}/{metric}:
get:
description: Get Client Anomaly Events
operationId: getSiteAnomalyEventsForClient
responses:
'200':
$ref: '#/components/responses/AnomalyMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAnomalyEventsForClient
tags:
- Sites Anomaly
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
- $ref: '#/components/parameters/metric'
/api/v1/sites/{site_id}/anomaly/device/{device_mac}/{metric}:
get:
description: Get Device Anomaly Events
operationId: getSiteAnomalyEventsforDevice
responses:
'200':
$ref: '#/components/responses/AnomalyMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAnomalyEventsforDevice
tags:
- Sites Anomaly
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/metric'
- $ref: '#/components/parameters/device_mac'
/api/v1/sites/{site_id}/anomaly/{metric}:
get:
description: Get Site Anomaly Events
operationId: getSiteAnomalyEvents
responses:
'200':
$ref: '#/components/responses/AnomalyMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAnomalyEvents
tags:
- Sites Anomaly
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/metric'
/api/v1/sites/{site_id}/apps:
get:
description: Get List of Site Applications
operationId: listSiteApps
responses:
'200':
$ref: '#/components/responses/SiteApps'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteApps
tags:
- Sites Applications
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/aptemplates/derived:
get:
description: Get derived AP Templates for Site
operationId: getSiteApTemplateDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
type: boolean
responses:
'200':
$ref: '#/components/responses/Aptemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteApTemplateDerived
tags:
- Sites AP Templates
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/assetfilters:
get:
description: Get List of Site Asset Filters
operationId: listSiteAssetFilters
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AssetfiltersArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAssetFilters
tags:
- Sites Asset Filters
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Asset Filter
operationId: createSiteAssetFilters
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset_filter'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteAssetFilters
tags:
- Sites Asset Filters
/api/v1/sites/{site_id}/assetfilters/{assetfilter_id}:
delete:
description: Deletes an existing BLE asset filter for the given site.
operationId: deleteSiteAssetFilter
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteAssetFilter
tags:
- Sites Asset Filters
get:
description: Get Site Asset Filter Details
operationId: getSiteAssetFilter
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAssetFilter
tags:
- Sites Asset Filters
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/assetfilter_id'
put:
description: Updates an existing BLE asset filter for the given site.
operationId: updateSiteAssetFilter
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset_filter'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Assetfilter'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteAssetFilter
tags:
- Sites Asset Filters
/api/v1/sites/{site_id}/assets:
get:
description: Get List of Site Assets
operationId: listSiteAssets
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AssetsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAssets
tags:
- Sites Assets
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Asset
operationId: createSiteAsset
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteAsset
tags:
- Sites Assets
/api/v1/sites/{site_id}/assets/import:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "Impert Site Assets. \n\nIt can be done via a CSV file or a JSON\
\ payload.\n\n## CSV File Format\n```csv\nname,mac\n\"asset_name\",5c5b53010101\n\
``` "
operationId: importSiteAssets
parameters:
- description: API will replace the assets with same mac if provided `upsert`==`True`,
otherwise will report in errors in response.
in: query
name: upsert
schema:
default: 'False'
enum:
- 'True'
- 'False'
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/assets_import_json'
multipart/form-data:
schema:
$ref: '#/components/schemas/assets_import_file'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importSiteAssets
tags:
- Sites Assets
/api/v1/sites/{site_id}/assets/{asset_id}:
delete:
description: Delete Site Asset
operationId: deleteSiteAsset
responses:
'200':
$ref: '#/components/responses/OK'
'201':
description: Created
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteAsset
tags:
- Sites Assets
get:
description: Get Site Asset Details
operationId: getSiteAsset
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAsset
tags:
- Sites Assets
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/asset_id'
put:
description: Update Site Asset
operationId: updateSiteAsset
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/asset'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Asset'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteAsset
tags:
- Sites Assets
/api/v1/sites/{site_id}/beacons:
get:
description: Get List of Site Beacons
operationId: listSiteBeacons
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/BeaconsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteBeacons
tags:
- Sites Beacons
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Beacon
operationId: createSiteBeacon
requestBody:
content:
application/json:
examples:
example-1:
value:
eddystone_instance: string
eddystone_namespace: string
eddystone_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
power: 0
type: eddystone-uid
x: 0
y: 0
schema:
$ref: '#/components/schemas/beacon'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Beacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteBeacon
tags:
- Sites Beacons
/api/v1/sites/{site_id}/beacons/{beacon_id}:
delete:
description: Delete Site Beacon
operationId: deleteSiteBeacons
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteBeacons
tags:
- Sites Beacons
get:
description: Get Site Beacon Details
operationId: getSiteBeacon
responses:
'200':
$ref: '#/components/responses/Beacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteBeacon
tags:
- Sites Beacons
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/beacon_id'
put:
description: Update Site Beacon
operationId: updateSiteBeacons
requestBody:
content:
application/json:
examples:
example-1:
value:
eddystone_instance: string
eddystone_namespace: string
eddystone_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
power: 0
type: eddystone-uid
x: 0
y: 0
schema:
$ref: '#/components/schemas/beacon'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Beacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteBeacons
tags:
- Sites Beacons
/api/v1/sites/{site_id}/clients/count:
get:
description: Count by Distinct Attributes of Clients
operationId: countSiteWirelessClients
parameters:
- example: hostname
in: query
name: distinct
schema:
default: device
enum:
- ssid
- ap
- ip
- vlan
- hostname
- os
- model
- device
title: Site Clients count distinct
type: string
- in: query
name: ssid
schema:
type: string
- in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/ip'
- in: query
name: vlan
schema:
type: string
- in: query
name: hostname
schema:
type: string
- in: query
name: os
schema:
type: string
- in: query
name: model
schema:
type: string
- in: query
name: device
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWirelessClients
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/disconnect:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: To unauthorize multiple clients
operationId: disconnectSiteMultipleClients
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: disconnectSiteMultipleClients
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/clients/events/count:
get:
description: Count by Distinct Attributes of Client-Events
operationId: countSiteWirelessClientEvents
parameters:
- example: type
in: query
name: distinct
schema:
enum:
- type
- proto
- band
- channel
- wlan_id
- ssid
title: Site Client Events count distinct
type: string
- $ref: '#/components/parameters/client_event_type'
- description: for assoc/disassoc events
in: query
name: reason_code
schema:
type: integer
- description: SSID Name
in: query
name: ssid
schema:
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_proto'
- $ref: '#/components/parameters/dot11_band'
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWirelessClientEvents
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/events/search:
get:
description: Get Site Clients Events
operationId: searchSiteWirelessClientEvents
parameters:
- $ref: '#/components/parameters/client_event_type'
- description: for assoc/disassoc events
in: query
name: reason_code
schema:
type: integer
- description: SSID Name
in: query
name: ssid
schema:
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_proto'
- $ref: '#/components/parameters/dot11_band'
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/EventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWirelessClientEvents
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/search:
get:
description: "Search Wireless Clients\n\n**NOTE**: fuzzy logic can be used with\
\ \u2018*\u2019, supported filters: mac, hostname, device, os, model. E.g.\
\ /clients/search?device=Mac*&hostname=jerry"
operationId: searchSiteWirelessClients
parameters:
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/ip'
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: device type, e.g. Mac, Nvidia, iPhone
in: query
name: device
schema:
type: string
- description: os, e.g. Sierra, Yosemite, Windows 10
in: query
name: os
schema:
type: string
- description: "model, e.g. \u201CMBP 15 late 2013\u201D, 6, 6s, \u201C8+ GSM\u201D"
in: query
name: model
schema:
type: string
- description: AP mac where the client has connected to
in: query
name: ap
schema:
type: string
- in: query
name: ssid
schema:
type: string
- description: partial / full MAC address, hostname, username, psk_name or ip
in: query
name: text
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWirelessClients
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/sessions/count:
get:
description: Count by Distinct Attributes of Client Sessions
operationId: countSiteWirelessClientSessions
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- ssid
- wlan_id
- ap
- mac
- client_family
- client_manufacture
- client_model
- client_os
title: Site Client Sessions count distinct
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_band'
- description: "E.g. \u201CMac\u201D, \u201CiPhone\u201D, \u201CApple watch\u201D"
in: query
name: client_family
schema:
type: string
- description: "E.g. \u201CApple\u201D"
in: query
name: client_manufacture
schema:
type: string
- description: "E.g. \u201C8+\u201D, \u201CXS\u201D"
in: query
name: client_model
schema:
type: string
- description: "E.g. \u201CMojave\u201D, \u201CWindows 10\u201D, \u201CLinux\u201D"
in: query
name: client_os
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWirelessClientSessions
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/sessions/search:
get:
description: Search Client Sessions
operationId: searchSiteWirelessClientSessions
parameters:
- description: AP MAC
in: query
name: ap
schema:
type: string
- $ref: '#/components/parameters/dot11_band'
- description: "E.g. \u201CMac\u201D, \u201CiPhone\u201D, \u201CApple watch\u201D"
in: query
name: client_family
schema:
type: string
- description: "E.g. \u201CApple\u201D"
in: query
name: client_manufacture
schema:
type: string
- description: "E.g. \u201C8+\u201D, \u201CXS\u201D"
in: query
name: client_model
schema:
type: string
- description: Username
in: query
name: client_username
schema:
type: string
- description: "E.g. \u201CMojave\u201D, \u201CWindows 10\u201D, \u201CLinux\u201D"
in: query
name: client_os
schema:
type: string
- description: SSID
in: query
name: ssid
schema:
type: string
- description: wlan_id
in: query
name: wlan_id
schema:
type: string
- $ref: '#/components/parameters/psk_id_query'
- description: PSK Name
in: query
name: psk_name
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ClientSessionsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWirelessClientSessions
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/clients/unauthorize:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "This unauthorize clients (if they are guest) and disconnect them.\
\ From the guest\u2019s perspective, they will see the splash page again and\
\ go through the flow (e.g. Terms of Use) again."
operationId: unauthorizeSiteMultipleClients
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unauthorizeSiteMultipleClients
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/clients/{client_mac}/coa:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
post:
description: Trigger a CoA (change of authorization) against a client
operationId: reauthSiteDot1xWirelessClient
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: reauthSiteDot1xWirelessClient
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/clients/{client_mac}/disconnect:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
post:
description: "This disconnect a client (and it\u2019s likely to connect back)"
operationId: disconnectSiteWirelessClient
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: disconnectSiteWirelessClient
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/clients/{client_mac}/events:
get:
description: Get the list of events for a specific client
operationId: getSiteEventsForClient
parameters:
- description: e.g. MARVIS_EVENT_CLIENT_DHCP_STUCK
in: query
name: type
schema:
type: string
- $ref: '#/components/parameters/dot11_proto'
- $ref: '#/components/parameters/dot11_band'
- in: query
name: channel
schema:
type: string
- in: query
name: wlan_id
schema:
type: string
- in: query
name: ssid
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ClientEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteEventsForClient
tags:
- Sites Clients - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
/api/v1/sites/{site_id}/clients/{client_mac}/unauthorize:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
post:
description: "This unauthorize a client (if it\u2019s a guest) and disconnect\
\ it. From the guest\u2019s perspective, s/he will see the splash page again\
\ and go through the flow (e.g. Terms of Use) again."
operationId: unauthorizeSiteWirelessClient
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: unauthorizeSiteWirelessClient
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/deviceprofiles/derived:
get:
description: Retrieves the list of Device Profiles available for the Site
operationId: listSiteDeviceProfilesDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
default: false
type: boolean
responses:
'200':
$ref: '#/components/responses/DeviceprofilesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteDeviceProfilesDerived
tags:
- Sites Device Profiles
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices:
get:
description: Get list of devices on the site.
operationId: listSiteDevices
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type_with_all'
- $ref: '#/components/parameters/name'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/DevicesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteDevices
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/ap_channels:
get:
description: Get a list of allowed channels (per channel width)
operationId: getSiteDeviceRadioChannels
parameters:
- description: country code for the site (for AP config generation), in [two-character](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)
example: US
in: query
name: country_code
schema:
type: string
responses:
'200':
$ref: '#/components/responses/DeviceRadioChannels'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceRadioChannels
tags:
- Sites Devices - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/config_history/count:
get:
description: Counts the number of entries in device config history for distinct
field with given filters
operationId: countSiteDeviceConfigHistory
parameters:
- in: query
name: distinct
schema:
title: Site Device Config History count distinct
type: string
- in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteDeviceConfigHistory
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/config_history/search:
get:
description: Search for entries in device config history
operationId: searchSiteDeviceConfigHistory
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- description: Device MAC Address
in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ConfigsHistorySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDeviceConfigHistory
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/count:
get:
description: Counts the number of entries in ap events history for distinct
field with given filters
operationId: countSiteDevices
parameters:
- in: query
name: distinct
schema:
default: model
enum:
- model
- version
- map_id
- hostname
- mxtunnel_status
- mxedge_id
- lldp_system_name
- lldp_system_desc
- lldp_port_id
- lldp_mgmt_addr
title: Site Devices count distinct
type: string
- in: query
name: hostname
schema:
type: string
- in: query
name: model
schema:
type: string
- in: query
name: mac
schema:
type: string
- in: query
name: version
schema:
type: string
- in: query
name: mxtunnel_status
schema:
type: string
- in: query
name: mxedge_id
schema:
type: string
- in: query
name: lldp_system_name
schema:
type: string
- in: query
name: lldp_system_desc
schema:
type: string
- in: query
name: lldp_port_id
schema:
type: string
- in: query
name: lldp_mgmt_addr
schema:
type: string
- in: query
name: map_id
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteDevices
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/events/count:
get:
description: Counts the number of entries in ap events history for distinct
field with given filters
operationId: countSiteDeviceEvents
parameters:
- in: query
name: distinct
schema:
default: model
enum:
- model
- type
- type_code
- mac
title: Site Device Events count distinct
type: string
- in: query
name: model
schema:
type: string
- $ref: '#/components/parameters/device_event_type'
- in: query
name: type_code
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteDeviceEvents
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/events/search:
get:
description: Search Devices Events
operationId: searchSiteDeviceEvents
parameters:
- description: device mac
in: query
name: mac
schema:
type: string
- description: device model
in: query
name: model
schema:
type: string
- description: event message
in: query
name: text
schema:
type: string
- description: event time
in: query
name: timestamp
schema:
type: string
- $ref: '#/components/parameters/device_event_type'
- description: Return last/recent event for passed in field
example: port_id
in: query
name: last_by
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/EventsDevices'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDeviceEvents
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/export:
get:
description: To download the exported device information
operationId: exportSiteDevices
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: exportSiteDevices
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/import:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Import Information for Multiple Devices
CSV format:
```csv
mac,name,map_id,x,y,height,orientation,labels,band_24.power,band_24.bandwidth,band_24.channel,band_24.disabled,band_5.power,band_5.bandwidth,band_5.channel,band_5.disabled,band_6.power,band_6.bandwidth,band_6.channel,band_6.disabled
5c5b53010101,"AP 1",845a23bf-bed9-e43c-4c86-6fa474be7ae5,30,10,2.3,45,"guest,
campus, vip",1,20,0,false,0,40,0,false,17,80,0,false
```'
operationId: importSiteDevices
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ap_import_json'
application/octet-stream:
schema:
$ref: '#/components/schemas/binary_stream'
responses:
'200':
$ref: '#/components/responses/DevicesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importSiteDevices
tags:
- Sites Devices
/api/v1/sites/{site_id}/devices/last_config/count:
get:
description: Counts the number of entries in device config history for distinct
field with given filters
operationId: countSiteDeviceLastConfig
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- version
- name
- site_id
- mac
title: Site Device Last Config count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteDeviceLastConfig
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/last_config/search:
get:
description: Search Device Last Configs
operationId: searchSiteDeviceLastConfigs
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- in: query
name: mac
schema:
type: string
- in: query
name: version
schema:
type: string
- in: query
name: name
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ConfigsHistorySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDeviceLastConfigs
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/reprovision:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: To force all APs to reprovision itself again.
operationId: reprovisionSiteAllAps
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: reprovisionSiteAllAps
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/devices/reset_radio_config:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Reset all APs in the Site to use RRM
operationId: resetSiteAllApsToUseRrm
requestBody:
content:
application/json:
examples:
example-1:
value:
bands:
- '24'
- '5'
- '6'
force: false
schema:
$ref: '#/components/schemas/utils_reset_radio_config'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: resetSiteAllApsToUseRrm
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/devices/restart:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Note that only the devices that are connected will be restarted.
operationId: multiRestartSiteDevices
requestBody:
content:
application/json:
examples:
example-1:
value:
device_ids:
- 00000000-0000-0000-1000-5c5b35584a6f
- 00000000-0000-0000-1000-5c5b350ea3b3
example-2:
value:
device_ids:
- 421f6eca-6276-4893-bfeb-53cbbbba6f02
node: node0
schema:
$ref: '#/components/schemas/utils_devices_restart_multi'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiRestartSiteDevices
tags:
- Sites Devices
/api/v1/sites/{site_id}/devices/search:
get:
description: Search Device
operationId: searchSiteDevices
parameters:
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- description: device model
in: query
name: model
schema:
type: string
- description: device MAC
in: query
name: mac
schema:
type: string
- description: version
in: query
name: version
schema:
type: string
- description: power_constrained
in: query
name: power_constrained
schema:
type: boolean
- $ref: '#/components/parameters/ip'
- description: MxTunnel status, up / down
in: query
name: mxtunnel_status
schema:
enum:
- up
- down
type: string
- description: Mist Edge id, if AP is connecting to a Mist Edge
in: query
name: mxedge_id
schema:
format: uuid
type: string
- description: LLDP system name
in: query
name: lldp_system_name
schema:
type: string
- description: LLDP system description
in: query
name: lldp_system_desc
schema:
type: string
- description: LLDP port id
in: query
name: lldp_port_id
schema:
type: string
- description: LLDP management ip address
in: query
name: lldp_mgmt_addr
schema:
type: string
- description: Channel of band_24
in: query
name: band_24_channel
schema:
type: integer
- description: Channel of band_5
in: query
name: band_5_channel
schema:
type: integer
- description: Channel of band_6
in: query
name: band_6_channel
schema:
type: integer
- description: Bandwidth of band_24
in: query
name: band_24_bandwith
schema:
type: integer
- description: Bandwidth of band_5
in: query
name: band_5_bandwith
schema:
type: integer
- description: Bandwidth of band_6
in: query
name: band_6_bandwith
schema:
type: integer
- description: Port speed of eth0
in: query
name: eth0_port_speed
schema:
type: integer
- description: sort options
in: query
name: sort
schema:
default: timestamp
enum:
- timestamp
- mac
- model
- sku
type: string
- description: sort options in reverse order
in: query
name: desc-sort
schema:
enum:
- timestamp
- mac
- model
- sku
type: string
- description: whether to return device stats
in: query
name: stats
schema:
default: false
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DevicesSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDevices
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/send_ble_beacon:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Send arbitrary BLE Beacon for a period of time
Note that only the devices that are connected will be restarted.'
operationId: sendSiteDevicesArbitratryBleBeacon
requestBody:
content:
application/json:
examples:
Example:
value:
beacon_frame: 68b329da9893e34099c7d8ad5cb9c940
beacon_freq: 100
duration: 10
macs:
- 5c5b35584a6f
- 5c5b350ea3b3
map_ids:
- 845a23bf-bed9-e43c-4c86-6fa474be7ae5
schema:
$ref: '#/components/schemas/utils_send_ble_beacon'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: sendSiteDevicesArbitratryBleBeacon
tags:
- Utilities Location
/api/v1/sites/{site_id}/devices/upgrade:
get:
description: Get all upgrades for site
operationId: listSiteDevicesUpgrade
parameters:
- in: query
name: status
schema:
enum:
- downloading
- completed
- created
- downloaded
- upgrading
- cancelled
- failed
title: site_device_upgrade_status_filter
type: string
responses:
'200':
$ref: '#/components/responses/DeviceUpgradeArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteDevicesUpgrade
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "Upgrade Multiple Device\n\n**Note**: this call doesn\u2019t guarantee\
\ the devices to be upgraded right away (they may be offline)"
operationId: multiUpgradeSiteDevices
requestBody:
content:
application/json:
examples:
example-1:
value:
canary_phases:
- 1
- 10
- 50
- 100
device_ids:
- string
enable_p2p: true
force: false
max_failure_percentage: 5
max_failures:
- 0
models:
- string
start_time: 0
strategy: big_bang
version: stable
schema:
$ref: '#/components/schemas/device_upgrade_site_multi'
description: Request Body
responses:
'200':
$ref: '#/components/responses/DeviceUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: multiUpgradeSiteDevices
tags:
- Utilities Upgrade
/api/v1/sites/{site_id}/devices/upgrade/{upgrade_id}:
get:
description: Get Site Device Upgrade
operationId: getSiteUpgrade
responses:
'200':
$ref: '#/components/responses/DeviceUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteUpgrade
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/upgrade_id'
/api/v1/sites/{site_id}/devices/upgrade/{upgrade_id}/cancel:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/upgrade_id'
post:
description: Best effort to cancel an upgrade. Devices which are already upgraded
wont be touched
operationId: cancelSiteDeviceUpgrade
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: cancelSiteDeviceUpgrade
tags:
- Utilities Upgrade
/api/v1/sites/{site_id}/devices/upgrade_bios:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Upgrade Bios Multiple Device
operationId: upgradeSiteMultipleDevicesBios
requestBody:
content:
application/json:
examples:
Example:
value:
device_ids:
- 00000000-0000-0000-1000-5c5b35584a6f
models:
- EX4400-48T
version: CDEN_P_EX1_00.15.01.00
schema:
$ref: '#/components/schemas/upgrade_bios_multi'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeSiteMultipleDevicesBios
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/versions:
get:
description: Get List of Available Device Versions
operationId: listSiteAvailableDeviceVersions
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type'
- description: fetch version for device model, use/combine with `type` as needed
(for switch and gateway devices)
in: query
name: model
schema:
type: string
responses:
'200':
$ref: '#/components/responses/DeviceVersion'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAvailableDeviceVersions
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/devices/zeroize:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Zeroize all FIPS APs in the Site
operationId: zeroizeSiteFipsAllAps
requestBody:
content:
application/json:
examples:
example-1:
value:
password: NUKETHESITE
schema:
$ref: '#/components/schemas/utils_zeroise_fips'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: zeroizeSiteFipsAllAps
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/devices/{device_id}:
delete:
description: Delete Site Device
operationId: deleteSiteDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteDevice
tags:
- Sites Devices
get:
description: Get Device Configuration
operationId: getSiteDevice
responses:
'200':
$ref: '#/components/responses/Device'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDevice
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
put:
description: Update Device Configuration
operationId: updateSiteDevice
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mist_device'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Device'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteDevice
tags:
- Sites Devices
/api/v1/sites/{site_id}/devices/{device_id}/arp:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "ARP can be performed on the Device. The output will be available\
\ through websocket. As there can be multiple command issued against the same\
\ AP at the same time and the output all goes through the same websocket stream,\
\ session is introduced for demux.\n\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n##### Example output from ws stream\n```json\n{ \n \"event\": \"\
data\", \n \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/devices/00000000-0000-0000-1000-5c5b350e0060/cmd\"\
, \n \"data\": { \n \"session\": \"session_id\", \n \"raw\": \n \"Output\"\
: \"\\tMAC\\t\\tDEV\\tVLAN\\tRx Packets\\t\\t Rx Bytes\\t\\tTx Packets\\t\\\
t Tx Bytes\\tFlows\\tIdle sec\\n-----------------------------------------------------------------------------------------------------------------------\"\
\n } \n}\n```"
operationId: arpFromDevice
requestBody:
content:
application/json:
examples:
Example:
value:
node: node0
schema:
$ref: '#/components/schemas/ha_cluster_node'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: arpFromDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/bounce_port:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Port Bounce can be performed from the Switch.The output will be\
\ available through websocket. As there can be multiple command issued against\
\ the same AP at the same time and the output all goes through the same websocket\
\ stream, session is introduced for demux.\n\n#### Subscribe to Device Command\
\ outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n##### Example output from ws stream\n```json\n{\n \"event\":\
\ \"data\",\n \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/devices/00000000-0000-0000-1000-5c5b350e0060/cmd\"\
,\n \"data\": {\n \"session\": \"session_id\",\n \"raw\"\
: \"Port bounce complete.\"\n }\n}\n```"
operationId: portsBounceFromSwitch
requestBody:
content:
application/json:
examples:
multiple:
value:
ports:
- ge-0/0/0
- ge-0/0/1
single:
value:
port: ge-0/0/0
schema:
$ref: '#/components/schemas/utils_bounce_port'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: portsBounceFromSwitch
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/cable_test:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "TDR can be performed from the Switch. The output will be available\
\ through websocket. As there can be multiple command issued against the same\
\ Switch at the same time and the output all goes through the same websocket\
\ stream, session is introduced for demux.\n\n#### Subscribe to Device Command\
\ outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n##### Example output from ws stream\n```json\n{\n \"event\":\
\ \"data\",\n \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/devices/00000000-0000-0000-1000-5c5b350e0060/cmd\"\
,\n \"data\": {\n \"session\": \"session_id\",\n \"raw\"\
: \"Interface TDR detail:\\nTest status : Test successfully executed ge-0/0/0\\\
n\"\n }\n}\n```"
operationId: cableTestFromSwitch
requestBody:
content:
application/json:
examples:
example-1:
value:
port: ge-0/0/0
schema:
$ref: '#/components/schemas/utils_cable_test'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: cableTestFromSwitch
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/check_radius_server:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Ping test from the AP to confirm \u2018reachability\u2019 of the\
\ Radius server. Utilize Juniper EX switch(to which an AP is connected to)\
\ radius test capabilities to get details on the Radius Server \u2018availability\u2019\
."
operationId: startSiteSwitchRadiusSyntheticTest
requestBody:
content:
application/json:
examples:
example-1:
value:
password: string
profile: dot1x
user: string
schema:
$ref: '#/components/schemas/synthetic_test_radius_server'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: triggerSiteSwitchRadiusSyntheticTest
tags:
- Synthetic Tests
/api/v1/sites/{site_id}/devices/{device_id}/clear_arp:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: 'Clear the entire ARP cache or a subset if arguments are provided.
*Note*: port_id is optional if neither vlan nor ip is specified'
operationId: clearSiteSsrArpCache
requestBody:
content:
application/json:
examples:
Example:
value:
ip: 10.1.1.1
node: node0
port_id: wan
vlan: 1000
schema:
$ref: '#/components/schemas/utils_clear_arp'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
description: 'port_id must be specified with vlan or ip
Both vlan and ip cannot be specified'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteSsrArpCache
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/clear_bgp:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Clear routes associated with one or all BGP neighbors
operationId: clearSiteSsrBgpRoutes
requestBody:
content:
application/json:
examples:
example-1:
value:
neighbor: all
type: in
vrf: TestVrf
schema:
$ref: '#/components/schemas/utils_clear_bgp'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
description: parameter neighbor absent
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteBgpRoutes
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/clear_bpdu_error:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Clear bridge protocol data unit (BPDU) error condition caused by
the detection of a possible bridging loop from Spanning Tree Protocol (STP)
operation that renders the port unoperational.
operationId: clearBpduErrosFromPortsOnSwitch
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/utils_clear_bpdu'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
description: Port not specified
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearBpduErrosFromPortsOnSwitch
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/clear_macs:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Clear all learned MAC addresses, including persistent MAC addresses,
on a port.
operationId: clearAllLearnedMacsFromPortOnSwitch
requestBody:
content:
application/json:
examples:
example-1:
value:
ports:
- ge-0/0/0.0
schema:
$ref: '#/components/schemas/utils_clear_macs'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearAllLearnedMacsFromPortOnSwitch
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/config_cmd:
get:
description: 'Get Config CLI Commands
For a brown-field switch deployment where we adopted the switch through Adoption
Command, we do not wipe out / overwrite the existing config automatically.
Instead, we generate CLI commands that we would have generated. The user can
inspect, modify, and incorporate this into their existing config manually.
Once they feel comfortable about the config we generate, they can enable allow_mist_config
where we will take full control of their config like a claimed switch'
operationId: getSiteDeviceConfigCmd
parameters:
- description: Make output cmds sorted (for better readability) or not.
in: query
name: sort
schema:
default: 'false'
enum:
- 'true'
- 'false'
type: string
responses:
'200':
$ref: '#/components/responses/DeviceConfigCmd'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceConfigCmd
tags:
- Utilities Common
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
/api/v1/sites/{site_id}/devices/{device_id}/ha:
delete:
description: Delete HA Cluster
operationId: deleteSiteDeviceHaCluster
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteDeviceHaCluster
tags:
- Sites Devices - WAN Cluster
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "## Create HA Cluster\nBoth nodes has to be in the same site. We\
\ expect the user to configure ha_sync / ha_data port in port_configs already\n\
\n### SRX cabling\n\nsee [Chassis Cluster User Guide for SRX Series Devices](https://www.juniper.net/documentation/us/en/software/junos/chassis-cluster-security-devices/topics/concept/chassis-cluster-srx-series-node-interface-understanding.html)\
\ Here\u2019s the recommended cabling.\n\n#### SRX300\n\nFrom ZTP / default\
\ state, ge-0/0/0 and ge-0/0/7 (SFP) are default WAN ports and will get DHCP\
\ IP. However, ge-0/0/0 becomes OOB/fxp0 after cluster is enabled (i.e. using\
\ it for reach Mist is not recommended)\n\n1. form cluster in UI\n2. configure\
\ ge-0/0/7,ge-1/0/7 for WAN (reth0)\n3. configure ge-0/0/2,ge-1/0/2 for ha_data\n\
4. configure ge-0/0/3- for LAN or additional WAN e.g.\n \n\n``` json\n\
{\n \"port_config\": {\n \"ge-0/0/2,ge-1/0/2\": {\n \"\
usage\": \"ha_data\"\n },\n \"ge-0/0/7,ge-1/0/7\": {\n \
\ \"usage\": \"wan\",\n \"redundant\": true,\n \
\ \"reth_idx\": 0,\n \"ip_config\": {\"type\": \"dhcp\"}\n \
\ },\n }\n}\n\n```\n\n1. connect ge-0/0/1 back to back for ha_control\n\
2. connect ge-0/0/2 back to back for ha_data\n3. connect both ge-0/0/7 to\
\ uplink switch to WAN and to reach Mist\n4. power up both devices\n5. it\
\ takes about 30 minutes for the cluster to form\n \n\n#### SRX320\n\n\
From ZTP / default state, ge-0/0/0, ge-0/0/7 (SFP) and cl-1/0/0 (LTE) are\
\ default WAN ports and will get DHCP IP. However, ge-0/0/0 becomes OOB/fxp0\
\ after cluster is enabled (i.e. using it for reach Mist is not recommended)\n\
\n##### ZTP via ge-0/0/7\n\nSimilar to SRX300\n\n##### ZTP via cl-1/0/0 (LTE)\n\
\n1. form cluster in UI\n2. configure cl-1/0/0, cl-3/0/0 as WAN (reth0)\n\
3. configure ge-0/0/2,ge-3/0/2 for ha_data\n4. same as above\n \n\n####\
\ SRX340 / SRX345 / SRX380\n\nSRX340/SRX345 has dedicated OOB/fxp0 ports\n\
\n1. form cluster in UI\n2. configure ge-0/0/0,ge-5/0/0 for WAN (reth0)\n\
3. configure ge-0/0/2,ge-5/0/2 for ha_data\n4. configure ge-0/0/3- for LAN\
\ or additional WAN\n5. connect ge-0/0/0 to uplink switch to WAN and to reach\
\ Mist\n6. connect ge-0/0/1 back-to-back for ha_control\n7. connect ge-0/0/2\
\ back-to-back for ha_data (fabric); or for SRX380, xe-0/0/16 if 10G SFP+\
\ is used\n8. connect ge-0/0/3- to LAN or additional WANs\n \n\n#### SRX550\n\
\nge-0/0/0 becomes OOB/fxp0 after cluster is enabled, make suenable oob_ip_config\
\ as dhcp to maintain cloud connectivity\n\n1. connect ge-0/0/0 to reach\
\ Mist (after cluster is fully up, this port becomes OOB/fxp0)\n2. connect\
\ ge-0/0/1 back-to-back for ha_control\n3. connect ge-0/0/2 back-to-back\
\ for ha_data (fabric)\n4. connect ge-0/0/3 to WAN (after cluster is up,\
\ intended to be used for reth0)\n5. connect ge-0/0/4- to LAN or additional\
\ WANs\n \n\n#### SRX1500\n\nSRX1500 has, additionally, dedicated HA Control\
\ port\n\n1. form cluster in UI\n2. configure ge-0/0/0,ge-5/0/0 for WAN\
\ (reth0)\n3. configure ge-0/0/1,ge-5/0/1 for ha_data\n4. configure ge-0/0/2-\
\ for LAN or additional WAN\n5. connect dedicated ha_control back-to-back\n\
6. connect ge-0/0/0 to uplink switch to WAN and to reach Mist\n7. connect\
\ ge-0/0/1 back-to-back for ha_data\n8. connect ge-0/0/2- to LAN or additional\
\ WANs\n \n\n#### SRX4100\n\nSRX4100 has dedicated ha_control and ha_data\
\ (fabric) ports\n\n1. connect dedicated ha_control back-to-back\n2. connect\
\ dedicated ha_data back-to-back\n3. connect xe-0/0/0 to WAN to reach Mist\n\
4. connect xe-0/0/1- to LAN or additional WANs\n \n\n#### VSRX\n\nWhen\
\ standalone, VSRX has fxp0 as first Network Adapter, then ge-0/0/0-N When\
\ clustered, VSRX has fxp0, em0, then ge-0/0/0-N\n\n1. connect net0 (fxp0)\
\ to WAN to reach Mist\n2. connect net1 back-to-back for ha_control\n3. \
\ connect net2 (ge-0/0/0) back-to-back for ha_data (fab0/fab1)\n4. connect\
\ net3 (ge-0/0/1) to WAN, intended to be used for reth0\n5. connect net4\
\ (ge-0/0/2) to LAN\n \n\nSRX340/SRX345 has dedicated OOB/fxp0 ports VSRX\
\ has fxp0 as first Network Adapter, then ge-0/0/0-N\n\n1. connect ge-0/0/0\
\ to WAN to reach Mist\n2. connect ge-0/0/1 back-to-back for ha_control\n\
3. connect ge-0/0/2 back-to-back for ha_data (fabric); or for SRX380, xe-0/0/16\
\ if 10G SFP+ is used\n4. connect ge-0/0/3- to LAN or additional WANs\n \
\ \n\n#### SRX550\n\nge-0/0/0 becomes OOB/fxp0 after cluster is enabled,\
\ make suenable oob_ip_config as dhcp to maintain cloud connectivity\n\n1.\
\ connect ge-0/0/0 to reach Mist (after cluster is fully up, this port becomes\
\ OOB/fxp0)\n2. connect ge-0/0/1 back-to-back for ha_control\n3. connect\
\ ge-0/0/2 back-to-back for ha_data (fabric)\n4. connect ge-0/0/3 to WAN\
\ (after cluster is up, intended to be used for reth0)\n5. connect ge-0/0/4-\
\ to LAN or additional WANs\n \n\n#### SRX1500\n\nSRX1500 has, additionally,\
\ dedicated HA Control port\n\n1. form cluster in UI\n2. configure ge-0/0/0,ge-7/0/0\
\ for WAN (reth0)\n3. configure ge-0/0/1,ge-7/0/1 for ha_data\n4. configure\
\ ge-0/0/2- for LAN or additional WAN\n5. connect dedicated ha_control back-to-back\n\
6. connect ge-0/0/0 to uplink switch to WAN and to reach Mist\n7. connect\
\ ge-0/0/1 back-to-back for ha_data\n8. connect ge-0/0/2- to LAN or additional\
\ WANs\n\n \n#### SRX1600\n\nSRX1600 has, additionally, two dedicated HA\
\ Control port\n\n1. form cluster in UI\n2. configure ge-0/0/0,ge-7/0/0 for\
\ WAN (reth0)\n3. configure ge-0/0/1,ge-7/0/1 for ha_data\n4. configure ge-0/0/2-\
\ for LAN or additional WAN\n5. connect dedicated both ha_control back-to-back\n\
6. connect ge-0/0/0 to uplink switch to WAN and to reach Mist\n7. connect\
\ ge-0/0/1 back-to-back for ha_data\n8. connect ge-0/0/2- to LAN or additional\
\ WANs\n\n\n#### SRX4100\n\nSRX4100 has dedicated ha_control and ha_data (fabric)\
\ ports\n\n1. connect dedicated ha_control back-to-back\n2. connect dedicated\
\ ha_data back-to-back\n3. connect xe-0/0/0 to WAN to reach Mist\n4. connect\
\ xe-0/0/1- to LAN or additional WANs\n\n\n## Replace a Node in a HA Cluster\n\
Usually Device Replacement is done by Device Replacement API. For a HA cluster,\
\ you can also replace a node by another device in the same site."
operationId: createSiteDeviceHaCluster
requestBody:
content:
application/json:
examples:
example-1:
value:
nodes:
- mac: aff827549235
- mac: 8396cd006c8c
schema:
$ref: '#/components/schemas/gateway_cluster_form'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteDeviceHaCluster
tags:
- Sites Devices - WAN Cluster
put:
deprecated: true
description: Swap nodes on the HA Cluster
operationId: swapSiteDeviceHaClusterNode
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/gateway_cluster_swap'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: swapSiteDeviceHaClusterNode
tags:
- Sites Devices - WAN Cluster
/api/v1/sites/{site_id}/devices/{device_id}/image{image_number}:
delete:
description: Delete image from a device
operationId: deleteSiteDeviceImage
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteDeviceImage
tags:
- Sites Devices
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
- in: path
name: image_number
required: true
schema:
type: integer
post:
description: Attach up to 3 images to a device
operationId: addSiteDeviceImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/image_import'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addSiteDeviceImage
tags:
- Sites Devices
/api/v1/sites/{site_id}/devices/{device_id}/iot:
get:
description: Returns the current state of each enabled IoT pin configured as
an output.
operationId: getSiteDeviceIotPort
responses:
'200':
$ref: '#/components/responses/DeviceIot'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceIotPort
tags:
- Sites Devices - Wireless
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
put:
description: "**Note**: For each IoT pin referenced:\n * The pin must be enabled\
\ using the Device `iot_config` API\n * The pin must support the output direction"
operationId: setSiteDeviceIotPort
requestBody:
content:
application/json:
schema:
additionalProperties:
type: integer
description: Property key is the IoT port name (e.g A0)
example:
A1: 1
DO: 0
type: object
description: Request Body
responses:
'200':
$ref: '#/components/responses/DeviceIot'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setSiteDeviceIotPort
tags:
- Sites Devices - Wireless
/api/v1/sites/{site_id}/devices/{device_id}/local_port_config:
delete:
description: Sometimes HelpDesk Admin needs to change port configs
operationId: deleteSiteLocalSwitchPortConfig
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteLocalSwitchPortConfig
tags:
- Sites Devices - Wired
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
put:
description: Sometimes HelpDesk Admin needs to change port configs
operationId: updateSiteLocalSwitchPortConfig
requestBody:
content:
application/json:
examples:
example-1:
value:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
description: string
disable_autoneg: true
duplex: auto
dynamic_usage: string
esilag: true
poe_disabled: true
speed: auto
usage: string
schema:
$ref: '#/components/schemas/junos_port_config'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteLocalSwitchPortConfig
tags:
- Sites Devices - Wired
/api/v1/sites/{site_id}/devices/{device_id}/locate:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Locate a Device by blinking it\u2019s LED, it\u2019s a persisted\
\ state that has to be stopped by calling Stop Locating API"
operationId: startSiteLocateDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startSiteLocateDevice
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/devices/{device_id}/ping:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Ping from AP, Switch and SSR\n\nPing can be performed from the\
\ Device. The output will be available through websocket. As there can be\
\ multiple command issued against the same AP at the same time and the output\
\ all goes through the same websocket stream, session is introduced for demux.\n\
\n#### Subscribe to Device Command outputs\n`WS /api-ws/v1/stream`\n\n```json\n\
{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n\
##### Example output from ws stream\n```json\n{\n \"event\": \"data\",\n\
\ \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/devices/00000000-0000-0000-1000-5c5b350e0060/cmd\"\
,\n \"data\": {\n \"session\": \"session_id\",\n \"raw\"\
: \"64 bytes from 23.211.0.110: seq=8 ttl=58 time=12.323 ms\\n\"\n }\n\
}\n```"
operationId: pingFromDevice
requestBody:
content:
application/json:
examples:
example-1:
value:
count: 10
host: 1.1.1.1
schema:
$ref: '#/components/schemas/utils_ping'
description: Request Body
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: pingFromDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/poll_stats:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: This API can be used to poll statistics from the Switch proactively
once. After it is called, the statistics will be pushed back to the cloud
within the statistics interval.
operationId: pollSiteSwitchStats
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: pollSiteSwitchStats
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/readopt:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: For the octerm devices, the device ID must come from fpc0. However,
for a VC, the users may change the original fpc0 from CLI. To fix the issue,
the readopt API could be used to trigger the readopt process so the device
would get the corret device ID to connect the cloud.
operationId: readoptSiteOctermDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: readoptSiteOctermDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/release_dhcp:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Releases an active DHCP lease.
operationId: releaseSiteSsrDhcpLease
requestBody:
content:
application/json:
examples:
Example:
value:
node: node0
port: string
schema:
$ref: '#/components/schemas/utils_release_dhcp'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
description: Parameter `port ` absent
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: releaseSiteSsrDhcpLease
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/reprovision:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: To force one device to reprovision itself again.
operationId: reprovisionSiteOctermDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: readoptSiteOctermDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/request_ztp_password:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: In the case where soemthing happens during/after ZTP, the root-password
is modified (required for ZTP to set up outbound-ssh) but the user-defined
password config has not be configured. This API can be used to retrieve the
temporary password.
operationId: getSiteDeviceZtpPassword
responses:
'200':
content:
application/json:
examples:
example-1:
value:
root_password: ef8070ef8f924edb592e1819ed64b31172ab8de9d5cde75d3f46acd9506202ab9b1cbb97e381c5aa11037f17e5ed7b4b609461cd813d944670549d410ef82f2e
schema:
$ref: '#/components/schemas/root_password'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceZtpPassword
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/resolve_dns:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "DNS resolutions are performed on the Device. The output will be\
\ available through websocket. As there can be multiple command issued against\
\ the same SSR at the same time and the output all goes through the same websocket\
\ stream, `session` is used for demux.\n \n #### Subscribe to Device Command\
\ outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n##### Example output from ws stream\n```\n Router | Hostname\
\ | Resolved | Last Resolved | Expiration\n-------------|------------------------|----------|----------------------|---------------------\n\
\ test-device | xxx.yyy.net | Y | 2022-03-28T03:56:49Z |\
\ 2022-03-28T03:57:49Z\n```"
operationId: testSiteSsrDnsResolution
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: testSiteSsrDnsResolution
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/restart:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Restart / Reboot a device
operationId: restartSiteDevice
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/utils_devices_restart'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: restartSiteDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/service_ping:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Ping from SSR\n\nService Ping can be performed from the Device.\
\ The output will be available through websocket. As there can be multiple\
\ command issued against the same device at the same time and the output all\
\ goes through the same websocket stream, session is introduced for demux.\n\
\n#### Subscribe to Device Command outputs\n`WS /api-ws/v1/stream`\n\n```json\n\
{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n\
##### Example output from ws stream\n```json\n{\n \"event\": \"data\",\n\
\ \"channel\": \"/sites/4ac1dcf4-9d8b-7211-65c4-057819f0862b/devices/00000000-0000-0000-1000-5c5b350e0060/cmd\"\
,\n \"data\": {\n \"session\": \"session_id\",\n \"raw\"\
: \"64 bytes from 23.211.0.110: seq=8 ttl=58 time=12.323 ms\\n\"\n }\n\
}\n```"
operationId: servicePingFromSsr
requestBody:
content:
application/json:
examples:
example-1:
value:
count: 10
host: 1.1.1.1
service: web-session
schema:
$ref: '#/components/schemas/utils_service_ping'
description: Request Body
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: servicePingFromSsr
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/show_arp:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Get ARP Table from the Device. The output will be available through\
\ websocket. As there can be multiple command issued against the same device\
\ at the same time and the output all goes through the same websocket stream,\
\ `session` is introduced for demux.\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n"
operationId: getSiteDeviceArpTable
requestBody:
content:
application/json:
examples:
example-1:
value:
neighbor: 192.168.4.1
prefix: 192.168.0.5/30
protocol: bgp
route: advertised
vrf_name: default
schema:
$ref: '#/components/schemas/utils_show_arp'
description: all attributes are optional
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceArpTable
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/show_evpn_database:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Get EVPN Database from the Device. The output will be available
through websocket.
operationId: getSiteDeviceEvpnDatabase
requestBody:
content:
application/json:
examples:
example-1:
value:
neighbor: 192.168.4.1
prefix: 192.168.0.5/30
protocol: bgp
route: advertised
vrf_name: default
schema:
$ref: '#/components/schemas/utils_show_evpn_database'
description: all attributes are optional
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceEvpnDatabase
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/show_mac_table:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Get MAC Table from the Device. The output will be available through\
\ websocket. As there can be multiple command issued against the same device\
\ at the same time and the output all goes through the same websocket stream,\
\ `session` is introduced for demux.\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n"
operationId: getSiteDeviceMacTable
requestBody:
content:
application/json:
examples:
example-1:
value:
neighbor: 192.168.4.1
prefix: 192.168.0.5/30
protocol: bgp
route: advertised
vrf_name: default
schema:
$ref: '#/components/schemas/utils_show_mac_table'
description: all attributes are optional
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceMacTable
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/show_route:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Get routes from SSR, SRX and Switch. \nThe output will be available\
\ through websocket. As there can be multiple command issued against the same\
\ device at the same time and the output all goes through the same websocket\
\ stream, `session` is introduced for demux.\n\n#### Subscribe to Device Command\
\ outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```\n##### Example output from ws stream\n```\nadmin@labsystem1.fiedler#\
\ show bgp neighbors\nBGP neighbor is 192.168.4.1, remote AS 4200000001, local\
\ AS 4200000128, external\nlink\n BGP version 4, remote router ID 1.1.1.1\n\
\ BGP state = Established, up for 00:27:25\n Last read 00:00:25, hold time\
\ is 90, keepalive interval is 30 seconds\n Configured hold time is 90, keepalive\
\ interval is 30 seconds\n Neighbor capabilities:\n 4 Byte AS: advertised\
\ and received\n Route refresh: advertised and received(old & new)\n\
\ Address family IPv4 Unicast: advertised and received\n Graceful Restart\
\ Capabilty: advertised and received\n Remote Restart timer is 120 seconds\n\
\ Address families by peer:\n none\n ...\n```"
operationId: getSiteSsrAndSrxRoutes
requestBody:
content:
application/json:
examples:
example-1:
value:
neighbor: 192.168.4.1
prefix: 192.168.0.5/30
protocol: bgp
route: advertised
vrf_name: default
schema:
$ref: '#/components/schemas/utils_show_route'
description: all attributes are optional
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceRoutes
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/show_service_path:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Get service path information of the Device. The output will be\
\ available through websocket. As there can be multiple command issued against\
\ the same device at the same time and the output all goes through the same\
\ websocket stream, session is introduced for demux.\n\n\n#### Subscribe to\
\ Device Command outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\"\
: \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n##### Example output\
\ from ws stream\n```\nshow service-path\n\nService Service-route Type\
\ Destination Next-Hop Interface Vector Cost Rate Capacity\
\ State\n\nWeb web-route1 service-agent 4.4.4.4 \
\ 1.1.1.2 lan red 10 1 200/3000 Up*\nWeb \
\ web-route1 service-agent 4.4.4.4 1.1.1.3 lan \
\ red 10 1 200/3000 Up\nWeb web-route2 \
\ service-agent 5.5.5.5 2.2.2.2 lan blue 20 2 \
\ 50/unlimited Down\nLogin BgpOverSVR 10.1.1.1\
\ 1.2.3.4 wan red 10 3 - Up\nLogin \
\ BgpOverSVR 11.1.1.1 1.2.3.4 wan \
\ red 10 1 - Up\nApp1 Routed\
\ - - - - - - -\
\ -\nApp1 learned-routed Routed - \
\ - - - - - - -\n```"
operationId: getSiteSsrServicePath
requestBody:
content:
application/json:
examples:
Example:
value:
node: node0
service_name: any
schema:
$ref: '#/components/schemas/utils_show_service_path'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSsrServicePath
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/show_session:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Get active sessions passing through the Device. The output will\
\ be available through websocket. As there can be multiple command issued\
\ against the same device at the same time and the output all goes through\
\ the same websocket stream, session is introduced for demux.\n\n#### Subscribe\
\ to Device Command outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"\
subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\n}\n```\n##### Example\
\ output from ws stream\n```\nadmin@ssr.node# show sessions\nFri 2020-04-17\
\ 16:55:34 UTC\n\nNode: node1\n\n====================================== =====\
\ ============= =========== ========== ====== ======= ================= ==========\
\ ================= =========== ================= ========== ===================\
\ ========= =================\n Session Id Dir\
\ Service Tenant Dev Name VLAN Proto Src IP \
\ Src Port Dest IP Dest Port NAT IP NAT Port Payload\
\ Encrypted Timeout Uptime\n====================================== =====\
\ ============= =========== ========== ====== ======= ================= ==========\
\ ================= =========== ================= ========== ===================\
\ ========= =================\n 01187fb8-765a-45e5-ae90-37d77f15e292 fwd\
\ Internet lanSubnet lan 0 udp 192.168.0.28 \
\ 44674 35.166.173.18 9930 96.230.191.130 19569 false\
\ 154 0 days 0:00:28\n 01187fb8-765a-45e5-ae90-37d77f15e292\
\ rev Internet lanSubnet wan 0 udp 35.166.173.18\
\ 9930 96.230.191.130 19569 0.0.0.0 0\
\ false 154 0 days 0:00:28\n 0859a4ae-bcff-4aa6-b812-79a5236a6c13\
\ fwd Internet lanSubnet lan 0 tcp 192.168.0.41\
\ 60843 17.249.171.246 443 96.230.191.130 51941\
\ false 2 0 days 0:00:10\n\n```"
operationId: getSiteSsrAndSrxSessions
requestBody:
content:
application/json:
examples:
Example:
value:
node: node0
service_name: any
schema:
$ref: '#/components/schemas/utils_show_session'
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSsrAndSrxSessions
tags:
- Utilities WAN
/api/v1/sites/{site_id}/devices/{device_id}/snapshot:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Create recovery device snapshot (Available on Junos OS EX2300-,
EX3400-, EX4400- devices)
operationId: createSiteDeviceSnapshot
responses:
'200':
$ref: '#/components/responses/DeviceSnapshot'
'400':
content:
application/json:
examples:
cannot-snapshot-an-offline-device:
value: cannot snapshot an offline device
snapshot-not-supported:
value: snapshot not supported
schema:
type: string
description: Bad Request
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteDeviceSnapshot
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/support:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Support / Upload device support files\n\n#### Info Param\n**Parameter**|**Description**\
\ \n :-------------: |:-------------: |:-------------: \nprocess|Upload 1\
\ file with output of show system processes extensive\noutbound-ssh|Upload\
\ 1 file that concatenates all /var/log/outbound-ssh.log* files\nmessages|Upload\
\ 1 to 10 /var/log/messages* files\ncore-dumps|Upload all core dump files,\
\ if any\nfull|string|Upload 1 file with output of request support information,\
\ 1 file that concatenates all /var/log/outbound-ssh.log files, all core dump\
\ files, the 3 most recent /var/log/messages files, and Mist agent logs (for\
\ Junos devices running the Mist agent)\nvar-logs|Upload all non-empty files\
\ in the /var/log/ directory\njma-logs|Upload Mist agent logs (for Junos devices\
\ running the Mist agent only)"
operationId: uploadSiteDeviceSupportFile
requestBody:
content:
application/json:
examples:
example-1:
value:
info: full
schema:
$ref: '#/components/schemas/utils_send_support_logs'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
description: Device not online
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uploadSiteDeviceSupportFile
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/synthetic_test:
get:
description: Get Device Synthetic Test
operationId: getSiteDeviceSyntheticTest
responses:
'200':
description: scheduled
'400':
description: Device not online / Device not supported / Already in progress
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceSyntheticTest
tags:
- Synthetic Tests
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Trigger Device Synthetic Test
operationId: triggerSiteDeviceSyntheticTest
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/synthetic_test_device'
responses:
'200':
description: scheduled
'400':
description: Device not online / Device not supported / Already in progress
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: triggerSiteDeviceSyntheticTest
tags:
- Synthetic Tests
/api/v1/sites/{site_id}/devices/{device_id}/traceroute:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "Traceroute can be performed from the Device. The output will be\
\ available through websocket. As there can be multiple command issued against\
\ the same AP at the same time and the output all goes through the same websocket\
\ stream, session is introduced for demux.\n\n#### Subscribe to Device Command\
\ outputs\n`WS /api-ws/v1/stream`\n\n```json\n{\n \"subscribe\": \"/sites/{site_id}/devices/{device_id}/cmd\"\
\n}\n```"
operationId: tracerouteFromDevice
requestBody:
content:
application/json:
examples:
example-1:
value:
host: string
port: 33434
protocol: udp
schema:
$ref: '#/components/schemas/utils_traceroute'
description: Request Body
responses:
'200':
$ref: '#/components/responses/WebsocketSession'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: tracerouteFromDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/unlocate:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Stop Locate a Device
operationId: stopSiteLocateDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: stopSiteLocateDevice
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/devices/{device_id}/upgrade:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Device Upgrade
operationId: upgradeSiteDevice
requestBody:
content:
application/json:
examples:
example-1:
value:
version: 3.1.5
schema:
$ref: '#/components/schemas/device_upgrade'
responses:
'200':
$ref: '#/components/responses/UpgradeInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeSiteDevice
tags:
- Utilities Common
/api/v1/sites/{site_id}/devices/{device_id}/upgrade_bios:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Upgrade device bios
operationId: upgradeSiteDeviceBios
requestBody:
content:
application/json:
examples:
Example:
value:
version: CDEN_P_EX1_00.20.01.00
schema:
$ref: '#/components/schemas/upgrade_bios'
responses:
'200':
$ref: '#/components/responses/DeviceBiosUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeSiteDeviceBios
tags:
- Utilities LAN
/api/v1/sites/{site_id}/devices/{device_id}/vc:
delete:
description: "When all the member switches of VC are removed and only member\
\ ID 0 is left, the cloud would detect this situation and automatically changes\
\ the single switch to non-VC role.\n\nFor some unexpected cases that the\
\ VC is gone and disconncted, the API below could be used to change the state\
\ of VC\u2019s switches to be standalone. After it is executed, all the switches\
\ will be shown as standalone switches under Inventory."
operationId: deleteSiteVirtualChassis
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteVirtualChassis
tags:
- Sites Devices - Wired Virtual Chassis
get:
description: 'Get VC Status
The API returns a combined view of the VC status which includes topology and
stats_'
operationId: getSiteDeviceVirtualChassis
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceVirtualChassis
tags:
- Sites Devices - Wired Virtual Chassis
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: "For models (e.g. EX3400 and up) having dedicated VC ports, it\
\ is easier to form a VC by just connecting cables with the dedicated VC ports.\
\ Cloud will detect the new VC and update the inventory.\n\nIn case that the\
\ user would like to choose the dedicated switch as a VC master. Or for EX2300-C-12P\
\ and EX2300-C-12T which doesn\u2019t have dedicated VC ports, below are procedures\
\ to automate the VC creation:\n\n1. Power on the switch that is choosen as\
\ the VC master first. And the powering on the other member switches.\n2.\
\ Claim or adopt all these switches under the same organization\u2019s Inventory\n\
3. Assign these switches into the same Site\n4. Invoke vc command on the switch\
\ choosen to be the VC master. For EX2300-C-12P, VC ports will be created\
\ automatically.\n5. Connect the cables to the VC ports for these switches\n\
6. Wait for the VC to be formed. The Org\u2019s inventory will be updated\
\ for the new VC."
operationId: createSiteVirtualChassis
requestBody:
content:
application/json:
examples:
create-a-VC-with-three-members:
value:
members:
- mac: aff827549235
vc_ports:
- xe-0/1/0
vc_role: master
- mac: 8396cd006c8c
vc_ports:
- xe-0/1/0
- xe-0/1/1
vc_role: backup
- mac: 8396cd00888c
vc_ports:
- xe-0/1/0
vc_role: linecard
create-a-pre-provisioned-VC-with-three-members:
value:
members:
- mac: aff827549235
member_id: 0
vc_ports:
- xe-0/1/0
- xe-0/1/1
vc_role: master
- mac: 8396cd006c8c
member_id: 1
vc_ports:
- xe-0/1/0
vc_role: linecard
- mac: 8396cd00888c
member_id: 2
vc_ports:
- xe-0/1/0
vc_role: backup
preprovisioned: true
schema:
$ref: '#/components/schemas/virtual_chassis_config'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteVirtualChassis
tags:
- Sites Devices - Wired Virtual Chassis
put:
description: "The VC creation and adding member switch API will update the device\u2019\
s virtual chassis config which is applied after VC is formed to create JUNOS\
\ pre-provisioned virtual chassis configuration.\n\n## Change to use preprovisioned\
\ VC\nTo switch the VC to use preprovisioned VC, enable preprovisioned in\
\ virtual_chassis config. Both vc_role master and backup will be matched to\
\ routing-engine role in Junos preprovisioned VC config.\n\nIn this config,\
\ fpc0 has to be the same as the mac of device_id. Use renumber if you want\
\ to replace fpc0 which involves device_id change.\n\nNotice: to configure\
\ preprovisioned VC, every member of the VC must be in the inventory.\n\n\
## Add new members\nFor models (e.g. EX4300 and up) having dedicated VC ports,\
\ it is easier to add new member switches into a VC by just connecting cables\
\ with the dedicated VC ports. Cloud will detect the new members and update\
\ the inventory.\n\nFor EX2300 VC, adding new members requires to follow the\
\ procedures below:\n1. Powering on the new member switches and ensuring cables\
\ are not connected to any VC ports.\n2. Claim or adopt all new member switches\
\ under the VC\u2019s organization Inventory\n3. Assign all new member switches\
\ to the same Site as the VC\n4. Invoke vc command to add switches to the\
\ VC.\n5. Connect the cables to the VC ports for these switches\n6. After\
\ a while, the Org\u2019s Inventory shows this new switches has been added\
\ into the VC.\n\n## Removing member switch\nTo remove a member switch from\
\ the VC, following the procedures below:\n\n1. Ensuring the VC is connected\
\ to the cloud first\n2. Unplug the cable from the VC port of the switch\n\
3. Waiting for the VC state (vc_state) of this switch is changed to not-present\n\
4. Invoke update_vc with remove to remove this switch from the VC\n5. The\
\ Org\u2019s Inventory shows the switch is removed.\n\nPlease notice that\
\ member ID 0 (fpc0) cannot be removed. When a VC has two switches left, unpluging\
\ the cable may result in the situation that fpc0 becomes a line card (LC).\
\ When this situation is happened, please re-plug in the cable, wait for both\
\ switches becoming present (show virtual-chassis) and then removing the cable\
\ again.\n\n## Renumber a member switch\nWhen a member switch doesn\u2019\
t work properly and needed to be replaced, the renumber API could be used.\
\ The following two types of renumber are supported:\n\n1. Replace a non-fpc0\
\ member switch\n2. Replace fpc0. When fpc0 is relaced, PAPI device config\
\ and JUNOS config will be both updated.\n\nFor renumber to work, the following\
\ procedures are needed: \n1. Ensuring the VC is connected to the cloud and\
\ the state of the member switch to be replaced must be non present. \n2.\
\ Adding the new member switch to the VC \n3. Waiting for the VC state (vc_state)\
\ of this VC to be updated to API server \n4. Invoke vc with renumber to replace\
\ the new member switch from fpc X to\n\n## Perprovision VC members\nBy specifying\
\ \u201Cpreprovision\u201D op, you can convert the current VC to pre-provisioned\
\ mode, update VC members as well as specify vc_ports when adding new members\
\ for device models without dedicated vc ports. Use renumber for fpc0 replacement\
\ which involves device_id change.\n\nNote: \n1. vc_ports is used for adding\
\ new members and not needed if * the device model has dedicated vc ports,\
\ or * no new member is added \n2. New VC members to be added should exist\
\ in the same Site as the VC\n\nUpdate Device\u2019s VC config can achieve\
\ similar purpose by directly modifying current virtual_chassis config. However,\
\ it cannot fulfill requests to enabling vc_ports on new members that are\
\ yet to belong to current VC."
operationId: updateSiteVirtualChassisMember
requestBody:
content:
application/json:
examples:
adding-two-new-switches-as-line-cards-into-the-VC:
value:
members:
- mac: aff827549235
member: 0
vc_ports:
- xe-0/1/1
vc_role: linecard
- mac: 8396cd00777c
vc_ports:
- xe-0/1/0
vc_role: linecard
op: add
convert-to-pre-provisioned-VC:
value:
member: 0
members:
- mac: string
member: 0
vc_ports:
- string
vc_role: master
new-member: 0
op: add
removing-two-switches-from-VC:
value:
members:
- member: 2
- member: 3
op: remove
renumber-member-ID-3-to-member-ID-2:
value:
member: 3
new-member: 2
op: renumber
schema:
$ref: '#/components/schemas/virtual_chassis_update'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VirtualChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteVirtualChassisMember
tags:
- Sites Devices - Wired Virtual Chassis
/api/v1/sites/{site_id}/devices/{device_id}/vc/vc_port:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Set VC port
operationId: setSiteVcPort
requestBody:
content:
application/json:
examples:
delete-VC-port-of-xe-0/1/1-of-member-0-and-member-2:
value:
members:
- member: 0
vc_ports:
- xe-0/1/1
- member: 2
vc_ports:
- xe-0/1/1
op: delete
set-VC-port-of-xe-0/1/1-of-member-0-and-member-2:
value:
members:
- member: 0
vc_ports:
- xe-0/1/1
- member: 2
vc_ports:
- xe-0/1/1
op: set
schema:
$ref: '#/components/schemas/virtual_chassis_port'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: setSiteVcPort
tags:
- Sites Devices - Wired Virtual Chassis
/api/v1/sites/{site_id}/events/fast_roam:
get:
description: Get Roaming Events data
operationId: getSiteRoamingEvents
parameters:
- description: event type
in: query
name: type
schema:
enum:
- success
- fail
- none
title: fast_roam_result
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/EventsFastroam'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRoamingEvents
tags:
- Sites Events
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/events/system/count:
get:
description: Count System Events
operationId: countSiteSystemEvents
parameters:
- in: query
name: distinct
schema:
default: type
enum:
- type
title: Site System Events count distinct
type: string
- $ref: '#/components/parameters/system_event_type'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteSystemEvents
tags:
- Sites Events
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/events/system/search:
get:
description: Search System Events
operationId: searchSiteSystemEvents
parameters:
- $ref: '#/components/parameters/system_event_type'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DeviceEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteSystemEvents
tags:
- Sites Events
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/evpn_topologies:
get:
description: Get the existing EVPN topology
operationId: getSiteEvpnTopology
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteEvpnTopology
tags:
- Sites EVPN Topologies
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "While all the `evpn_id` / `downlink_ips` can be specifidd by hand,\
\ the easiest way is to call the `build_vpn_topology` API, allowing you to\
\ examine the diff, and update it yourself. You can also simply call it with\
\ `overwrite=true` which will apply the updates for you.\n\n**Notes:**\n1.\
\ You can use `core` / `distribution` / `access` to create a CLOS topology\n\
2. You can also use `core` / `distribution` to form a 2-tier EVPN topology\
\ where ESI-Lag is configured distribution to connect to access switches\n\
3. In a small/medium campus, `collapsed-core` can be used where core switches\
\ are the inter-connected to do EVPN\n4. The API uses a few pre-defined parameters\
\ and best-practices to generate the configs. It can be customized by using\
\ `evpn_options` in Site Setting / Network Template. (e.g. a different subnet\
\ for the underlay)\n\n#### Collapsed Core\nIn a small-medium campus, EVPN\
\ can also be enabled only at the core switches (up to 4) by assigning all\
\ participating switches with `collapsed-core role`. When there are more than\
\ 2 switches, a ring-like topology will be formed.\n\n#### ESI-Lag\nIf the\
\ access switchess does not have EVPN support, you can take advantage of EVPN\
\ by setting up ESI-Lag on distribution switches\n\n#### Leaf / Access / Collapsed-Core\n\
For leaf nodes in a EVPN topology, you\u2019d have to configure the IPs for\
\ networks that would participate in EVPN. Optionally, VRFs to isolate traffic\
\ from one tenant verus another"
operationId: createSiteEvpnTopology
requestBody:
content:
application/json:
examples:
example-1:
value:
name: CC
overwrite: true
pod_names:
'1': default
'2': default
switches:
- mac: 5c5b35000003
role: collapsed-core
- mac: 5c5b35000004
role: collapsed-core
schema:
$ref: '#/components/schemas/junos_evpn_topology'
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteEvpnTopology
tags:
- Sites EVPN Topologies
/api/v1/sites/{site_id}/evpn_topologies/{evpn_topology_id}:
delete:
description: Delete the site EVPN Topology
operationId: deleteSiteEvpnTopology
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteEvpnTopology
tags:
- Sites EVPN Topologies
get:
description: Get One EVPN Topology Detail
operationId: getSiteEvpnTolopogy
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteEvpnTolopogy
tags:
- Sites EVPN Topologies
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/evpn_topology_id'
put:
description: Update the EVPN Topolgy
operationId: updateSiteEvpnTopology
requestBody:
content:
application/json:
examples:
example-1:
value:
overwrite: false
switches:
- mac: 5c5b35000003
role: collapsed-core
- mac: 5c5b35000004
role: none
schema:
$ref: '#/components/schemas/junos_evpn_topology'
responses:
'200':
$ref: '#/components/responses/EvpnTopology'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteEvpnTopology
tags:
- Sites EVPN Topologies
/api/v1/sites/{site_id}/gatewaytemplates/derived:
get:
description: Get derived Gateway Templates for Site
operationId: getSiteGatewayTemplateDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
type: boolean
responses:
'200':
$ref: '#/components/responses/Gatewaytemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteGatewayTemplateDerived
tags:
- Sites Gateway Templates
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/guests:
get:
description: Get List of Site Guest Authorizations
operationId: listSiteAllGuestAuthorizations
parameters:
- description: UUID of single or multiple (Comma separated) WLAN under Site
`site_id` (to filter by WLAN)
in: query
name: wlan_id
schema:
type: string
responses:
'200':
$ref: '#/components/responses/GuestsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAllGuestAuthorizations
tags:
- Sites Guests
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/guests/count:
get:
description: Count Authorized Guest
operationId: countSiteGuestAuthorizations
parameters:
- example: auth_method
in: query
name: distinct
schema:
default: auth_method
enum:
- auth_method
- ssid
- company
title: Site Guests count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteGuestAuthorizations
tags:
- Sites Guests
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/guests/derived:
get:
description: Get List of Site Guest Authorizations
operationId: listSiteAllGuestAuthorizationsDerived
parameters:
- description: UUID of single or multiple (Comma separated) WLAN under Site
`site_id` (to filter by WLAN)
in: query
name: wlan_id
schema:
type: string
- description: whether to get org level guests, default is false i.e get site
level guests
in: query
name: cross_site
schema:
default: 'false'
enum:
- 'true'
- 'false'
type: string
responses:
'200':
$ref: '#/components/responses/GuestsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAllGuestAuthorizationsDerived
tags:
- Sites Guests
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/guests/search:
get:
description: Search Authorized Guest
operationId: searchSiteGuestAuthorization
parameters:
- example: 00000000-0000-0000-0000-000000000000
in: query
name: wlan_id
schema:
type: string
- in: query
name: auth_method
schema:
type: string
- in: query
name: ssid
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/GuestsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteGuestAuthorization
tags:
- Sites Guests
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/guests/{guest_mac}:
delete:
description: Delete Guest Authorization
operationId: deleteSiteGuestAuthorization
responses:
'200':
content:
application/json:
schema:
type: object
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteGuestAuthorization
tags:
- Sites Guests
get:
description: Get Guest Authorization
operationId: getSiteGuestAuthorization
responses:
'200':
$ref: '#/components/responses/Guest'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteGuestAuthorization
tags:
- Sites Guests
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/guest_mac'
put:
description: Update Guest Authorization
operationId: updateSiteGuestAuthorization
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/guest'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Guest'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteGuestAuthorization
tags:
- Sites Guests
/api/v1/sites/{site_id}/insights/client/{client_mac}/{metric}:
get:
description: 'Get Client Insight Metrics
See metrics possibilities at /api/v1/const/insight_metrics'
operationId: getSiteInsightMetricsForClient
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/InsightMetric'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteInsightMetricsForClient
tags:
- Sites Insights
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
- $ref: '#/components/parameters/metric'
/api/v1/sites/{site_id}/insights/device/{device_mac}/{metric}:
get:
description: 'Get AP Insight Metrics
See metrics possibilities at /api/v1/const/insight_metrics'
operationId: getSiteInsightMetricsForDevice
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/DeviceMetric'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteInsightMetricsForDevice
tags:
- Sites Insights
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/metric'
- $ref: '#/components/parameters/device_mac'
/api/v1/sites/{site_id}/insights/rogues:
get:
description: Get List of Site Rogue/Neighbor APs
operationId: listSiteRogueAPs
parameters:
- $ref: '#/components/parameters/rogue_type'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/InsightRogue'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteRogueAPs
tags:
- Sites Rogues
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/insights/rogues/clients:
get:
description: Get List of Site Rogue Clients
operationId: listSiteRogueClients
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/InsightRogueClients'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteRogueClients
tags:
- Sites Rogues
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/insights/{metric}:
get:
description: 'Get Site Insight Metrics
See metrics possibilities at /api/v1/const/insight_metrics'
operationId: getSiteInsightMetrics
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/interval'
responses:
'200':
$ref: '#/components/responses/InsightMetric'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteInsightMetrics
tags:
- Sites Insights
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/metric'
/api/v1/sites/{site_id}/licenses/usages:
get:
description: This shows license usage (i.e. needed) based on the features enabled
for the site.
operationId: getSiteLicenseUsage
responses:
'200':
$ref: '#/components/responses/GetLicenceUsage'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteLicenseUsage
tags:
- Sites Licenses
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/location/coverage:
get:
description: Get Beam Coverage Overview
operationId: getSiteBeamCoverageOverview
parameters:
- description: map_id (filter by map_id)
example: 00000000-0000-0000-0000-000000000000
in: query
name: map_id
schema:
type: string
- in: query
name: type
schema:
$ref: '#/components/schemas/rf_client_type'
- description: client_type (as filter. optional)
in: query
name: client_type
schema:
title: coverage_client_type
type: string
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/resolution'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
responses:
'200':
$ref: '#/components/responses/LocationCoverage'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteBeamCoverageOverview
tags:
- Sites Location
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/location/ml/current:
get:
description: 'Get Machine Learning Current Stat
For each VBLE AP, it has ML model parameters (e.g. Path-loss-estimate, Intercept)
as well as completion indicators (Level and PercentageComplete). For the completeness,
ML takes N sample to finish its first level and use N*0.25 samples to complete
each successive level. When a device is moved, the completeness will be reset
as it has to re-learn.'
operationId: getSiteMachineLearningCurrentStat
parameters:
- description: map_id (as filter, optional)
example: 00000000-0000-0000-0000-000000000000
in: query
name: map_id
schema:
type: string
responses:
'200':
$ref: '#/components/responses/Ml'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteMachineLearningCurrentStat
tags:
- Sites Location
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/location/ml/defaults:
get:
description: Get Default PLF for Models
operationId: getSiteDefaultPlfForModels
responses:
'200':
$ref: '#/components/responses/Ml'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDefaultPlfForModels
tags:
- Sites Location
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/location/ml/device/{device_id}:
delete:
description: Clear ML Overwrite for Device
operationId: clearSiteMlOverwriteForDevice
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteMlOverwriteForDevice
tags:
- Sites Location
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
put:
description: Overwrite ML For Device
operationId: overwriteSiteMlForDevice
requestBody:
content:
application/json:
examples:
example-1:
value:
iOS:
int: 6
ple: -3
iPod:
int: -10
ple: -5
schema:
$ref: '#/components/schemas/ml_overwrite'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Ml'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: overwriteSiteMlForDevice
tags:
- Sites Location
/api/v1/sites/{site_id}/location/ml/map/{map_id}:
delete:
description: Clear ML Overwrite for Map
operationId: clearSiteMlOverwriteForMap
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteMlOverwriteForMap
tags:
- Sites Location
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
put:
description: Overwrite ML For Map
operationId: overwriteSiteMlForMap
requestBody:
content:
application/json:
examples:
example-1:
value:
iOS:
int: 6
ple: -3
iPod:
int: -10
ple: -5
schema:
$ref: '#/components/schemas/ml_overwrite'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Ml'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: overwriteSiteMlForMap
tags:
- Sites Location
/api/v1/sites/{site_id}/location/ml/reset/map/{map_id}:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: Reset ML Stats by Map
operationId: resetSiteMlStatsByMap
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: resetSiteMlStatsByMap
tags:
- Sites Location
/api/v1/sites/{site_id}/maps:
get:
description: Get List of Site Maps
operationId: listSiteMaps
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MapsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteMaps
tags:
- Sites Maps
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Map
operationId: createSiteMap
requestBody:
content:
application/json:
examples:
example-1:
value:
flags: {}
height: 0
height_m: 0
latlng_br:
lat: string
lng: string
latlng_tl:
lat: string
lng: string
locked: true
name: string
occupancy_limit: 0
orientation: 0
origin_x: 0
origin_y: 0
ppm: 0
sitesurvey_path:
- coordinate: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
thumbnail_url: string
type: image
url: string
view: roadmap
wall_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
wayfinding:
micello:
account_key: string
default_level_id: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
snap_to_path: true
wayfinding_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
width: 0
width_m: 0
schema:
$ref: '#/components/schemas/map'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Map'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteMap
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/import:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Import data from files is a multipart POST which has an file,
an optional json, and an optional csv, to create floorplan, assign matching
inventory to specific site, place ap if name or mac matches.
# Note
This endpoint (at the site level), the AP must be already assigned to the
site to be placed on the floorplan. If you want to place APs from the Org
inventory, it is required to use the endpoint at the Org level [importOrgMaps](#operation/importOrgMaps)
# CSV File Format
```csv
Vendor AP name,Mist AP Mac
US Office AP-2,5c:5b:35:00:00:02
US Office AP-3,5c5b35000002
```'
operationId: importSiteMaps
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_site_import_file'
responses:
'200':
$ref: '#/components/responses/MapImport'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importSiteMaps
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/{map_id}:
delete:
description: Delete Site Map
operationId: deleteSiteMap
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteMap
tags:
- Sites Maps
get:
description: Get Site Map Details
operationId: getSiteMap
responses:
'200':
$ref: '#/components/responses/Map'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteMap
tags:
- Sites Maps
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
put:
description: Update Site Map
operationId: updateSiteMap
requestBody:
content:
application/json:
examples:
example-1:
value:
flags: {}
height: 0
height_m: 0
latlng_br:
lat: string
lng: string
latlng_tl:
lat: string
lng: string
locked: true
name: string
occupancy_limit: 0
orientation: 0
origin_x: 0
origin_y: 0
ppm: 0
sitesurvey_path:
- coordinate: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
thumbnail_url: string
type: image
url: string
view: roadmap
wall_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
wayfinding:
micello:
account_key: string
default_level_id: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
snap_to_path: true
wayfinding_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
width: 0
width_m: 0
schema:
$ref: '#/components/schemas/map'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Map'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteMap
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/{map_id}/auto_orient:
delete:
description: This API is called to force stop auto placement for a given map
operationId: deleteSiteApAutoOrientation
responses:
'200':
$ref: '#/components/responses/OK'
'400':
description: Autoplacement was not triggered
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteApAutoOrientation
tags:
- Sites Maps Auto-orientation
parameters:
- $ref: '#/components/parameters/map_id'
- $ref: '#/components/parameters/site_id'
post:
description: 'This API is called to trigger a map for auto orientation. For
auto orient feature to work, BLE data needs to be collected from the APs on
the map. This precess is not disruptive unlike FTM collection. Repeated POST
to this endpoint while a map is still running will be rejected.
List of devices to provide suggestions for is an optional parameter that can
be given to this API. This will provide auto orient suggestions only for the
devices specified. If no list of devices is provided, all APs asociated with
that map are considered by default'
operationId: startSiteApAutoOrientation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/auto_orient'
responses:
'200':
$ref: '#/components/responses/AutoOrientation'
'400':
$ref: '#/components/responses/AutoOrientationFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startSiteApAutoOrientation
tags:
- Sites Maps Auto-orientation
/api/v1/sites/{site_id}/maps/{map_id}/auto_placement:
delete:
description: This API is called to force stop auto placement for a given map
operationId: deleteSiteApAutoplacement
responses:
'200':
description: Autoplacement Process has stopped for this map
'400':
description: Autoplacement was not triggered
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteApAutoplacement
tags:
- Sites Maps Auto-placement
get:
description: 'This API is called to view the current status of auto placement
for a given map.
#### Status Descriptions
| Status | Description |
| --- | --- |
| `pending` | Autoplacement has not been requested for this map |
| `inprogress` | Autoplacement is currently processing |
| `done` | The autoplacement process has completed |
| `data_needed` | Additional position data is required for autoplacement.
Users should verify the requested anchor APs have a position on the map |
| `invalid_model` | Autoplacement is not supported on the model of the APs
on the map |
| `invalid_version` | Autoplacement is not supported with the APs current
firmware version |
| `error` | There was an error in the autoplacement process |'
operationId: getSiteApAutoPlacement
responses:
'200':
$ref: '#/components/responses/AutoPlacementInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteApAutoplacement
tags:
- Sites Maps Auto-placement
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: 'This API is called to trigger a map for auto placement. For auto
placement feature to work, RTT-FTM data need to be collected from the APs
on the map. This scan is disruptive and therefore the user must be notified
of service disrution during the functioning of auto placement Repeated POST
to this endpoint while a map is still running will be rejected.
List of devices to provide suggestions for is an optional parameter that can
be given to this API. This will provide autoplacement suggestions only for
the devices specified. If no list of devices is provided, all APs asociated
with that map are considered by default'
operationId: runSiteApAutoplacement
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/auto_placement'
responses:
'200':
description: Autoplacement Process has begun for this map
'400':
description: "* Map has less than 3 APs associated with it to perform auto\
\ placement \n* Auto AP Placement is already in progress for this Map\n\
* Autoplacement data does not exist or has gone stale"
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: runSiteApAutoplacement
tags:
- Sites Maps Auto-placement
/api/v1/sites/{site_id}/maps/{map_id}/clear_auto_orient:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: This API is used to destroy the autoorientations of a map or subset
of APs on a map.
operationId: clearSiteApAutoOrient
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteApAutoOrient
tags:
- Sites Maps Auto-orientation
/api/v1/sites/{site_id}/maps/{map_id}/clear_autoplacement:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: This API is used to destroy the cached autoplacement locations
of a map or subset of APs on a map.
operationId: clearSiteApAutoplacement
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: clearSiteApAutoplacement
tags:
- Sites Maps Auto-placement
/api/v1/sites/{site_id}/maps/{map_id}/image:
delete:
description: Delete Site Map Image
operationId: deleteSiteMapImage
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteMapImage
tags:
- Sites Maps
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: Add image map is a multipart POST which has an file (Image) and
an optional json parameter
operationId: addSiteMapImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/image_import'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: addSiteMapImage
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/{map_id}/replace:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: 'Replace Map Image
This works like an PUT where the image will be replaced. If transform is provided,
all the locations of the objects on the map (AP, Zone, Vbeacon, Beacon) will
be transformed as well (relative to the new Map)'
operationId: replaceSiteMapImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/map_site_replace_file'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: replaceSiteMapImage
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/{map_id}/set_map:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: "This API can be used to assign a list of AP Macs associated with\
\ site_id to the specified map_id. Note that map_id must be associated with\
\ corresponding site_id. This API obeys the following rules \n1. if AP is\
\ unassigned to any Map, it gets associated with map_id \n2. Any moved APs\
\ are returned in the response \n3. If the AP is considered a locked AP, no\
\ action will be taken"
operationId: bulkAssignSiteApsToMap
requestBody:
content:
application/json:
examples:
Example:
value:
macs:
- 5c5b35000001
- 5c5b35584a6f
schema:
$ref: '#/components/schemas/mac_addresses'
responses:
'200':
$ref: '#/components/responses/SetDevicesMap'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: bulkAssignSiteApsToMap
tags:
- Sites Maps
/api/v1/sites/{site_id}/maps/{map_id}/use_auto_ap_values:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: This API is used to accept or reject the cached autoplacement and
auto orientation values of a map or subset of APs on a map. A rejected AP
will retain its current X,Y and orientation until accpeted.
operationId: confirmSiteApLocalizationData
requestBody:
content:
application/json:
examples:
Example:
value:
accept: false
device_macs:
- string
for: placement
schema:
$ref: '#/components/schemas/use_auto_ap_values'
responses:
'200':
description: Success
'400':
description: 'Invalid localization service expected: placement or orientation'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: confirmSiteApLocalizationData
tags:
- Sites Maps Auto-placement
/api/v1/sites/{site_id}/maps/{map_id}/wayfinding/import:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
post:
description: This imports the vendor map meta data into the Map JSON. This is
required by the SDK and App in order to access/render the vendor Map properly.
operationId: importSiteWayfindings
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/wayfinding_import_json'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importSiteWayfindings
tags:
- Sites Maps
/api/v1/sites/{site_id}/mxedges:
get:
description: Get List of Site Mist Edges
operationId: listSiteMxEdges
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MxedgesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteMxEdges
tags:
- Sites MxEdges
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Mist Edge
operationId: createSiteMxEdge
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mxedge'
responses:
'200':
$ref: '#/components/responses/Mxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteMxEdge
tags:
- Sites MxEdges
/api/v1/sites/{site_id}/mxedges/events/count:
get:
description: Count Mist Edge Events
operationId: countSiteMxEdgeEvents
parameters:
- in: query
name: distinct
schema:
default: mxedge_id
enum:
- mxedge_id
- type
- mxcluster_id
- package
title: Site Mx Edge Events count distinct
type: string
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- $ref: '#/components/parameters/mxedge_event_type'
- description: service running on mist edge(mxagent, tunterm etc)
in: query
name: service
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteMxEdgeEvents
tags:
- Sites MxEdges
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/mxedges/events/search:
get:
description: Search Site Mist Edge Events
operationId: searcSitehMistEdgeEvents
parameters:
- description: mist edge id
in: query
name: mxedge_id
schema:
type: string
- description: mist edge cluster id
in: query
name: mxcluster_id
schema:
type: string
- $ref: '#/components/parameters/mxedge_event_type'
- description: service running on mist edge(mxagent, tunterm etc)
in: query
name: service
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/MxEdgeEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searcSitehMistEdgeEvents
tags:
- Sites MxEdges
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/mxedges/{mxedge_id}:
delete:
description: Delete Site Mist Edge
operationId: deleteSiteMxEdge
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteMxEdge
tags:
- Sites MxEdges
get:
description: get Site Mist Edge
operationId: getSiteMxEdge
responses:
'200':
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteMxEdge
tags:
- Sites MxEdges
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/mxedge_id'
put:
description: Update Site Mist Edge settings
operationId: updateSiteMxEdge
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mxedge'
responses:
'200':
$ref: '#/components/responses/Mxedge'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteMxEdge
tags:
- Sites MxEdges
/api/v1/sites/{site_id}/mxedges/{mxedge_id}/support:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/mxedge_id'
post:
description: Support / Upload Mist Edge support files
operationId: uploadSiteMxEdgeSupportFiles
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uploadSiteMxEdgeSupportFiles
tags:
- Sites MxEdges
/api/v1/sites/{site_id}/mxtunnels/{mxtunnel_id}/preempt_aps:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/mxtunnel_id'
post:
description: "To preempt AP\u2019s which are not connected to preferred peer\
\ to the preferred peer"
operationId: preemptSitesMxTunnel
responses:
'200':
$ref: '#/components/responses/MxTunnelsPreemptAps'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: preemptSitesMxTunnel
tags:
- Utilities MxEdge
/api/v1/sites/{site_id}/nac_clients/count:
get:
description: Count by Distinct Attributes of NAC Clients
operationId: countSiteNacClients
parameters:
- description: NAC Policy Rule ID, if matched
in: query
name: distinct
schema:
default: type
enum:
- type
- last_nacrule_id
- auth_type
- last_vlan_id
- last_nas_vendor
- last_username
- last_ap
- mac
- last_ssid
- last_status
- mdm_compliance_status
- mdm_provider
title: Site Nac Clients count distinct
type: string
- description: NAC Policy Rule ID, if matched
in: query
name: last_nacrule_id
schema:
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cdevice-auth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: last_vlan_id
schema:
type: string
- description: vendor of NAS device
in: query
name: last_nas_vendor
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
type: string
- description: SSID
in: query
name: last_ssid
schema:
type: string
- description: Username presented by the client
in: query
name: last_username
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: AP MAC connected to by client
in: query
name: last_ap
schema:
type: string
- description: MAC address
in: query
name: mac
schema:
type: string
- description: "Connection status of client i.e \u201Cpermitted\u201D, \u201C\
denied, \u201Csession_ended\u201D"
in: query
name: last_status
schema:
type: string
- description: "Client type i.e. \u201Cwireless\u201D, \u201Cwired\u201D etc."
in: query
name: type
schema:
type: string
- description: "MDM compliancy of client i.e \u201Ccompliant\u201D, \u201Cnot\
\ compliant\u201D"
in: query
name: mdm_compliance_status
schema:
type: string
- description: "MDM provider of client\u2019s organisation eg \u201Cintune\u201D\
, \u201Cjamf\u201D"
in: query
name: mdm_provider
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteNacClients
tags:
- Sites Clients - NAC
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/nac_clients/events/count:
get:
description: Count by Distinct Attributes of NAC Client-Events
operationId: countSiteNacClientEvents
parameters:
- in: query
name: distinct
schema:
enum:
- type
- nacrule_id
- dryrun_nacrule_id
- auth_type
- vlan
- nas_vendor
- username
- ap
- mac
- ssid
title: Site Nac Client Events count distinct
type: string
- $ref: '#/components/parameters/nac_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteNacClientEvents
tags:
- Sites Clients - NAC
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/nac_clients/events/search:
get:
description: Search NAC Client Events
operationId: searcsearcSiteNacClientEventsacClientEvents
parameters:
- $ref: '#/components/parameters/nac_event_type'
- description: NAC Policy Rule ID, if matched
in: query
name: nacrule_id
schema:
format: uuid
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: NAC Policy Dry Run Rule ID, if present and matched
in: query
name: dryrun_nacrule_id
schema:
type: string
- description: True - if dryrun rule present and matched with priority, False
- if not matched or not present
in: query
name: dryrun_nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cdevice-auth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: vlan
schema:
type: integer
- description: vendor of NAS device
in: query
name: nas_vendor
schema:
type: string
- description: SSID
in: query
name: bssid
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
format: uuid
type: string
- description: IDP returned roles/groups for the user
in: query
name: idp_role
schema:
type: string
- description: Radius attributes returned by NAC to NAS Devive
in: query
name: resp_attrs
schema:
$ref: '#/components/schemas/strings'
- description: SSID
in: query
name: ssid
schema:
type: string
- description: Username presented by the client
in: query
name: username
schema:
type: string
- description: AP MAC
in: query
name: ap
schema:
type: string
- description: AP random macMAC
in: query
name: random_mac
schema:
type: boolean
- description: MAC address
in: query
name: mac
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/EventsNacClientSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searcsearcSiteNacClientEventsacClientEvents
tags:
- Sites Clients - NAC
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/nac_clients/search:
get:
description: Search Site NAC Clients
operationId: searchSiteNacClients
parameters:
- description: NAC Policy Rule ID, if matched
in: query
name: last_nacrule_id
schema:
type: string
- description: NAC Policy Rule Matched
in: query
name: nacrule_matched
schema:
type: boolean
- description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cdevice-auth\u201D"
in: query
name: auth_type
schema:
type: string
- description: Vlan ID
in: query
name: last_vlan_id
schema:
type: string
- description: vendor of NAS device
in: query
name: last_nas_vendor
schema:
type: string
- description: SSO ID, if present and used
in: query
name: idp_id
schema:
type: string
- description: SSID
in: query
name: last_ssid
schema:
type: string
- description: Username presented by the client
in: query
name: last_username
schema:
type: string
- description: start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: AP MAC connected to by client
in: query
name: last_ap
schema:
type: string
- description: MAC address
in: query
name: mac
schema:
type: string
- description: "Connection status of client i.e \u201Cpermitted\u201D, \u201C\
denied, \u201Csession_ended\u201D"
in: query
name: last_status
schema:
type: string
- description: "Client type i.e. \u201Cwireless\u201D, \u201Cwired\u201D etc."
in: query
name: type
schema:
type: string
- description: "MDM compliancy of client i.e \u201Ccompliant\u201D, \u201Cnot\
\ compliant\u201D"
in: query
name: mdm_compliance_status
schema:
type: string
- description: "MDM provider of client\u2019s organisation eg \u201Cintune\u201D\
, \u201Cjamf\u201D"
in: query
name: mdm_provider
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/ClientNacSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteNacClients
tags:
- Sites Clients - NAC
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/networks/derived:
get:
description: Retrieves the list of Networks available for the Site
operationId: listSiteNetworksDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
default: false
type: boolean
responses:
'200':
$ref: '#/components/responses/NetworksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteNetworksDerived
tags:
- Sites Networks
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/networktemplates/derived:
get:
description: Get derived Network Templates for Site
operationId: getSiteNetworkTemplateDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
type: boolean
responses:
'200':
$ref: '#/components/responses/Networktemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteNetworkTemplateDerived
tags:
- Sites Network Templates
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/otherdevices:
get:
description: Get List of Site other devices (3rd party devices)
operationId: listSiteOtherDevices
parameters:
- in: query
name: vendor
schema:
type: string
- in: query
name: mac
schema:
type: string
- in: query
name: serial
schema:
type: string
- in: query
name: model
schema:
type: string
- in: query
name: name
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/DeviceOtherArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteOtherDevices
tags:
- Sites Devices Others
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/otherdevices/events/count:
get:
description: Count Site OtherDevices Events
operationId: countSiteOtherDeviceEvents
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- mac
- type
- vendor
- site_id
title: Site Other Device Events count distinct
type: string
- $ref: '#/components/parameters/otherdevice_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteOtherDeviceEvents
tags:
- Sites Devices Others
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/otherdevices/events/search:
get:
description: Search Site OtherDevices Events
operationId: searchSiteOtherDeviceEvents
parameters:
- description: mac
in: query
name: mac
schema:
type: string
- description: mac of attached device
in: query
name: device_mac
schema:
type: string
- description: vendor name
in: query
name: vendor
schema:
type: string
- $ref: '#/components/parameters/otherdevice_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/EventsOtherDevicesSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteOtherDeviceEvents
tags:
- Sites Devices Others
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/pcaps:
get:
description: Get List of Site Packet Captures
operationId: listSitePacketCaptures
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- description: optional client mac filter
in: query
name: client_mac
schema:
type: string
responses:
'200':
$ref: '#/components/responses/PcapsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSitePacketCaptures
tags:
- Utilities PCAPs
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/pcaps/capture:
delete:
description: Stop current capture
operationId: stopSitePacketCapture
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: stopSitePacketCapture
tags:
- Utilities PCAPs
get:
description: Get Capturing status
operationId: getSiteCapturingStatus
responses:
'200':
$ref: '#/components/responses/PcapStatus'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteCapturingStatus
tags:
- Utilities PCAPs
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "Initiate a Site Packet Capture\n\nThe output will be available\
\ through websocket. As there can be multiple command issued against the same\
\ AP at the same time and the output all goes through the same websocket stream,\
\ session is introduced for demux.\n\n#### Subscribe to Device Command outputs\n\
`WS /api-ws/v1/stream`\n\n```json\n{\n subscribe: \"/sites/{site_id}/pcaps\"\
\n}\n```\n#### Response (MxEdge)\n```json\n{\n \"event\": \"data\"\n \
\ \"channel\": \"/sites/:site_id/pcaps\"\n \"data\": {\n \"capture_id\"\
: \"6b1be4fb-b239-44d9-9d3b-cb1ff3af1721\",\n \"lost_messages\": 0\n \
\ \"pcap_dict\": {\n \"channel_frequency\": 2412,\n \
\ \"channel\": \"1\",\n \"datarate\": \"1.0 Mbps\",\n\
\ \"rssi\": -75, \n \"dst\": \"78:bd:bc:ca:0b:0a\"\
,\n \"src\": \"18:b8:1f:4c:91:c0\",\n \"bssid\": \"\
18:b8:1f:4c:91:c0\",\n \"frame_type\": \"Management\", \n \
\ \"frame_subtype\": \"Probe Response\", \n \"proto\": \"\
802.11\", \n \"ap_mac\": \"d4:20:b0:81:99:2e\", \n \
\ \"direction\": \"tx\", \n \"timestamp\": 1652246543, \n \
\ \"length\": 416.0,\n \"interface\": \"radiotap\",\n\
\ \"info\": \"1652246544.467733 1683216786us tsft 1.0 Mb/s 2412\
\ MHz 11g -75dBm signal -82dBm noise antenna 0 Probe Response (ATTKmsWiVS)\
\ [1.0* 2.0* 5.5* 11.0* 18.0 24.0 36.0 54.0 Mbit] CH: 2, PRIVACY\\\\n\",\n\
\ }, \n \"pcap_raw\": \"1MOyoQIABAAAAAAAAAAAAP//AAABAAAAEEh7Yh5VBwCgAQAAoAEAAAAAKwBvCADAAQAAAIw7reCS2VNkAAAAABACbAmABLWuAAEAEBgAAwACAABQADoBeL28ygsKGLgfTJHAGLgfTJHAcIZ2WDlBJQAAAGQAERUACkFUVEttc1dpVlMBCIKEi5YkMEhsAwECBwZVUyABCx4gAQAjAhkAKgEEMgQMEhhgMBQBAAAPrAQBAAAPrAQBAAAPrAIMAAsFAQAbAABGBTIIAQAALRqtCR////8AAAAAAAAAAAAAAAAAAAAAAAAAAD0WAggVAAAAAAAAAAAAAAAAAAAAAAAAAH8IBAAIAAAAAEDdkwBQ8gQQSgABEBBEAAECEDsAAQMQRwAQn2481frn3KT+uGod2ERx+RAhAAtBcnJpcywgSW5jLhAjAApCR1cyMTAtNzAwECQACkJHVzIxMC03MDAQQgAKQkdXMjEwLTcwMBBUAAgABgBQ8gQAARARAA5BcnJpcyBXaXJlbGVzcxAIAAIgCBA8AAEBEEkABgA3KgABIN0JABAYAgEQHAAA3RgAUPICAQGEAAOkAAAnpAAAQkNeAGIyLwAzjakr\"\
\n}\n```\n\n#### vResponse (Wired)\n```json\n{\n \"event\": \"data\"\n\
\ \"channel\": \"/sites/67970e46-4e12-11e6-9188-0242ac110007/pcaps\"\n\
\ \"data\": {\n \"capture_id\": \"f039b1b4-a23e-48b2-906a-0da40524de73\"\
, \n \"pcap_dict\": {\n \"dst_mac\": \"68:ec:c5:09:2e:87\"\
,\n \"src_mac\": \"8c:3b:ad:e0:47:40\", \n \"vlan\"\
: 1, \n \"src_ip\": \"34.224.147.117\", \n \"dst_ip\"\
: \"192.168.1.55\",\n \"dst_port\": 51635, \n \"src_port\"\
: 443,\n \"proto\": \"TCP\", \n \"ap_mac\": \"d4:20:b0:81:99:2e\"\
,\n \"direction\": \"tx\", \n \"timestamp\": 1652247615,\
\ \n \"length\": 159.0, \n \"interface\": \"wired\"\
,\n \"info\": \"1652247616.007409 IP ec2-34-224-147-117.compute-1.amazonaws.com.https\
\ > ip-192-168-1-55.ec2.internal.51635: Flags [P.], seq 2192123968:2192124057,\
\ ack 4035166782, win 12, options [nop,nop,TS val 597467050 ecr 740580660],\
\ length 89\\\\n\",\n }, \n \"pcap_raw\": \"1MOyoQIABAAAAAAAAAAAAP//AAABAAAAQEx7YhMzAACfAAAAnwAAAGjsxQkuh4w7reBHQIEAAAEIAEUAAI1bLEAAKAZ/CiLgk3XAqAE3AbvJs4KpKEDwg8I+gBgADFf9AAABAQgKI5yfqiwkXTQXAwMAVKY5JopoKQrVEn0/3ld4YntctGEH/rTZuwtCvzSncFw71QJveJi9uxHs57KC8w9Apph3YvXJrmWg7M37+o+YV0KH/xmr626s5Bkhb3QhKOu+NoNEmA==\"\
\n\n }\n}\n```\n\n#### Stop Response (Wired/Wireless)\n```json\n{\n \
\ \"event\": \"data\"\n \"channel\": \"/sites/67970e46-4e12-11e6-9188-0242ac110007/pcaps\"\
\n \"data\": {\n \"capture_id\": \"a2f7374d-6a70-41fd-8a3f-71e42573baaf\"\
, \n \"lost_messages\": 0,\n \"pcap_dict\": null\n }\n}\n```"
operationId: startSitePacketCapture
requestBody:
content:
application/json:
examples:
AP-New-Wireless-Client-Associations-Packet-Capture:
value:
client_mac: 60a10a773412
duration: 600
includes_mcast: false
max_pkt_len: 128
num_packets: 100
type: new_assoc
AP-Radiotap-Packet-Capture:
value:
duration: 600
max_pkt_len: 68
num_packets: 100
type: radiotap
AP-Radiotap-Packet-Capture-and-Wired-Packet-Capture:
value:
ap_mac: string
client_mac: string
duration: 600
includes_mcast: true
max_pkt_len: 128
num_packets: 1024
ssid: string
type: client
AP-Scan-radio-Packet-Capture:
value:
ap_mac: null
band: '24'
bandwidth: 20
channel: 1
client_mac: 38f9d3972ff1
duration: 600
format: stream
max_pkt_len: 68
num_packets: 100
tcpdump_expression: tcp port 80
type: scan
AP-Wired-Packet-Capture:
value:
duration: 600
max_pkt_len: 68
num_packets: 100
tcpdump_expression: tcp port 80
type: wired
AP-Wireless-Packet-Capture:
value:
ap_mac: null
band: '24'
duration: 600
max_pkt_len: 128
num_packets: 100
type: wireless
Client-Packet-Capture:
value:
client_mac: 60a10a773412
duration: 300
includes_mcast: false
max_pkt_len: 128
num_packets: 1000
type: client
SSR-Packet-Capture:
value:
duration: 600
format: stream
gateways:
'001122334455':
ports:
ge-0/0/0:
tcpdump_expression: tcp
ge-0/0/1:
tcpdump_expression: port 443
ge-1/0/0:
tcpdump_expression: tcp
ge-1/0/1:
tcpdump_expression: port 443
'001122334466':
ports:
ge-0/0/0:
tcpdump_expression: udp
ge-0/0/1:
tcpdump_expression: port 32768
max_pkt_len: 1500
num_packets: 100
type: gateway
Switch-Packet-Capture:
value:
duration: 600
format: stream
max_pkt_len: 1500
num_packets: 100
switches:
'001122334455':
ports:
ge-0/0/0:
tcpdump_expression: udp
ge-0/0/1: {}
ge-1/0/0: null
ge-1/0/1: {}
'001122334466':
ports:
ge-0/0/0: {}
ge-0/0/1: {}
tcpdump_expression: port 443
type: switch
schema:
$ref: '#/components/schemas/capture_site'
description: Request Body
responses:
'200':
$ref: '#/components/responses/PcapStart'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startSitePacketCapture
tags:
- Utilities PCAPs
/api/v1/sites/{site_id}/pcaps/{pcap_id}:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/pcap_id'
put:
description: Update or add notes to a completed packet capture
operationId: updateSitePacketCapture
requestBody:
content:
application/json:
examples:
Example:
value:
notes: wired pcap test
schema:
$ref: '#/components/schemas/notes'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSitePacketCapture
tags:
- Utilities PCAPs
/api/v1/sites/{site_id}/psks:
get:
description: Get List of Site PSKs
operationId: listSitePsks
parameters:
- in: query
name: ssid
schema:
type: string
- in: query
name: role
schema:
type: string
- $ref: '#/components/parameters/name'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSitePsks
tags:
- Sites Psks
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site PSK
operationId: createSitePsk
requestBody:
content:
application/json:
examples:
example-1:
value:
mac: string
name: string
passphrase: stringst
ssid: string
usage: multi
vlan_id: 1
schema:
$ref: '#/components/schemas/psk'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSitePsk
tags:
- Sites Psks
put:
description: Update multi PSKs
operationId: updateSitePsks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/psks'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSitePsks
tags:
- Sites Psks
/api/v1/sites/{site_id}/psks/import:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'Import PSK from CSV file or JSON
## CSV File Format
```csv
PSK Import CSV File Format:
name,ssid,passphrase,usage,vlan_id,mac
Common,warehouse,foryoureyesonly,single,35,a31425f31278
Justin,reception,visible,multi,1002
```'
operationId: importSitePsks
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/psks'
multipart/form-data:
schema:
$ref: '#/components/schemas/psks_import_file'
responses:
'200':
$ref: '#/components/responses/PsksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: importSitePsks
tags:
- Sites Psks
/api/v1/sites/{site_id}/psks/{psk_id}:
delete:
description: Delete Site PSK
operationId: deleteSitePsk
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSitePsk
tags:
- Sites Psks
get:
description: Get Site PSK Details
operationId: getSitePsk
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSitePsk
tags:
- Sites Psks
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/psk_id'
put:
description: Update Site PSK
operationId: updateSitePsk
requestBody:
content:
application/json:
examples:
example-1:
value:
mac: string
name: string
passphrase: stringst
ssid: string
usage: multi
vlan_id: 1
schema:
$ref: '#/components/schemas/psk'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Psk'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSitePsk
tags:
- Sites Psks
/api/v1/sites/{site_id}/rfdiags:
get:
description: List RF Glass Recording
operationId: getSiteSiteRfdiagRecording
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/RfdiagsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSiteRfdiagRecording
tags:
- Sites Rfdiags
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Start RF Glass Recording
operationId: startSiteRecording
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/rf_diag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Rfdiag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: startSiteRecording
tags:
- Sites Rfdiags
/api/v1/sites/{site_id}/rfdiags/{rfdiag_id}:
delete:
description: Delete Recording
operationId: deleteSiteRfdiagRecording
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteRfdiagRecording
tags:
- Sites Rfdiags
get:
description: Get RF Diage Recording Details
operationId: getSiteRfdiagRecording
responses:
'200':
$ref: '#/components/responses/Rfdiag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRfdiagRecording
tags:
- Sites Rfdiags
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rfdiag_id'
put:
description: Update Recording
operationId: updateSiteRfdiagRecording
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/rf_diag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Rfdiag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteRfdiagRecording
tags:
- Sites Rfdiags
/api/v1/sites/{site_id}/rfdiags/{rfdiag_id}/download:
get:
description: 'Download Recording
Download raw_events blob'
operationId: downloadSiteRfdiagRecording
responses:
'200':
$ref: '#/components/responses/File'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: downloadSiteRfdiagRecording
tags:
- Sites Rfdiags
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rfdiag_id'
/api/v1/sites/{site_id}/rfdiags/{rfdiag_id}/stop:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rfdiag_id'
post:
description: If the recording session is active for the given rfdiag_id, it
will finish the recording. duration and end_time will be updated to reflect
the correct values.
operationId: stopSiteRfdiagRecording
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: stopSiteRfdiagRecording
tags:
- Sites Rfdiags
/api/v1/sites/{site_id}/rftemplates/derived:
get:
description: Get derived RF Templates for Site
operationId: getSiteRfTemplateDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
type: boolean
responses:
'200':
$ref: '#/components/responses/Rftemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRfTemplateDerived
tags:
- Sites RF Templates
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/rogues/events/count:
get:
description: Count Rogue Events
operationId: countSiteRogueEvents
parameters:
- in: query
name: distinct
schema:
default: bssid
enum:
- bssid
- ssid
- ap
- type
title: Site Rogue Events count distinct
type: string
- $ref: '#/components/parameters/rogue_type'
- description: ssid of the network detected as threat
in: query
name: ssid
schema:
type: string
- description: bssid of the network detected as threat
in: query
name: bssid
schema:
type: string
- description: mac of the device that had strongest signal strength for ssid/bssid
pair
in: query
name: ap_mac
schema:
type: string
- description: channel over which ap_mac heard ssid/bssid pair
in: query
name: channel
schema:
type: string
- description: whether the reporting AP see a wireless client (on LAN) connecting
to it
in: query
name: seen_on_lan
schema:
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteRogueEvents
tags:
- Sites Rogues
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/rogues/events/search:
get:
description: Search Rogue Events
operationId: searchSiteRogueEvents
parameters:
- $ref: '#/components/parameters/rogue_type'
- description: ssid of the network detected as threat
in: query
name: ssid
schema:
type: string
- description: bssid of the network detected as threat
in: query
name: bssid
schema:
type: string
- description: mac of the device that had strongest signal strength for ssid/bssid
pair
in: query
name: ap_mac
schema:
type: string
- description: channel over which ap_mac heard ssid/bssid pair
in: query
name: channel
schema:
type: integer
- description: whether the reporting AP see a wireless client (on LAN) connecting
to it
in: query
name: seen_on_lan
schema:
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/RogueEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteRogueEvents
tags:
- Sites Rogues
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/rogues/{rogue_bssid}:
get:
description: Get Rogue AP Details
operationId: getSiteRogueAP
responses:
'200':
$ref: '#/components/responses/RogueDetails'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRogueAP
tags:
- Sites Rogues
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rogue_bssid'
/api/v1/sites/{site_id}/rogues/{rogue_bssid}/deauth_clients:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rogue_bssid'
post:
description: Send Deauth frame to clients connected to a Rogue AP
operationId: deauthSiteWirelessClientsConnectedToARogue
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deauthSiteWirelessClientsConnectedToARogue
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/rrm/current:
get:
description: Get Current Channel Planning
operationId: getSiteCurrentChannelPlanning
responses:
'200':
$ref: '#/components/responses/Rrm'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteCurrentChannelPlanning
tags:
- Sites RRM
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/rrm/current/devices/{device_id}/band/{band}:
get:
description: Get Current RRM Considerations for an AP on a Specific Band
operationId: getSiteCurrentRrmConsiderations
responses:
'200':
$ref: '#/components/responses/RrmConsideration'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteCurrentRrmConsiderations
tags:
- Sites RRM
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
- description: 802.11 Band
in: path
name: band
required: true
schema:
$ref: '#/components/schemas/dot11_band'
/api/v1/sites/{site_id}/rrm/current/devices/{device_id}/neighbors:
get:
description: Get Current RRM observed neighbors
operationId: getSiteCurrentRrmNeighbors
parameters:
- description: 802.11 Band
in: query
name: band
required: true
schema:
$ref: '#/components/schemas/dot11_band'
responses:
'200':
$ref: '#/components/responses/RrmNeighbors'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteCurrentRrmNeighbors
tags:
- Sites RRM
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
- description: 802.11 Band
in: query
name: band
required: true
schema:
$ref: '#/components/schemas/dot11_band'
/api/v1/sites/{site_id}/rrm/events:
get:
description: Get Site RRM Events
operationId: getSiteRrmEvents
parameters:
- $ref: '#/components/parameters/dot11_band'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/RrmEvents'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRrmEvents
tags:
- Sites RRM
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/rrm/optimize:
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Optimize Site RRM
operationId: optimizeSiteRrm
requestBody:
content:
application/json:
examples:
example-1:
value:
bands:
- '24'
- '5'
- '6'
schema:
$ref: '#/components/schemas/utils_rrm_optimize'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: optimizeSiteRrm
tags:
- Utilities Wi-Fi
/api/v1/sites/{site_id}/rssizones:
get:
description: Get List of Site RSSI Zone (RSSI-based)
operationId: listSiteRssiZones
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/rssi_zones'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteRssiZones
tags:
- Sites RSSI Zones
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create RSSI Zone
operationId: createSiteRssiZone
requestBody:
content:
application/json:
examples:
example-1:
value:
devices:
- device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rssi: 0
name: string
schema:
$ref: '#/components/schemas/rssi_zone'
description: Request Body
responses:
'200':
content:
application/json:
examples:
example-1:
value:
created_time: 0
devices:
- device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rssi: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/rssi_zone'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteRssiZone
tags:
- Sites RSSI Zones
/api/v1/sites/{site_id}/rssizones/{rssizone_id}:
delete:
description: Delete Site RSSI Zone
operationId: deleteSiteRssiZone
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteRssiZone
tags:
- Sites RSSI Zones
get:
description: Get Site RSSI Zone details
operationId: getSiteRssiZone
responses:
'200':
$ref: '#/components/responses/RssizonesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteRssiZone
tags:
- Sites RSSI Zones
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/rssizone_id'
put:
description: Update Site RSSI Zone
operationId: updateSiteRssiZone
requestBody:
content:
application/json:
examples:
example-1:
value:
devices:
- device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rssi: 0
name: string
schema:
$ref: '#/components/schemas/rssi_zone'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Rssizone'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteRssiZone
tags:
- Sites RSSI Zones
/api/v1/sites/{site_id}/servicepolicies/derived:
get:
description: Retrieves the list of Service Policies available for the Site
operationId: listSiteServicePoliciesDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
default: false
type: boolean
responses:
'200':
$ref: '#/components/responses/ServicePoliciesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteServicePoliciesDerived
tags:
- Sites Service Policies
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/services/derived:
get:
description: Retrieves the list of Services available for the Site
operationId: listSiteServicesDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
default: false
type: boolean
responses:
'200':
$ref: '#/components/responses/ServicesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteServicesDerived
tags:
- Sites Services
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/services/events/count:
get:
description: Count Service Path Events
operationId: countSiteServicePathEvents
parameters:
- in: query
name: distinct
schema:
default: type
enum:
- type
- mac
- vpn_name
- vpn_path
- policy
- port_id
- model
- site_id
title: Site Service Events count distinct
type: string
- description: Event type, e.g. GW_SERVICE_PATH_DOWN
in: query
name: type
schema:
type: string
- description: Description of the event including the reason it is triggered
in: query
name: text
schema:
type: string
- description: Peer name
in: query
name: vpn_name
schema:
type: string
- description: Peer path name
in: query
name: vpn_path
schema:
type: string
- description: Service policy associated with that specific path
in: query
name: policy
schema:
type: string
- description: Network interface
in: query
name: port_id
schema:
type: string
- description: Device model
in: query
name: model
schema:
type: string
- description: Device firmware version
in: query
name: version
schema:
type: string
- description: Start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: MAC address
in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteServicePathEvents
tags:
- Sites Services
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/services/events/search:
get:
description: Search Service Path Events
operationId: searchSiteServicePathEvents
parameters:
- description: Event type, e.g. GW_SERVICE_PATH_DOWN
in: query
name: type
schema:
type: string
- description: Description of the event including the reason it is triggered
in: query
name: text
schema:
type: string
- description: Peer name
in: query
name: vpn_name
schema:
type: string
- description: Peer path name
in: query
name: vpn_path
schema:
type: string
- description: Service policy associated with that specific path
in: query
name: policy
schema:
type: string
- description: Network interface
in: query
name: port_id
schema:
type: string
- description: Device model
in: query
name: model
schema:
type: string
- description: Device firmware version
in: query
name: version
schema:
type: string
- description: Start time, in epoch
in: query
name: timestamp
schema:
type: number
- description: MAC address
in: query
name: mac
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/ServicePathEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteServicePathEvents
tags:
- Sites Services
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/setting:
get:
description: Get Site Settings
operationId: getSiteSetting
responses:
'200':
$ref: '#/components/responses/SiteSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSetting
tags:
- Sites Setting
parameters:
- $ref: '#/components/parameters/site_id'
put:
description: Update Site Settings
operationId: updateSiteSettings
requestBody:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
analytic:
enabled: false
ap_matching:
enabled: true
rules:
- eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
ap_port_config:
model_specific:
AP32:
eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
auto_placement:
orientation: 45
x: 30
y: 60
auto_preemption:
day_of_week: any
enabled: false
time_of_day: any
auto_upgrade:
custom_versions:
AP21: stable
AP41: 0.1.5135
AP61: 0.1.7215
day_of_week: sun
enabled: false
time_of_day: '12:00'
version: beta
blacklist_url: https://papi.s3.amazonaws.com/blacklist/xxx...
ble_config:
beacon_enabled: false
beacon_rate: 3
beacon_rate_mode: custom
beam_disabled:
- 1
- 3
- 6
custom_ble_packet_enabled: false
custom_ble_packet_frame: 0x........
custom_ble_packet_freq_msec: 300
eddystone_uid_adv_power: -65
eddystone_uid_beams: 2-4,7
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_adv_power: -65
eddystone_url_beams: 2-4,7
eddystone_url_enabled: true
eddystone_url_freq_msec: 1000
eddystone_url_url: https://www.abc.com
ibeacon_adv_power: -65
ibeacon_beams: 2-4,7
ibeacon_enabled: false
ibeacon_freq_msec: 0
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
power: 10
power_mode: custom
config_auto_revert: false
created_time: 0
device_updown_threshold: 0
dns_servers:
- string
dns_suffix:
- string
engagement:
dwell_tag_names:
bounce: Bounce
engaged: Engaged
passerby: Passer By
stationed: Stationed
dwell_tags:
bounce: 'null'
engaged: 300-14400
passerby: 'null'
stationed: 14400-43200
hours:
fri: 09:00-17:00
mon: 09:00-17:00
sat: 09:00-12:00
sun: 09:00-12:00
thu: 09:00-17:00
tue: 09:00-17:00
wed: 09:00-17:00
max_dwell: 43200
min_dwell: 0
evpn_options:
auto_loopback_subnet: 100.101.0.0/16
auto_router_id_subnet: 100.100.0.0/24
core_as_border: false
overlay:
as: 65000
per_vlan_vga_v4_mac: false
routed_at: edge
underlay:
as_base: 65001
routed_id_prefix: /24
subnet: 10.255.240.0/20
flags:
property1: string
property2: string
for_site: true
gateway_additional_config_cmds:
- set snmp community public
gateway_mgmt:
admin_sshkeys:
- string
app_probing:
apps:
- string
custom_apps:
- app_type: string
hostname:
- string
name: string
protocol: http
enabled: true
app_usage: true
auto_signature_update:
day_of_week: any
enable: true
time_of_day: string
config_revert_timer: 10
probe_hosts:
- string
root_password: string
security_log_source_address: string
security_log_source_interface: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f10
led:
brightness: 255
enabled: true
modified_time: 0
mxedge:
mist_das:
coa_servers:
- disable_event_timestamp_check: false
enabled: true
host: string
port: 3799
secret: string
enabled: false
radsec:
acct_servers:
- host: string
port: 1813
secret: string
ssids:
- string
auth_servers:
- host: string
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: string
keywrap_mack: string
port: 1812
secret: string
ssids:
- string
enabled: true
match_ssid: true
proxy_hosts:
- string
server_selection: ordered
source: any
mxedge_mgmt:
mist_password: MIST_PASSWORD
root_password: ROOT_PASSWORD
mxtunnels:
ap_subnets:
- 0.0.0.0/0
auto_preemption:
day_of_week: mon
enabled: false
time_of_day: '12:00'
clusters:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
created_time: 0
enabled: true
for_site: true
hello_interval: 60
hello_retries: 3
hosts:
- string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f18
modified_time: 0
mtu: 1100
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
protocol: udp
radsec:
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
enabled: false
use_mxedge: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
vlan_ids:
- 3
- 5
- 6
- 7-9
networks:
property1:
dns:
- string
dns_suffix:
- string
gateway: string
ospf_interface_type: string
subnet: string
vlan_id: 0
zone: string
property2:
dns:
- string
dns_suffix:
- string
gateway: string
ospf_interface_type: string
subnet: string
vlan_id: 0
zone: string
ntp_servers:
- string
occupancy:
assets_enabled: false
clients_enabled: true
min_duration: 3000
sdkclients_enabled: false
unconnected_clients_enabled: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
ospf_areas:
property1:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
property2:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
persist_config_on_device: false
port_mirroring:
property1:
egress_port_ids:
- ge-0/0/3
ingress_networks:
- corp
ingress_port_ids:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
property2:
egress_port_ids:
- ge-0/0/3
ingress_networks:
- corp
ingress_port_ids:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
proxy:
url: http://proxy.internal:8080/
radio_config:
allow_rrm_disable: false
ant_gain_24: 4
ant_gain_5: 5
ant_gain_6: 5
antenna_mode: default
band_24:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_24_usage: '5'
band_5:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_6:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
indoor_use: false
scanning_enabled: true
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 20
size: 5m
console:
contents:
- facility: config
severity: warning
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: config
severity: warning
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: default
send_to_all_servers: false
servers:
- facility: config
host: syslogd.internal
port: 514
protocol: udp
severity: info
tag: ''
time_format: millisecond
users:
- contents:
- facility: config
severity: warning
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
report_gatt: false
rogue:
enabled: false
honeypot_enabled: false
min_duration: 10
min_rssi: -80
whitelisted_bssids:
- NeighborSSID
whitelisted_ssids:
- cc:8e:6f:d4:bf:16
- cc-8e-6f-d4-bf-16
- cc-73-*
- cc:82:*
rtsa:
app_waking: false
disable_dead_reckoning: true
disable_pressure_sensor: false
enabled: true
track_asset: false
simple_alert:
arp_failure:
client_count: 10
duration: 20
incident_count: 10
dhcp_failure:
client_count: 10
duration: 10
incident_count: 20
dns_failure:
client_count: 20
duration: 10
incident_count: 30
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
skyatp:
enabled: true
send_ip_mac_mapping: true
srx_app:
enabled: false
ssh_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host
ssr:
conductor_hosts:
- '"1.1.1.1", "2.2.2.2"'
disable_stats: true
status_portal:
enabled: false
hostnames:
- my.misty.com
switch_matching:
additional_config_cmds:
- set snmp community public
enabled: false
rules:
- {}
switch_mgmt:
ap_affinity_threshold: 10
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
protect_re:
allowed_services:
- '["snmp", "icmp"]'
custom:
- port_range: string
protocol: any
subnets:
- string
enabled: true
trusted_hosts:
- '["10.242.3.0/24"]'
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
use_mxedge_proxy: true
track_anonymous_devices: false
tunterm_monitoring:
- host: 10.2.8.15
port: 80
protocol: tcp
timeout: 300
tunterm_monitoring_disabled: false
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
vna:
enabled: false
vrf_instances:
guest:
extra_routes:
0.0.0.0/0:
via: 192.168.31.1
networks:
- guest
vrrp_groups:
property1:
auth_key: auth-key-1
auth_password: string
auth_type: md5
networks:
data:
ip: 10.182.96.1
mgmt:
ip: 10.182.104.1
v10:
ip: 10.182.104.129
wap:
ip: 10.182.102.1
property2:
auth_key: auth-key-1
auth_password: string
auth_type: md5
networks:
data:
ip: 10.182.96.1
mgmt:
ip: 10.182.104.1
v10:
ip: 10.182.104.129
wap:
ip: 10.182.102.1
vs_instances:
property1:
networks:
- guest
property2:
networks:
- guest
wan_vna:
enabled: false
watched_station_url: https://papi.s3.amazonaws.com/watched_station/xxx...
whitelist_url: https://papi.s3.amazonaws.com/whitelist/xxx...
wids:
repeated_auth_failures:
duration: 60
threshold: 0
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: false
enable_arp_spoof_check: false
enable_shared_radio_scanning: true
enabled: true
locate_connected: true
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: false
mesh_enabled: false
mesh_psk: string
mesh_ssid: string
proxy_arp: default
wired_vna:
enabled: false
zone_occupancy_alert:
email_notifiers:
- foo@juniper.net
- bar@juniper.net
enabled: false
threshold: 5
schema:
$ref: '#/components/schemas/site_setting'
description: Request Body
responses:
'200':
$ref: '#/components/responses/SiteSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteSettings
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/blacklist:
delete:
description: Delete Site Blacklist Station Clients
operationId: deleteSiteWirelessClientsBlocklist
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWirelessClientsBlocklist
tags:
- Sites Setting
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'This endpoint is to provide list of client macs for annotation
blacklist.
Retrieve the current clients list `blacklist_url` under Site:Setting'
operationId: createSiteWirelessClientsBlocklist
requestBody:
content:
application/json:
examples:
example-1:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWirelessClientsBlocklist
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/jse/info:
get:
description: Retrieves the list of JSE orgs associated with the account
operationId: getSiteJseInfo
responses:
'200':
$ref: '#/components/responses/JseInfo'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteJseInfo
tags:
- Sites JSE
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/setting/watched_station:
delete:
description: Delete Site Watched Station Clients
operationId: deleteSiteWatchedStations
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWatchedStations
tags:
- Sites Setting
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'This endpoint is to provide list of client macs for annotation
as watched station.
Retrieve the current clients list from `watched_station_url` under Site:Setting'
operationId: createSiteWatchedStations
requestBody:
content:
application/json:
examples:
example-1:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWatchedStations
tags:
- Sites Setting
/api/v1/sites/{site_id}/setting/whitelist:
delete:
description: Delete Site Whitelist Station Clients
operationId: deleteSiteWirelessClientsAllowlist
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWirelessClientsAllowlist
tags:
- Sites Setting
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: 'This endpoint is to provide list of client macs for annotation
as whitelist.
Retrieve the current clients list from `whitelist_url` under Site:Setting'
operationId: createSiteWirelessClientsAllowlist
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/mac_addresses'
description: Request Body
responses:
'200':
$ref: '#/components/responses/MacsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWirelessClientsAllowlist
tags:
- Sites Setting
/api/v1/sites/{site_id}/sitetemplates/derived:
get:
description: Get derived Site Templates for Site
operationId: getSiteSiteTemplateDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
type: boolean
responses:
'200':
$ref: '#/components/responses/SiteTemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSiteTemplateDerived
tags:
- Sites Site Templates
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/skyatp/events/count:
get:
description: Count by Distinct Attributes of Skyatp Events (WIP)
operationId: countSiteSkyatpEvents
parameters:
- in: query
name: distinct
schema:
default: type
enum:
- type
- mac
- device_mac
- threat_level
title: Site SkyATP Events count distinct
type: string
- description: event type, e.g. cc, fs, mw
in: query
name: type
schema:
type: string
- description: client MAC
in: query
name: mac
schema:
type: string
- description: device MAC
in: query
name: device_mac
schema:
type: string
- description: threat level
in: query
name: threat_level
schema:
type: integer
- $ref: '#/components/parameters/ip'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteSkyatpEvents
tags:
- Sites Skyatp
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/skyatp/events/search:
get:
description: Search Skyatp Events (WIP)
operationId: searchSiteSkyatpEvents
parameters:
- description: event type, e.g. cc, fs, mw
in: query
name: type
schema:
type: string
- description: client MAC
in: query
name: mac
schema:
type: string
- description: device MAC
in: query
name: device_mac
schema:
type: string
- description: threat level
in: query
name: threat_level
schema:
type: integer
- $ref: '#/components/parameters/ip'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SkyAtpEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteSkyatpEvents
tags:
- Sites Skyatp
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/classifier/{classifier}/summary:
get:
description: Get SLE classifier details
operationId: getSiteSleClassifierDetails
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SleClassifierSummary'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleClassifierDetails
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
title: sle_summary_scope
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
- in: path
name: classifier
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/classifiers:
get:
description: Get the list of classifiers for a specific metric
operationId: getSiteSleMetricClassifiers
responses:
'200':
content:
application/json:
examples:
example:
value:
- asymmetry-uplink
- weak-signal
- asymmetry-downlink
schema:
$ref: '#/components/schemas/strings'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleMetricClassifiers
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/histogram:
get:
description: Get the histogram for the SLE metric
operationId: getSiteSleHistogram
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SleHistogram'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleHistogram
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impact-summary:
get:
description: "Get impact summary counts optionally filtered by classifier and\
\ failure type\n \n* Wireless SLE Fields: `wlan`, `device_type`, `device_os`\
\ ,`band`, `ap`, `server`, `mxedge`\n* Wired SLE Fields: `switch`, `client`,\
\ `vlan`, `interface`, `chassis`\n* WAN SLE Fields: `gateway`, `client`, `interface`,\
\ `chassis`, `peer_path`, `gateway_zones`"
operationId: getSiteSleImpactSummary
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: fields
schema:
enum:
- wlan
- device_type
- device_os
- band
- ap
- server
- mxedge
- switch
- client
- vlan
- interface
- chassis
- gateway
- peer_path
- gateway_zones
type: string
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactSummary'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactSummary
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-applications:
get:
description: For WAN SLEs. Get list of impacted interfaces optionally filtered
by classifier and failure type
operationId: getSiteSleImpactedApplications
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedApplications'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedApplications
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- switch
- gateway
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-aps:
get:
description: For Wireless SLEs. Get list of impacted APs optionally filtered
by classifier and failure type
operationId: getSiteSleImpactedAps
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedAps'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedAps
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-chassis:
get:
description: For Wired and WAN SLEs. Get list of impacted interfaces optionally
filtered by classifier and failure type
operationId: getSiteSleImpactedChassis
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedChassis'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedChassis
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- switch
- gateway
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-clients:
get:
description: For Wired SLEs. Get list of impacted interfaces optionally filtered
by classifier and failure type
operationId: getSiteSleImpactedWiredClients
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedClients'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedWiredClients
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- switch
- gateway
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-gateways:
get:
description: For WAN SLEs. Get list of impacted interfaces optionally filtered
by classifier and failure type
operationId: getSiteSleImpactedGateways
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedGateways'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedGateways
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-interfaces:
get:
description: For Wired and WAN SLEs. Get list of impacted interfaces optionally
filtered by classifier and failure type
operationId: getSiteSleImpactedInterfaces
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedInterfaces'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedInterfaces
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- switch
- gateway
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-switches:
get:
description: For Wired SLEs. Get list of impacted switches optionally filtered
by classifier and failure type
operationId: getSiteSleImpactedSwitches
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedSwitches'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedSwitches
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/impacted-users:
get:
description: For Wireless SLEs. Get list of impacted wireless users optionally
filtered by classifier and failure type
operationId: getSiteSleImpactedWirelessClients
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- in: query
name: classifier
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SleImpactedUsers'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleImpactedWirelessClients
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
title: sle_impacted_users_scope
type: string
- in: path
name: scope_id
required: true
schema:
format: uuid
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/summary:
get:
description: ' Get the summary for the SLE metric'
operationId: getSiteSleSummary
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SleSummary'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleSummary
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metric/{metric}/threshold:
get:
description: Get the SLE threshold
operationId: getSiteSleThreshold
responses:
'200':
$ref: '#/components/responses/SleThreshold'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSleThreshold
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
title: sle_threshold_scope
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
- description: values from /api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics
in: path
name: metric
required: true
schema:
type: string
post:
description: Replace the SLE threshold
operationId: replaceSiteSleThreshold
requestBody:
content:
application/json:
examples:
example-1:
value:
maximum: -60
minimum: -90
schema:
$ref: '#/components/schemas/sle_threshold'
responses:
'200':
$ref: '#/components/responses/SleThreshold'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: replaceSiteSleThreshold
tags:
- Sites SLEs
put:
description: Update the SLE threshold
operationId: updateSiteSleThreshold
requestBody:
content:
application/json:
examples:
example-1:
value:
maximum: -60
minimum: -90
schema:
$ref: '#/components/schemas/sle_threshold'
responses:
'200':
$ref: '#/components/responses/SleThreshold'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteSleThreshold
tags:
- Sites SLEs
/api/v1/sites/{site_id}/sle/{scope}/{scope_id}/metrics:
get:
description: Get the list of metrics for the given scope
operationId: getSiteSlesMetrics
responses:
'200':
$ref: '#/components/responses/SiteSleMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSlesMetrics
tags:
- Sites SLEs
parameters:
- $ref: '#/components/parameters/site_id'
- in: path
name: scope
required: true
schema:
enum:
- site
- ap
- switch
- gateway
- client
type: string
- description: '* site_id if `scope`==`site`
* device_id if `scope`==`ap`, `scope`==`switch` or `scope`==`gateway`
* mac if `scope`==`client`'
in: path
name: scope_id
required: true
schema:
type: string
/api/v1/sites/{site_id}/ssr/upgrade/{upgrade_id}:
get:
description: Get Specific Site SSR Upgrade
operationId: getSiteSsrUpgrade
responses:
'200':
$ref: '#/components/responses/SsrUpgradeStatus'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSsrUpgrade
tags:
- Utilities Upgrade
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/upgrade_id'
/api/v1/sites/{site_id}/ssr/{device_id}/upgrade:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
post:
description: Upgrade Site SSR device
operationId: upgradeSiteSsr
requestBody:
content:
application/json:
examples:
example-1:
value:
channel: stable
version: 5.3.1-170-93
schema:
$ref: '#/components/schemas/ssr_upgrade'
responses:
'200':
$ref: '#/components/responses/SsrUpgrade'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: upgradeSiteSsr
tags:
- Utilities Upgrade
/api/v1/sites/{site_id}/stats:
get:
description: Get Site Stats
operationId: getSiteStats
responses:
'200':
content:
application/json:
examples:
example-1:
value:
address: string
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
country_code: string
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
lat: 0
latlng:
lat: 0
lng: 0
lng: 0
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
networktemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
num_ap: 0
num_ap_connected: 0
num_clients: 0
num_devices: 0
num_devices_connected: 0
num_gateway: 0
num_gateway_connected: 0
num_switch: 0
num_switch_connected: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rftemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
timezone: string
tzoffset: 0
schema:
$ref: '#/components/schemas/site_stats'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/apps/count:
get:
description: Count by Distinct Attributes of Applications
operationId: countSiteApps
parameters:
- description: Default for wireless devices is `ap`. Default for wired devices
is `device_mac`
in: query
name: distinct
schema:
enum:
- ap
- wcid
- ssid
- wlan_id app
- device_mac
- src_ip
- port_id
- app
- category
- service
title: Site Apps count distinct
type: string
- description: MAC of the device
in: query
name: device_mac
schema:
type: string
- description: Application name
in: query
name: app
schema:
type: string
- description: If a device is wired or wireless. Default is False.
in: query
name: wired
schema:
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteApps
tags:
- Sites Applications
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/assets:
get:
description: Get List of Site Assets Stats
operationId: listSiteAssetsStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AssetsArrayStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteAssetsStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/assets/asset_id:
get:
description: Get Site Asset Details
operationId: getSiteAssetStats
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AssetStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAssetStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/assets/count:
get:
description: Count Asset by distinct field
operationId: countSiteAssets
parameters:
- in: query
name: distinct
schema:
default: map_id
enum:
- mac
- map_id
- ibeacon_uuid
- ibeacon_major
- ibeacon_minor
- eddystone_uid_namespace
- eddystone_uid_instance
- eddystone_url
- by
- name
- device_name
title: Site Assets count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteAssets
tags:
- Sites Assets
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/assets/search:
get:
description: Assets Search
operationId: searchSiteAssets
parameters:
- in: query
name: mac
schema:
type: string
- in: query
name: map_id
schema:
format: uuid
type: string
- in: query
name: ibeacon_uuid
schema:
format: uuid
type: string
- in: query
name: ibeacon_major
schema:
type: integer
- in: query
name: ibeacon_minor
schema:
type: integer
- in: query
name: eddystone_uid_namespace
schema:
type: string
- in: query
name: eddystone_uid_instance
schema:
type: string
- in: query
name: eddystone_url
schema:
type: string
- in: query
name: device_name
schema:
type: string
- in: query
name: by
schema:
type: string
- in: query
name: name
schema:
type: string
- in: query
name: ap_mac
schema:
type: string
- in: query
name: beam
schema:
type: string
- in: query
name: rssi
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/AssetsArrayStatsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteAssets
tags:
- Sites Assets
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/beacons:
get:
description: Get List of Site Beacons Stats
operationId: listSiteBeaconsStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/beacon_stats'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteBeaconsStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/bgp_peers/count:
get:
description: Count BGP Stats
operationId: countSiteBgpStats
parameters:
- in: query
name: state
schema:
type: string
- in: query
name: distinct
schema:
title: Site BGP Peers count distinct
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteBgpStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/bgp_peers/search:
get:
description: Search BGP Stats
operationId: searchSiteBgpStats
responses:
'200':
$ref: '#/components/responses/BgpStatsArraySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteBgpStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/calls/client/{client_mac}/troubleshoot:
get:
description: Troubleshoot a call
operationId: troubleshootSiteCall
parameters:
- description: meeting_id
in: query
name: meeting_id
required: true
schema:
type: string
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Third party app name
in: query
name: app
schema:
example: zoom
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/CallTroubleshoot'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: troubleshootSiteCall
tags:
- Sites Calls
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
/api/v1/sites/{site_id}/stats/calls/count:
get:
description: Count by Distinct Attributes of Calls
operationId: countSiteCalls
parameters:
- in: query
name: distrinct
schema:
default: mac
enum:
- mac
type: string
- description: feedback rating (e.g. "rating=1" or "rating=1,2")
in: query
name: rating
schema:
maximum: 5
minimum: 1
type: integer
- in: query
name: app
schema:
type: string
- in: query
name: start
schema:
type: string
- in: query
name: end
schema:
type: string
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteCalls
tags:
- Sites Calls
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/calls/search:
get:
description: Search Calls
operationId: searchSiteCalls
parameters:
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Third party app name
in: query
name: app
schema:
example: zoom
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/CallStatsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteCalls
tags:
- Sites Calls
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/calls/troubleshoot:
get:
description: Summary of calls troubleshoot by site
operationId: listSiteTroubleshootCalls
parameters:
- description: meeting_id
in: query
name: meeting_id
required: true
schema:
type: string
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Third party app name
in: query
name: app
schema:
example: zoom
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/CallTroubleshoot'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteTroubleshootCalls
tags:
- Sites Calls
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
/api/v1/sites/{site_id}/stats/clients:
get:
description: Get List of Site All Clients Stats Details
operationId: listSiteWirelessClientsStats
parameters:
- in: query
name: wired
schema:
default: false
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/client_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWirelessClientsStats
tags:
- Sites Clients Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/clients/{client_mac}:
get:
description: Get Site Client Stats Details
operationId: getSiteWirelessClientStats
parameters:
- in: query
name: wired
schema:
default: false
type: boolean
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/client_stats'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWirelessClientStats
tags:
- Sites Clients Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/client_mac'
/api/v1/sites/{site_id}/stats/devices:
get:
description: Get List of Site Devices Stats
operationId: listSiteDevicesStats
parameters:
- in: query
name: type
schema:
$ref: '#/components/schemas/device_type_with_all'
- in: query
name: status
schema:
default: all
enum:
- all
- connected
- disconnected
title: stat_device_status_filter
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/DevicesArrayStatsSite'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteDevicesStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/devices/{device_id}:
get:
description: Get Site Device Stats Details
operationId: getSiteDeviceStats
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/device_stats'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDeviceStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
/api/v1/sites/{site_id}/stats/devices/{device_id}/clients:
get:
description: Get wireless client stat by Device
operationId: getSiteAllClientsStatsByDevice
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/client_wireless_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAllClientsStatsByDevice
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/device_id'
/api/v1/sites/{site_id}/stats/discovered_assets:
get:
description: "Get List of Site Discovered BLE Assets that doesn\u2019t match\
\ any of the Asset / Assetfilters"
operationId: listSiteDiscoveredAssets
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/asset_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteDiscoveredAssets
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/discovered_switch_metrics/search:
get:
description: Search Discovered Switch Metrics
operationId: searchSiteDiscoveredSwitchesMetrics
parameters:
- description: metric scope
in: query
name: scope
schema:
default: site
enum:
- site
- switch
type: string
- description: metric type
in: query
name: type
schema:
enum:
- inactive_wired_vlans
- switch_ap_affinity
- poe_compliance
- version_compliance
title: Discovered Switch Type
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DiscoveredSwitchMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDiscoveredSwitchesMetrics
tags:
- Sites Discovered Switches Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/discovered_switches/count:
get:
description: Count Discovered Switches
operationId: countSiteDiscoveredSwitches
parameters:
- in: query
name: distinct
schema:
default: system_name
enum:
- system_name
- version
- model
- mgmt_addr
title: Site Discovered Switches count distinct
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteDiscoveredSwitches
tags:
- Sites Discovered Switches Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/discovered_switches/metrics:
get:
description: Discovered switches related metrics, lists related switch system
names & details if not compliant
operationId: getSiteDiscoveredSwitchesMetrics
parameters:
- description: 'configurable # ap per switch threshold, default 12'
in: query
name: threshold
schema:
type: string
- description: system name for switch level metrics, optional
in: query
name: system_name
schema:
type: string
responses:
'200':
$ref: '#/components/responses/DiscoveredSwitchesMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDiscoveredSwitchesMetrics
tags:
- Sites Discovered Switches Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/discovered_switches/search:
get:
description: Search Discovered Switches
operationId: searchSiteDiscoveredSwitches
parameters:
- in: query
name: adopted
schema:
type: boolean
- in: query
name: system_name
schema:
type: string
- in: query
name: hostname
schema:
type: string
- in: query
name: vendor
schema:
type: string
- in: query
name: model
schema:
type: string
- in: query
name: version
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/DiscoveredSwitches'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteDiscoveredSwitches
tags:
- Sites Discovered Switches Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/filtered_assets:
get:
description: Get a list of BLE beacons that matches Asset or AssetFilter
operationId: getSiteAssetsOfInterest
parameters:
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/AssetOfInterestArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteAssetsOfInterest
tags:
- Sites Assets
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/gateways/metrics:
get:
description: Get Site Gateway Metrics
operationId: getSiteGatewayMetrics
responses:
'200':
$ref: '#/components/responses/GatewayMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteGatewayMetrics
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/maps/{map_id}/clients:
get:
description: Get Site Clients Stats By Map
operationId: getSiteWirelessClientsStatsByMap
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/client_wireless_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWirelessClientsStatsByMap
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
/api/v1/sites/{site_id}/stats/maps/{map_id}/discovered_assets:
get:
description: "Get a list of BLE beacons that we discovered (whether they\u2019\
re defined as assets or not)"
operationId: getSiteDiscoveredAssetByMap
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/asset_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteDiscoveredAssetByMap
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
/api/v1/sites/{site_id}/stats/maps/{map_id}/sdkclients:
get:
description: Get SdkClient Stats By Map
operationId: getSiteSdkStatsByMap
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/sdkclient_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSdkStatsByMap
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
/api/v1/sites/{site_id}/stats/maps/{map_id}/unconnected_clients:
get:
description: Get List of Site Unconnected Client Location
operationId: listSiteUnconnectedClientStats
responses:
'200':
content:
application/json:
examples:
example-1:
value:
- ap_mac: 5c5b350e0410
last_seen: 1428939600
mac: 5684dae9ac8b
manufacture: Apple
map_id: ea77be98-ab51-4ff8-a863-ac3c8e1b1c3a
rssi: -75
x: 60
y: 80
schema:
$ref: '#/components/schemas/unconnected_client_stats_array'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteUnconnectedClientStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/map_id'
/api/v1/sites/{site_id}/stats/mxedges:
get:
description: Get List of Site MxEdges Stats
operationId: listSiteMxEdgesStats
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/MxedgeStatsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteMxEdgesStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/mxedges/{mxedge_id}:
get:
description: Get One Site MxEdge Stats
operationId: getSiteMxEdgeStats
parameters:
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/MxedgeStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteMxEdgeStats
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/mxedge_id'
/api/v1/sites/{site_id}/stats/ports/count:
get:
description: Count by Distinct Attributes of Switch/Gateway Ports
operationId: countSiteSwOrGwPorts
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- port_id
- port_mac
- full_duplex
- mac
- neighbor_mac
- neighbor_port_desc
- neighbor_system_name
- poe_disabled
- poe_mode
- poe_on
- speed
- up
title: Site Ports count distinct
type: string
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: if `up`==`true` && has Authenticator role
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteSwOrGwPorts
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/ports/search:
get:
description: Search Switch / Gateway Ports
operationId: searchSiteSwOrGwPorts
parameters:
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: device type
in: query
name: device_type
schema:
enum:
- ap
- ble
- switch
- gateway
- mxedge
- nac
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Output errors
in: query
name: tx_errors
schema:
type: integer
- description: Input errors
in: query
name: rx_errors
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: Limit on number of dynamically learned macs
in: query
name: mac_limit
schema:
type: integer
- description: Number of mac addresses in the forwarding table
in: query
name: mac_count
schema:
type: integer
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- description: indicates if interface is active/inactive
in: query
name: active
schema:
type: boolean
- description: Last sampled jitter of the interface
in: query
name: jitter
schema:
type: number
- description: Last sampled loss of the interface
in: query
name: loss
schema:
type: number
- description: Last sampled latency of the interface
in: query
name: latency
schema:
type: number
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: Optic Slot Partnumber, Check for null/empty
in: query
name: xcvr_part_number
schema:
type: string
- description: if `up`==`true` && has Authenticator role
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- description: LTE IMSI value, Check for null/empty
in: query
name: lte_imsi
schema:
type: string
- description: LTE ICCID value, Check for null/empty
in: query
name: lte_iccid
schema:
type: string
- description: LTE IMEI value, Check for null/empty
in: query
name: lte_imei
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SwitchPortsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteSwOrGwPorts
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/sdkclients/{sdkclient_id}:
get:
description: Get Detail Stats of a SdkClient
operationId: getSiteSdkStats
responses:
'200':
content:
application/json:
examples:
example-1:
value:
id: de87bf9d-183f-e383-cc68-6ba43947d403
last_seen: 1428939600
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
name: John's iPhone
network_connection:
mac: c3-b6-e5-af-41-15
rssi: -75
signal_level: 3
type: WiFi
uuid: ada72f8f-1643-e5c6-94db-f2a5636f1a64
vbeacons:
- id: d379d29d-24b4-96c5-5dd4-6f2a2dc5aaeb
since: 1428939300
x: 60
y: 80
zones:
- id: 8ac84899-32db-6327-334c-9b6d58544cfe
since: 1428939600
schema:
$ref: '#/components/schemas/sdkclient_wireless_stats'
description: OK
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSdkStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/sdkclient_id'
/api/v1/sites/{site_id}/stats/switch_ports/count:
get:
description: Count by Distinct Attributes of Switch/Gateway Ports
operationId: countSiteSwitchPorts
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- port_id
- port_mac
- full_duplex
- mac
- neighbor_mac
- neighbor_port_desc
- neighbor_system_name
- poe_disabled
- poe_mode
- poe_on
- speed
- up
title: Site Switch Ports count distinct
type: string
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: if `up`==`true`
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteSwitchPorts
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/switch_ports/search:
get:
description: Search Switch / Gateway Ports
operationId: searchSiteSwitchPorts
parameters:
- description: indicates full or half duplex
in: query
name: full_duplex
schema:
type: boolean
- description: device identifier
in: query
name: mac
schema:
type: string
- description: Chassis identifier of the chassis type listed
in: query
name: neighbor_mac
schema:
type: string
- description: "Description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
in: query
name: neighbor_port_desc
schema:
type: string
- description: "Name supplied by the system on the interface E.g. neighbor system\
\ name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
in: query
name: neighbor_system_name
schema:
type: string
- description: is the POE configured not be disabled.
in: query
name: poe_disabled
schema:
type: boolean
- description: "poe mode depending on class E.g. \u201C802.3at\u201D"
in: query
name: poe_mode
schema:
type: string
- description: is the device attached to POE
in: query
name: poe_on
schema:
type: boolean
- description: interface name
in: query
name: port_id
schema:
type: string
- description: interface mac address
in: query
name: port_mac
schema:
type: string
- description: Amount of power being used by the interface at the time the command
is executed. Unit in watts.
in: query
name: power_draw
schema:
type: number
- description: Output packets
in: query
name: tx_pkts
schema:
type: integer
- description: Input packets
in: query
name: rx_pkts
schema:
type: integer
- description: Input bytes
in: query
name: rx_bytes
schema:
type: integer
- description: Output rate
in: query
name: tx_bps
schema:
type: integer
- description: Input rate
in: query
name: rx_bps
schema:
type: integer
- description: Multicast output packets
in: query
name: tx_mcast_pkts
schema:
type: integer
- description: Broadcast output packets
in: query
name: tx_bcast_pkts
schema:
type: integer
- description: Multicast input packets
in: query
name: rx_mcast_pkts
schema:
type: integer
- description: Broadcast input packets
in: query
name: rx_bcast_pkts
schema:
type: integer
- description: port speed
in: query
name: speed
schema:
type: integer
- description: if `up`==`true`
in: query
name: stp_state
schema:
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
- description: if `up`==`true`
in: query
name: stp_role
schema:
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
- description: if `up`==`true` && has Authenticator role
in: query
name: auth_state
schema:
enum:
- init
- authenticated
- authenticating
- held
type: string
- description: indicates if interface is up
in: query
name: up
schema:
type: boolean
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/SwitchPortsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteSwitchPorts
tags:
- Sites Devices Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/switches/metrics:
get:
description: Get version compliance metrics for managed or monitored switches
operationId: getSiteSwitchesMetrics
parameters:
- in: query
name: type
schema:
enum:
- active_ports_summary
title: Switch Metric Type
type: string
- in: query
name: scope
schema:
enum:
- site
- switch
title: Switch Metric Scope
type: string
- description: switch mac, used only with metric `type`==`active_ports_summary`
in: query
name: switch_mac
schema:
type: string
responses:
'200':
$ref: '#/components/responses/SwitchMetrics'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSwitchesMetrics
tags:
- Sites Devices - Wired
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/wxrules:
get:
description: Get Wxlan Rule usage
operationId: getSiteWxRulesUsage
responses:
'200':
$ref: '#/components/responses/WxruleStatsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWxRulesUsage
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/zones:
get:
description: Get List of Site Zones Stats
operationId: listSiteZonesStats
parameters:
- example: 00000000-0000-0000-0000-000000000000
in: query
name: map_id
schema:
type: string
responses:
'200':
$ref: '#/components/responses/ZoneStatsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteZonesStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/stats/{zone_type}/{zone_id}:
get:
description: Get Detail Zone Stats
operationId: getSiteZoneStats
responses:
'200':
$ref: '#/components/responses/ZoneStats'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteZoneStats
tags:
- Sites Stats
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/zone_type'
- $ref: '#/components/parameters/zone_id'
/api/v1/sites/{site_id}/subscriptions:
delete:
description: Unsubscribe to Site Alarms
operationId: UnsubscribeSiteAlarms
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: UnsubscribeSiteAlarms
tags:
- Sites Alarms
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Subscribe to Site Alarms
operationId: SubscribeSiteAlarms
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: SubscribeSiteAlarms
tags:
- Sites Alarms
/api/v1/sites/{site_id}/synthetic_test:
get:
description: Get Synthetic Testing Status
operationId: getSiteSyntheticTestStatus
responses:
'200':
$ref: '#/components/responses/SynthetictestStatus'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteSyntheticTestStatus
tags:
- Synthetic Tests
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Trigger Synthetic Testing
operationId: triggerSiteSyntheticTest
requestBody:
content:
application/json:
examples:
Example:
value:
email: test@mist.com
schema:
$ref: '#/components/schemas/synthetic_test'
responses:
'200':
$ref: '#/components/responses/SyntheticTest'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: triggerSiteSyntheticTest
tags:
- Synthetic Tests
/api/v1/sites/{site_id}/synthetic_test/search:
get:
description: Search Site Synthetic Testing
operationId: searchSiteSyntheticTest
responses:
'200':
$ref: '#/components/responses/SynthetictestSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteSyntheticTest
tags:
- Synthetic Tests
parameters:
- $ref: '#/components/parameters/site_id'
- description: Device MAC Address
in: query
name: mac
schema:
type: string
- description: port_id used to run the test (for SSR only)
in: query
name: port_id
schema:
type: string
- description: VLAN ID
in: query
name: vlan_id
schema:
type: string
- description: entity who triggers the test
in: query
name: by
schema:
type: string
- description: test failure reason
in: query
name: reason
schema:
type: string
- description: synthetic test type
in: query
name: type
schema:
$ref: '#/components/schemas/synthetic_test_type'
/api/v1/sites/{site_id}/uisettings:
get:
description: Site UI settings
operationId: listSiteUiSettings
responses:
'200':
$ref: '#/components/responses/UiSettingsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteUiSettings
tags:
- Sites UI Settings
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Site UI settings
operationId: createSiteUiSettings
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 1508823803
defaultScopeId: 67970e46-4e12-11e6-9188-0242ad112847
defaultScopeType: site
defaultTimeRange:
end: 1508828400
endDate: 10/23/2017
interval: 1d
name: This Week
shortName: thisWeek
start: 1508655600
usePreset: true
description: Description of the databoard
for_site: true
id: 3bdcc7e8-c04d-4512-b4fc-093da9057eb0
isCustomDataboard: true
isScopeLinked: true
isTimeRangeLinked: true
modified_time: 0
name: New Databoard
org_id: cc079380-5029-4d4a-9125-858de85731ff
purpose: databoard
site_id: 67970e46-4e12-11e6-9188-0242ad112847
tiles:
- chartBand: 2.4 ghz
chartColor: '#00B4AD'
chartDirection: tx + rx
chartRankBy: string
chartType: timeSeries
colspan: 5
column: 1
hideEmptyRows: true
id: 7a9ab38c-cfc3-483d-b51a-0aec571fadc0
metric:
apiName: client-dhcp-latency
name: New Analysis
row: 1
rowspan: 2
scopeId: e0c767834b4c
scopeType: client
sortedColumns: null
timeRange:
end: 1508823743
endDate: 10/23/2017
interval: 1d
name: Past 7 Days
shortName: 7d
start: 1508223600
usePreset: true
trendType: line
vizType: averageTimeSeriesChart
schema:
$ref: '#/components/schemas/ui_settings'
description: Request Body
responses:
'200':
$ref: '#/components/responses/UiSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteUiSettings
tags:
- Sites UI Settings
/api/v1/sites/{site_id}/uisettings/derived:
get:
description: Get both site UI settings(for_site=true) and org UI settings (for_site=false)
operationId: getSiteUiSettingDerived
responses:
'200':
$ref: '#/components/responses/UiSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteUiSettingDerived
tags:
- Sites UI Settings
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/uisettings/{uisetting_id}:
delete:
description: Site UI settings
operationId: deleteSiteUiSetting
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteUiSetting
tags:
- Sites UI Settings
get:
description: Site UI settings
operationId: getSiteUiSetting
responses:
'200':
$ref: '#/components/responses/UiSettingsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteUiSetting
tags:
- Sites UI Settings
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/uisetting_id'
post:
description: Site UI settings
operationId: updateSiteUiSetting
requestBody:
content:
application/json:
examples:
Example:
value:
created_time: 1508823803
defaultScopeId: 67970e46-4e12-11e6-9188-0242ad112847
defaultScopeType: site
defaultTimeRange:
end: 1508828400
endDate: 10/23/2017
interval: 1d
name: This Week
shortName: thisWeek
start: 1508655600
usePreset: true
description: Description of the databoard
for_site: true
id: 3bdcc7e8-c04d-4512-b4fc-093da9057eb0
isCustomDataboard: true
isScopeLinked: true
isTimeRangeLinked: true
modified_time: 0
name: New Databoard
org_id: cc079380-5029-4d4a-9125-858de85731ff
purpose: databoard
site_id: 67970e46-4e12-11e6-9188-0242ad112847
tiles:
- chartBand: 2.4 ghz
chartColor: '#00B4AD'
chartDirection: tx + rx
chartRankBy: string
chartType: timeSeries
colspan: 5
column: 1
hideEmptyRows: true
id: 7a9ab38c-cfc3-483d-b51a-0aec571fadc0
metric:
apiName: client-dhcp-latency
name: New Analysis
row: 1
rowspan: 2
scopeId: e0c767834b4c
scopeType: client
sortedColumns: null
timeRange:
end: 1508823743
endDate: 10/23/2017
interval: 1d
name: Past 7 Days
shortName: 7d
start: 1508223600
usePreset: true
trendType: line
vizType: averageTimeSeriesChart
schema:
$ref: '#/components/schemas/ui_settings'
description: Request Body
responses:
'200':
$ref: '#/components/responses/UiSettings'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteUiSetting
tags:
- Sites UI Settings
/api/v1/sites/{site_id}/vbeacons:
get:
description: Get List of Site Virtual Beacons
operationId: listSiteVBeacons
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/VBeaconsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteVBeacons
tags:
- Sites vBeacons
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Virtual Beacon
operationId: createSiteVBeacon
requestBody:
content:
application/json:
examples:
example-1:
value:
major: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
message: string
minor: 0
name: string
power: 4
power_mode: default
url: string
uuid: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
wayfinding_nodename: string
x: 0
y: 0
schema:
$ref: '#/components/schemas/vbeacon'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VBeacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteVBeacon
tags:
- Sites vBeacons
/api/v1/sites/{site_id}/vbeacons/{vbeacon_id}:
delete:
description: Delete Site Virtual Beacon
operationId: deleteSiteVBeacon
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteVBeacon
tags:
- Sites vBeacons
get:
description: Get Site Virtual Beacon Details
operationId: getSiteVBeacon
responses:
'200':
$ref: '#/components/responses/VBeacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteVBeacon
tags:
- Sites vBeacons
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/vbeacon_id'
put:
description: Update Site Virtual Beacon
operationId: updateSiteVBeacon
requestBody:
content:
application/json:
examples:
example-1:
value:
major: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
message: string
minor: 0
name: string
power: 4
power_mode: default
url: string
uuid: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
wayfinding_nodename: string
x: 0
y: 0
schema:
$ref: '#/components/schemas/vbeacon'
description: Request Body
responses:
'200':
$ref: '#/components/responses/VBeacon'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteVBeacon
tags:
- Sites vBeacons
/api/v1/sites/{site_id}/vpns/derived:
get:
description: VPN object represents an overlay network where gateways can participate
in and optionally expose routes to.
operationId: listSiteVpnsDerived
parameters:
- description: whether resolve the site variables
in: query
name: resolve
schema:
default: false
type: boolean
responses:
'200':
$ref: '#/components/responses/VpnsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteVpnsDerived
tags:
- Sites VPNs
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wan_client/events/count:
get:
description: Count by Distinct Attributes of Site WAN Client-Events
operationId: countSiteWanClientEvents
parameters:
- in: query
name: distinct
schema:
default: type
enum:
- type
- hostname
- ip
- mfg
- mac
title: Site Wan Client events distinct
type: string
- $ref: '#/components/parameters/client_event_type'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWanClientEvents
tags:
- Sites Clients - Wan
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wan_clients/count:
get:
description: Count Site WAN Clients
operationId: countSiteWanClients
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- hostname
- ip
- mfg
- mac
title: Site Wan Clients count distinct
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWanClients
tags:
- Sites Clients - Wan
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wan_clients/events/search:
get:
description: Search Site WAN Client Events
operationId: searchSiteWanClientEvents
parameters:
- $ref: '#/components/parameters/client_event_type'
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: client IP
in: query
name: ip
schema:
type: string
- description: Manufacture
in: query
name: mfg
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WanClientEventsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWanClientEvents
tags:
- Sites Clients - Wan
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wan_clients/search:
get:
description: Search Site WAN Clients
operationId: searchSiteWanClients
parameters:
- description: partial / full MAC address
in: query
name: mac
schema:
type: string
- description: partial / full hostname
in: query
name: hostname
schema:
type: string
- description: client IP
in: query
name: ip
schema:
type: string
- description: Manufacture
in: query
name: mfg
schema:
type: string
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/page'
responses:
'200':
$ref: '#/components/responses/WanClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWanClients
tags:
- Sites Clients - Wan
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/webhooks:
get:
description: Get List of Site Webhooks
operationId: listSiteWebhooks
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WebhooksArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWebhooks
tags:
- Sites Webhooks
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: "Webhook defines a webhook, modeled after [github\u2019s model](https://developer.github.com/webhooks/).\n\
\nThere is two types of webhooks:\n* webhooks ([examples](https://www.postman.com/juniper-mist/workspace/mist-systems-s-public-workspace/folder/224925-be01e694-7253-4195-8563-78e2a745e114))\n\
* raw data webhooks ([examples](https://www.postman.com/juniper-mist/workspace/mist-systems-s-public-workspace/folder/224925-e2d5d5f8-4bdb-4efc-93e4-90f4b33d0b2b))\n\
\n##### Webhooks\nWebhooks can be configured at the org level (subset of topics\
\ only) and at the site level. It is possible to have multiple topics in the\
\ same webhook configuration and/or to have multiple webhooks configured at\
\ the same time.\n\n##### Client Raw Data Webhooks\nRaw data webhooks are\
\ a special subset of webhooks that provide insight into raw data packets\
\ emitted by a client, identified by their advertising MAC address (assets,\
\ discovered ble, connected wifi, unconnected wifi). The data that client\
\ raw data webhooks encompasses are reporting AP information, RSSI Data, and\
\ any special packets/telemetry packets that the client may emit. Note that\
\ client raw webhooks are the raw data coming from the client and do not contain\
\ the X,Y location data of the client. In order to get the location data for\
\ a client please see our location webhooks. Clients can be identified uniquely\
\ across these client raw data topics and location webhook topic using MAC\
\ address as the Unique identifier (client identifier).\n\n###### Client Raw\
\ Data Webhooks Topics\nTopics that correspond to client raw data for different\
\ client types. \n* `asset-raw-rssi` - Raw data from packets emitted by named\
\ and filtered assets \n* `discovered-raw-rssi` - Raw data from packets emitted\
\ by passive BLE devices \n* `wifi-conn-raw` - Raw data from packets emitted\
\ by connected devices \n* `wifi-unconn-raw` - Raw data from packets emitted\
\ by unconnected devices (passive)\n\n###### Rules for configuring client\
\ raw data webhooks\n1. Only one instance of a webhook object containing a\
\ client raw data webhook topic is allowed. (a site level entry will override\
\ an org level entry for the client raw data webhook topic in question)\n\
2. Only one client raw data webhook topic is allowed per `http-post` message\
\ to webhooks api\n"
operationId: createSiteWebhook
requestBody:
content:
application/json:
examples:
example-1:
value:
enabled: true
headers: {}
name: string
secret: string
splunk_token: string
topics:
- location
type: http-post
url: string
verify_cert: true
schema:
$ref: '#/components/schemas/webhook'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/SiteWebhookUpdateFailed'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWebhook
tags:
- Sites Webhooks
/api/v1/sites/{site_id}/webhooks/{webhook_id}:
delete:
description: Delete Site Webhook
operationId: deleteSiteWebhook
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWebhook
tags:
- Sites Webhooks
get:
description: Get Site Webhook Details
operationId: getSiteWebhook
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWebhook
tags:
- Sites Webhooks
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/webhook_id'
put:
description: Update Site Webhook
operationId: updateSiteWebhook
requestBody:
content:
application/json:
examples:
example-1:
value:
enabled: true
headers: {}
name: string
secret: string
splunk_token: string
topics:
- location
type: http-post
url: string
verify_cert: true
schema:
$ref: '#/components/schemas/webhook'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Webhook'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWebhook
tags:
- Sites Webhooks
/api/v1/sites/{site_id}/webhooks/{webhook_id}/events/search:
get:
description: 'Search webhooks deliveries
To get a list of webhook deliveries in error, use the query parameter `?error=*`'
operationId: searchSiteWebhooksDeliveries
parameters:
- in: query
name: status_code
schema:
type: integer
- in: query
name: error
schema:
type: string
- description: webhook topic
in: query
name: topic
schema:
$ref: '#/components/schemas/webhook_delivery_topic'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WebhookDeliverySearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWebhooksDeliveries
tags:
- Sites Webhooks
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/webhook_id'
/api/v1/sites/{site_id}/webhooks/{webhook_id}/ping:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/webhook_id'
post:
description: send a Ping event to the webhook
operationId: pingSiteWebhook
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: pingSiteWebhook
tags:
- Sites Webhooks
/api/v1/sites/{site_id}/wired_clients/count:
get:
description: Count by Distinct Attributes of Clients
operationId: countSiteWiredClients
parameters:
- in: query
name: distinct
schema:
default: mac
enum:
- port_id
- vlan
- mac
title: Site Wired Clients count distinct
type: string
- description: client mac
in: query
name: mac
schema:
type: string
- description: device mac
in: query
name: device_mac
schema:
type: string
- description: port id
in: query
name: port_id
schema:
type: string
- description: vlan
in: query
name: vlan
schema:
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteWiredClients
tags:
- Sites Clients - Wired
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wired_clients/search:
get:
description: Search Wired Clients
operationId: searchSiteWiredClients
parameters:
- description: device mac
in: query
name: device_mac
schema:
type: string
- description: client mac
in: query
name: mac
schema:
type: string
- description: client ip
in: query
name: ip
schema:
type: string
- description: port id
in: query
name: port_id
schema:
type: string
- description: vlan
in: query
name: vlan
schema:
type: string
- description: manufacture
in: query
name: manufacture
schema:
type: string
- description: single entry of hostname/mac
in: query
name: text
schema:
type: string
- description: nacrule_id
in: query
name: nacrule_id
schema:
type: string
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/WiredClientsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteWiredClients
tags:
- Sites Clients - Wired
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wlans:
get:
description: Get List of Site WLANs
operationId: listSiteWlans
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WlansArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWlans
tags:
- Sites Wlans
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site WLAN
operationId: createSiteWlan
requestBody:
content:
application/json:
examples:
Example:
value:
acct_immediate_update: false
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
airwatch:
api_key: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
console_url: https://hs1.airwatchportals.com
enabled: true
password: user1
username: test123
allow_ipv6_ndp: true
allow_mdns: false
allow_ssdp: false
ap_ids:
- 497f6eca-6276-4993-bfeb-53cbbbbb6f08
app_limit:
apps:
dropbox: 300
netflix: 60
enabled: false
wxtag_ids:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
app_qos:
apps:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
enabled: true
others:
- dscp: 32
dst_subnet: 10.2.0.0/16
port_ranges: 80,1024-6553
protocol: udp
src_subnet: 10.2.0.0/16
apply_to: site
arp_filter: false
auth:
anticlog_threshold: 16
eap_reauth: false
enable_mac_auth: false
key_idx: 1
keys:
- string
multi_psk_only: false
owe: string
pairwise:
- wpa2-ccmp
private_wlan: true
psk: foryoureyesonly
type: psk
wep_as_secondary_auth: true
auth_server_selection: ordered
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_nas_id: 5c5b350e0101-nas
auth_servers_nas_ip: 15.3.1.5
auth_servers_retries: 5
auth_servers_timeout: 5
band: string
band_steer: false
band_steer_force_band5: false
bands:
- '24'
- '5'
block_blacklist_clients: false
bonjour:
additional_vlan_ids:
- 0
enabled: false
services:
airplay:
radius_groups:
- teachers
scope: same_ap
cisco_cwa:
allowed_hostnames:
- snapchat.com
allowed_subnets:
- 63.5.3.0/24
blocked_subnets:
- 192.168.0.0/16
enabled: false
client_limit_down: 0
client_limit_down_enabled: false
client_limit_up: 0
client_limit_up_enabled: false
coa_servers:
- disable_event_timestamp_check: false
enabled: false
ip: 1.2.3.4
port: 3799
secret: testing456
created_time: 0
disable_11ax: false
disable_ht_vht_rates: false
disable_uapsd: false
disable_v1_roam_notify: false
disable_v2_roam_notify: false
disable_wmm: false
dns_server_rewrite:
enabled: false
radius_groups:
contractor: 172.1.1.1
guest: 8.8.8.8
dtim: 2
dynamic_psk:
default_psk: foryoureyesonly
default_vlan_id: 999
enabled: false
source: cloud_psks
vlan_ids:
- 1
dynamic_vlan:
default_vlan_id: 999
enabled: false
local_vlan_ids:
- 1
type: airespace-interface-name
vlans:
'131': default
'322': fast,video
enable_local_keycaching: false
enable_wireless_bridging: false
enabled: true
fast_dot1x_timers: false
for_site: true
hide_ssid: false
hostname_ie: false
hotspot20:
domain_name:
- mist.com
enabled: true
nai_realms:
- string
operators:
- google
- att
rcoi:
- 5A03BA0000
venue_name: some_name
id: 497f6eca-6276-4993-bfeb-53cbbbbc6f08
interface: all
isolation: false
l2_isolation: false
legacy_overds: false
limit_bcast: false
limit_probe_response: true
max_idletime: 1800
mist_nac:
enabled: false
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
mxtunnel: {}
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name:
- default
no_static_dns: false
no_static_ip: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
portal:
amazon_client_id: string
amazon_client_secret: string
amazon_email_domains:
- string
amazon_enabled: false
auth: none
azure_client_id: string
azure_client_secret: string
azure_enabled: false
azure_tenant_id: string
broadnet_password: password
broadnet_sid: MIST
broadnet_user_id: juniper
bypass_when_cloud_down: false
clickatell_api_key: string
cross_site: false
email_enabled: true
enabled: false
expire: 1440
external_portal_url: string
facebook_client_id: string
facebook_client_secret: string
facebook_email_domains:
- string
facebook_enabled: false
forward: false
forward_url: http://abc.com/promotions
google_client_id: string
google_client_secret: string
google_email_domains:
- mydomain.edu
- mydomain.org
google_enabled: false
gupshup_password: string
gupshup_userid: string
microsoft_client_id: string
microsoft_client_secret: string
microsoft_email_domains:
- string
microsoft_enabled: false
passphrase_enabled: false
password: let me in
portal_allowed_hostnames: string
portal_allowed_subnets: string
portal_api_secret: string
portal_denied_hostnames: string
portal_image: https://url/to/image.png
portal_sso_url: string
predefined_sponsors_enabled: true
privacy: true
puzzel_password: string
puzzel_service_id: string
puzzel_username: string
smsMessageFormat: string
sms_enabled: false
sms_provider: twilio
sponsor_auto_approve: false
sponsor_email_domains:
- reserved.net
- reserved.org
sponsor_enabled: false
sponsor_link_validity_duration: 30
sponsor_notify_all: false
sponsor_status_notify: false
sponsors:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
sso_default_role: string
sso_forced_role: string
sso_idp_cert: string
sso_idp_sign_algo: string
sso_idp_sso_url: string
sso_issuer: string
sso_nameid_format: email
telstra_client_id: string
telstra_client_secret: string
thumbnail: string
twilio_auth_token: af9dac44c344a875ab5d31cb7abcdefg
twilio_phone_number: '+18548888888'
twilio_sid: AC72ec6ba0ec5af30e6731c5e47abcdefgh
portal_allowed_hostnames:
- snapchat.com
- ibm.com
portal_allowed_subnets:
- 63.5.3.0/24
portal_api_secret: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
portal_denied_hostnames:
- msg.snapchat.com
portal_image: http://example.com
portal_sso_url: string
portal_template_url: string
qos:
class: best_effort
overwrite: false
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
rateset:
'24':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
'5':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
roam_mode: none
schedule:
enabled: false
hours:
fri: 09:00-17:00
mon: 09:00-17:00
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sle_excluded: false
ssid: corporate
template_id: c6d67e98-83ea-49f0-8812-e4abae2b68bc
thumbnail: http://example.com
use_eapol_v1: false
vlan_enabled: false
vlan_id: 1
vlan_ids:
- 3
- 4
- 5
vlan_pooling: false
wlan_limit_down: 0
wlan_limit_down_enabled: false
wlan_limit_up: 0
wlan_limit_up_enabled: false
wxtag_ids:
- 497f6eca-6276-4993-bfeb-53cbbbbd6f08
wxtunnel_id: string
wxtunnel_remote_id: string
schema:
$ref: '#/components/schemas/wlan'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wlan'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWlan
tags:
- Sites Wlans
/api/v1/sites/{site_id}/wlans/derived:
get:
description: Get Wlans Derived
operationId: listSiteWlanDerived
parameters:
- description: whether to resolve SITE_VARS
example: true
in: query
name: resolve
schema:
default: false
type: boolean
- description: filter by WLAN ID
in: query
name: wlan_id
schema:
type: string
responses:
'200':
$ref: '#/components/responses/WlansArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWlanDerived
tags:
- Sites Wlans
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wlans/{wlan_id}:
delete:
description: Delete Site WLAN
operationId: deleteSiteWlan
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWlan
tags:
- Sites Wlans
get:
description: Get Site WLAN
operationId: getSiteWlan
responses:
'200':
$ref: '#/components/responses/Wlan'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWlan
tags:
- Sites Wlans
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wlan_id'
put:
description: Update Site WLAN
operationId: updateSiteWlan
requestBody:
content:
application/json:
examples:
Example:
value:
acct_immediate_update: false
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
airwatch:
api_key: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
console_url: https://hs1.airwatchportals.com
enabled: true
password: user1
username: test123
allow_ipv6_ndp: true
allow_mdns: false
allow_ssdp: false
ap_ids:
- 497f6eca-6276-4993-bfeb-53cbbbbe6f08
app_limit:
apps:
dropbox: 300
netflix: 60
enabled: false
wxtag_ids:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
app_qos:
apps:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
enabled: true
others:
- dscp: 32
dst_subnet: 10.2.0.0/16
port_ranges: 80,1024-6553
protocol: udp
src_subnet: 10.2.0.0/16
apply_to: site
arp_filter: false
auth:
anticlog_threshold: 16
eap_reauth: false
enable_mac_auth: false
key_idx: 1
keys:
- string
multi_psk_only: false
owe: string
pairwise:
- wpa2-ccmp
private_wlan: true
psk: foryoureyesonly
type: psk
wep_as_secondary_auth: true
auth_server_selection: ordered
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_nas_id: 5c5b350e0101-nas
auth_servers_nas_ip: 15.3.1.5
auth_servers_retries: 5
auth_servers_timeout: 5
band: string
band_steer: false
band_steer_force_band5: false
bands:
- '24'
- '5'
block_blacklist_clients: false
bonjour:
additional_vlan_ids:
- 0
enabled: false
services:
airplay:
radius_groups:
- teachers
scope: same_ap
cisco_cwa:
allowed_hostnames:
- snapchat.com
allowed_subnets:
- 63.5.3.0/24
blocked_subnets:
- 192.168.0.0/16
enabled: false
client_limit_down: 0
client_limit_down_enabled: false
client_limit_up: 0
client_limit_up_enabled: false
coa_servers:
- disable_event_timestamp_check: false
enabled: false
ip: 1.2.3.4
port: 3799
secret: testing456
created_time: 0
disable_11ax: false
disable_ht_vht_rates: false
disable_uapsd: false
disable_v1_roam_notify: false
disable_v2_roam_notify: false
disable_wmm: false
dns_server_rewrite:
enabled: false
radius_groups:
contractor: 172.1.1.1
guest: 8.8.8.8
dtim: 2
dynamic_psk:
default_psk: foryoureyesonly
default_vlan_id: 999
enabled: false
source: cloud_psks
vlan_ids:
- 1
dynamic_vlan:
default_vlan_id: 999
enabled: false
local_vlan_ids:
- 1
type: airespace-interface-name
vlans:
'131': default
'322': fast,video
enable_local_keycaching: false
enable_wireless_bridging: false
enabled: true
fast_dot1x_timers: false
for_site: true
hide_ssid: false
hostname_ie: false
hotspot20:
domain_name:
- mist.com
enabled: true
nai_realms:
- string
operators:
- google
- att
rcoi:
- 5A03BA0000
venue_name: some_name
id: 497f6eca-6276-4993-bfeb-53cbbbbf6f08
interface: all
isolation: false
l2_isolation: false
legacy_overds: false
limit_bcast: false
limit_probe_response: true
max_idletime: 1800
mist_nac:
enabled: false
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
mxtunnel: {}
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name:
- default
no_static_dns: false
no_static_ip: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
portal:
amazon_client_id: string
amazon_client_secret: string
amazon_email_domains:
- string
amazon_enabled: false
auth: none
azure_client_id: string
azure_client_secret: string
azure_enabled: false
azure_tenant_id: string
broadnet_password: password
broadnet_sid: MIST
broadnet_user_id: juniper
bypass_when_cloud_down: false
clickatell_api_key: string
cross_site: false
email_enabled: true
enabled: false
expire: 1440
external_portal_url: string
facebook_client_id: string
facebook_client_secret: string
facebook_email_domains:
- string
facebook_enabled: false
forward: false
forward_url: http://abc.com/promotions
google_client_id: string
google_client_secret: string
google_email_domains:
- mydomain.edu
- mydomain.org
google_enabled: false
gupshup_password: string
gupshup_userid: string
microsoft_client_id: string
microsoft_client_secret: string
microsoft_email_domains:
- string
microsoft_enabled: false
passphrase_enabled: false
password: let me in
portal_allowed_hostnames: string
portal_allowed_subnets: string
portal_api_secret: string
portal_denied_hostnames: string
portal_image: https://url/to/image.png
portal_sso_url: string
predefined_sponsors_enabled: true
privacy: true
puzzel_password: string
puzzel_service_id: string
puzzel_username: string
smsMessageFormat: string
sms_enabled: false
sms_provider: twilio
sponsor_auto_approve: false
sponsor_email_domains:
- reserved.net
- reserved.org
sponsor_enabled: false
sponsor_link_validity_duration: 30
sponsor_notify_all: false
sponsor_status_notify: false
sponsors:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
sso_default_role: string
sso_forced_role: string
sso_idp_cert: string
sso_idp_sign_algo: string
sso_idp_sso_url: string
sso_issuer: string
sso_nameid_format: email
telstra_client_id: string
telstra_client_secret: string
thumbnail: string
twilio_auth_token: af9dac44c344a875ab5d31cb7abcdefg
twilio_phone_number: '+18548888888'
twilio_sid: AC72ec6ba0ec5af30e6731c5e47abcdefgh
portal_allowed_hostnames:
- snapchat.com
- ibm.com
portal_allowed_subnets:
- 63.5.3.0/24
portal_api_secret: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
portal_denied_hostnames:
- msg.snapchat.com
portal_image: http://example.com
portal_sso_url: string
portal_template_url: string
qos:
class: best_effort
overwrite: false
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
rateset:
'24':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
'5':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
roam_mode: none
schedule:
enabled: false
hours:
fri: 09:00-17:00
mon: 09:00-17:00
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sle_excluded: false
ssid: corporate
template_id: c6d67e98-83ea-49f0-8812-e4abae2b68bc
thumbnail: http://example.com
use_eapol_v1: false
vlan_enabled: false
vlan_id: 1
vlan_ids:
- 3
- 4
- 5
vlan_pooling: false
wlan_limit_down: 0
wlan_limit_down_enabled: false
wlan_limit_up: 0
wlan_limit_up_enabled: false
wxtag_ids:
- 497f6eca-6276-4993-bfeb-53cbbbba0f08
wxtunnel_id: string
wxtunnel_remote_id: string
schema:
$ref: '#/components/schemas/wlan'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wlan'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWlan
tags:
- Sites Wlans
/api/v1/sites/{site_id}/wlans/{wlan_id}/portal_image:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wlan_id'
post:
description: Wlan Portal Image Upload
operationId: uploadSiteWlanPortalImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/image_import'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: uploadSiteWlanPortalImage
tags:
- Sites Wlans
/api/v1/sites/{site_id}/wlans/{wlan_id}/portal_template:
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wlan_id'
put:
description: 'Update a Portal Template
#### Sponsor Email Template
Sponsor Email Template supports following template variables:
| **Name** | **Description** |
| --- | --- |
| approve_url | Renders URL to approve the request; optionally &minutes=N
query param can be appended to change the Authorization period of the guest,
where N is a valid integer denoting number of minutes a guest remains authorized
|
| deny_url | Renders URL to reject the request |
| guest_email | Renders Email ID of the guest |
| guest_name | Renders Name of the guest |
| field1 | Renders value of the Custom Field 1 |
| field2 | Renders value of the Custom Field 2 |
| company | Renders value of the Company field |
| sponsor_link_validity_duration | Renders validity time of the request (i.e.
Approve/Deny URL) |
| auth_expire_minutes | Renders Wlan-level configured Guest Authorization
Expiration time period (in minutes), If not configured then default (1 day
in minutes) |'
operationId: updateSiteWlanPortalTemplate
requestBody:
content:
application/json:
examples:
example-1:
value:
accessCodeAlternateEmail: string
alignment: string
authButtonAmazon: string
authButtonAzure: string
authButtonEmail: string
authButtonFacebook: string
authButtonGoogle: string
authButtonMicrosoft: string
authButtonPassphrase: string
authButtonSms: string
authButtonSponsor: string
authLabel: string
backLink: string
color: string
colorDark: string
colorLight: string
company: true
companyError: string
companyLabel: string
email: true
emailAccessDomainError: string
emailCancel: string
emailCodeError: string
emailError: string
emailFieldLabel: string
emailLabel: string
emailMessage: string
emailSubmit: string
emailTitle: string
field1: true
field1Error: string
field1Label: string
field1Required: true
field2: true
field2Error: string
field2Label: string
field2Required: true
field3: true
field3Error: string
field3Label: string
field3Required: true
field4: true
field4Error: string
field4Label: string
field4Required: true
message: string
name: true
nameError: string
nameLabel: string
optout: true
optoutLabel: string
pageTitle: string
passphraseCancel: string
passphraseError: string
passphraseLabel: string
passphraseMessage: string
passphraseSubmit: string
passphraseTitle: string
poweredBy: true
requiredFieldLabel: string
signInLabel: string
smsCarrierDefault: string
smsCarrierError: string
smsCarrierFieldLabel: string
smsCodeCancel: string
smsCodeError: string
smsCodeFieldLabel: string
smsCodeMessage: string
smsCodeSubmit: string
smsCodeTitle: string
smsCountryFieldLabel: string
smsCountryFormat: string
smsHaveAccessCode: string
smsMessageFormat: string
smsNumberCancel: string
smsNumberError: string
smsNumberFieldLabel: string
smsNumberFormat: string
smsNumberMessage: string
smsNumberSubmit: string
smsNumberTitle: string
smsUsernameFormat: string
smsValidityDuration: 0
sponsorBackLink: string
sponsorCancel: string
sponsorEmail: string
sponsorEmailError: string
sponsorEmailTemplate: string
sponsorInfoApproved: string
sponsorInfoDenied: string
sponsorInfoPending: string
sponsorName: string
sponsorNameError: string
sponsorNotePending: string
sponsorStatusApproved: string
sponsorStatusDenied: string
sponsorStatusPending: string
sponsorSubmit: string
tos: true
tosAcceptLabel: string
tosError: string
tosLink: string
tosText: string
schema:
$ref: '#/components/schemas/wlan_portal_template'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Portaltemplate'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWlanPortalTemplate
tags:
- Sites Wlans
/api/v1/sites/{site_id}/wxrules:
get:
description: Get List of Site WxLan Rules
operationId: listSiteWxRules
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxruleArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWxRules
tags:
- Sites WxRules
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site WxLan Rule
operationId: createSiteWxRule
requestBody:
content:
application/json:
examples:
Example:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-bfeb-53ecbbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
$ref: '#/components/schemas/wxlan_rule'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWxRule
tags:
- Sites WxRules
/api/v1/sites/{site_id}/wxrules/derived:
get:
description: Get Site WxLan Rule Derived
operationId: getSiteWxRulesDerived
responses:
'200':
$ref: '#/components/responses/WxruleArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWxRulesDerived
tags:
- Sites WxRules
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wxrules/{wxrules_id}:
delete:
description: Delete Site WxLan Rule
operationId: deleteSiteWxRule
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWxRule
tags:
- Sites WxRules
get:
description: Get Site WxLan Rule Details
operationId: getSiteWxRule
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWxRule
tags:
- Sites WxRules
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wxrules_id'
put:
description: Update Site WxLan Rule
operationId: updateSiteWxRule
requestBody:
content:
application/json:
examples:
Example:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-bfeb-53edbbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
$ref: '#/components/schemas/wxlan_rule'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxrule'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWxRule
tags:
- Sites WxRules
/api/v1/sites/{site_id}/wxtags:
get:
description: Get List of Site WxTags
operationId: listSiteWxTags
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxtagArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWxTags
tags:
- Sites WxTags
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site WxTag
operationId: createSiteWxTag
requestBody:
content:
application/json:
examples:
app:
value:
match: app
name: match app
type: match
values:
- gmail
- dropbox
client_mac:
value:
match: client_mac
name: file-servers
type: match
values:
- b0c4e7001543
- a0c4e7001543
- 00c4e7001543
hostnames:
value:
match: hostname
name: mist
type: match
values:
- mist.com
ip_range_subnets:
value:
match: ip_range_subnet
name: file-servers
type: match
values:
- 10.1.2.1
- 10.2.3.4/24
- 10.1.2.5-10.2.3.4
ports:
value:
match: port
name: web-ports
type: match
values:
- '80'
- '8000'
- '8080'
psk_name:
value:
match: psk_name
name: VIP
type: match
values:
- test_key1
- test_key2
psk_role:
value:
match: psk_role
name: VIP
type: match
values:
- test_role
radius_group:
value:
match: radius_group
name: VIP
type: match
values:
- vip
radius_username:
value:
match: radius_username
name: VIP
type: match
values:
- john@abc.com
- eric@abc.com
traffic-spec:
value:
name: protocol-subnet-port
specs:
- port_range: '80'
protocol: tcp
subnets:
- 10.1.2.0/24
type: spec
vlan:
value:
name: vlan-assignment
type: vlan
vlan_id: 1055
wlan_id:
value:
match: wlan_id
name: guest-wlan
type: match
values:
- be22bba78e22e1cf5185b880816fe2cf
schema:
$ref: '#/components/schemas/wxlan_tag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWxTag
tags:
- Sites WxTags
/api/v1/sites/{site_id}/wxtags/apps:
get:
description: Get Application List
operationId: getSiteApplicationList
responses:
'200':
$ref: '#/components/responses/WxTagsAppsArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteApplicationList
tags:
- Sites WxTags
parameters:
- $ref: '#/components/parameters/site_id'
/api/v1/sites/{site_id}/wxtags/{wxtag_id}:
delete:
description: Delete Site WxTag
operationId: deleteSiteWxTag
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWxTag
tags:
- Sites WxTags
get:
description: Get Site WxTag Details
operationId: getSiteWxTag
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWxTag
tags:
- Sites WxTags
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wxtag_id'
put:
description: Update Site WxTag
operationId: updateSiteWxTag
requestBody:
content:
application/json:
examples:
example-1:
value:
last_ips:
- string
mac: string
match: wlan_id
name: string
op: in
resource_mac: string
services:
- string
specs:
- port_range: string
protocol: tcp
subnet:
- string
subnet: string
type: match
values:
- string
schema:
$ref: '#/components/schemas/wxlan_tag'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtag'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWxTag
tags:
- Sites WxTags
/api/v1/sites/{site_id}/wxtags/{wxtag_id}/clients:
get:
description: Get Current Matching Clients of a WXLAN Tag
operationId: getSiteCurrentMatchingClientsOfAWxTag
responses:
'200':
$ref: '#/components/responses/WxTagsMatchingArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteCurrentMatchingClientsOfAWxTag
tags:
- Sites WxTags
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wxtag_id'
/api/v1/sites/{site_id}/wxtunnels:
get:
description: Get List of Site WxLan Tunnels
operationId: listSiteWxTunnels
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/WxtunnelArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteWxTunnels
tags:
- Sites WxTunnels
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site WxLan Tunnel
operationId: createSiteWxTunnel
requestBody:
content:
application/json:
examples:
example-1:
value:
dmvpn:
enabled: true
holding_time: 0
host_routes:
- string
for_mgmt: true
hello_interval: 1
hello_retries: 3
hostname: string
ipsec:
enabled: true
psk: string123
is_static: true
mtu: 0
name: string
peers:
- string
router_id: string
secret: string
sessions:
- ap_as_session_id: string
comment: string
enable_cookie: true
ethertype: ethernet
local_session_id: 1
pseudo_802.1ad_enabled: true
remote_id: string
remote_session_id: 1
use_ap_as_session_ids: true
udp_port: 0
use_udp: true
schema:
$ref: '#/components/schemas/wxlan_tunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteWxTunnel
tags:
- Sites WxTunnels
/api/v1/sites/{site_id}/wxtunnels/{wxtunnel_id}:
delete:
description: Delete Site WxLan Tunnel
operationId: deleteSiteWxTunnel
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteWxTunnel
tags:
- Sites WxTunnels
get:
description: Get Site WxLan tunnel Details
operationId: getSiteWxTunnel
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteWxTunnel
tags:
- Sites WxTunnels
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/wxtunnel_id'
put:
description: Update Site WxLan Tunnel
operationId: updateSiteWxTunnel
requestBody:
content:
application/json:
examples:
example-1:
value:
dmvpn:
enabled: true
holding_time: 0
host_routes:
- string
for_mgmt: true
hello_interval: 1
hello_retries: 3
hostname: string
ipsec:
enabled: true
psk: string123
is_static: true
mtu: 0
name: string
peers:
- string
router_id: string
secret: string
sessions:
- ap_as_session_id: string
comment: string
enable_cookie: true
ethertype: ethernet
local_session_id: 1
pseudo_802.1ad_enabled: true
remote_id: string
remote_session_id: 1
use_ap_as_session_ids: true
udp_port: 0
use_udp: true
schema:
$ref: '#/components/schemas/wxlan_tunnel'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Wxtunnel'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteWxTunnel
tags:
- Sites WxTunnels
/api/v1/sites/{site_id}/zones:
get:
description: Get List of Site Zones
operationId: listSiteZones
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
responses:
'200':
$ref: '#/components/responses/ZonesArray'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: listSiteZones
tags:
- Sites Zones
parameters:
- $ref: '#/components/parameters/site_id'
post:
description: Create Site Zone
operationId: createSiteZone
requestBody:
content:
application/json:
examples:
example-1:
value:
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
vertices:
- x: 0
y: 0
schema:
$ref: '#/components/schemas/zone'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Zone'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: createSiteZone
tags:
- Sites Zones
/api/v1/sites/{site_id}/zones/{zone_id}:
delete:
description: Delete Site Zone
operationId: deleteSiteZone
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: deleteSiteZone
tags:
- Sites Zones
get:
description: Get Site Zone Details
operationId: getSiteZone
responses:
'200':
$ref: '#/components/responses/Zone'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: getSiteZone
tags:
- Sites Zones
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/zone_id'
put:
description: Update Site Zone
operationId: updateSiteZone
requestBody:
content:
application/json:
examples:
example-1:
value:
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
vertices:
- x: 0
y: 0
schema:
$ref: '#/components/schemas/zone'
description: Request Body
responses:
'200':
$ref: '#/components/responses/Zone'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: updateSiteZone
tags:
- Sites Zones
/api/v1/sites/{site_id}/{zone_type}/count:
get:
description: Count Site Zone Sessions
operationId: countSiteZoneSessions
parameters:
- example: scope_id
in: query
name: distinct
schema:
default: scope_id
enum:
- user_type
- user
- scope_id
- scope
title: Site Zone count distinct
type: string
- description: user type
in: query
name: user_type
schema:
$ref: '#/components/schemas/rf_client_type'
- description: client MAC / Asset MAC / SDK UUID
in: query
name: user
schema:
type: string
- description: if `scope`==`map`/`zone`/`rssizone`, the scope id
in: query
name: scope_id
schema:
type: string
- description: scope
in: query
name: scope
schema:
default: site
enum:
- site
- map
- zone
- rssizone
title: Zone Scope
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/Count'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: countSiteZoneSessions
tags:
- Sites Zones
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/zone_type'
/api/v1/sites/{site_id}/{zone_type}/visits/search:
get:
description: Search Zone Sessions
operationId: searchSiteZoneSessions
parameters:
- description: user type, client (default) / sdkclient / asset
in: query
name: user_type
schema:
$ref: '#/components/schemas/rf_client_type'
- description: client MAC / Asset MAC / SDK UUID
in: query
name: user
schema:
type: string
- description: if `scope`==`map`/`zone`/`rssizone`, the scope id
in: query
name: scope_id
schema:
type: string
- description: scope
in: query
name: scope
schema:
default: site
enum:
- site
- map
- zone
- rssizone
title: Visits Scope
type: string
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/start'
- $ref: '#/components/parameters/end'
- $ref: '#/components/parameters/duration'
responses:
'200':
$ref: '#/components/responses/ZoneSessionsSearch'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: searchSiteZoneSessions
tags:
- Sites Zones
parameters:
- $ref: '#/components/parameters/site_id'
- $ref: '#/components/parameters/zone_type'
/api/v1/utils/test_telstra:
post:
description: 'Allows validation of Telstra sms gateway credentials.
In case of success, a text message confirming successful setup should be received.
In case of error, telstra error message are returned.'
operationId: testSiteWlanTelstraSetup
requestBody:
content:
application/json:
examples:
Example:
value:
telstra_client_id: '123456'
telstra_client_secret: abcdef
to: '+911122334455'
schema:
$ref: '#/components/schemas/test_telstra'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: testSiteWlanTelstraSetup
tags:
- Utilities Wi-Fi
/api/v1/utils/test_twilio:
post:
description: 'Allows validation of twilio setup
In case of success, a text message confirming successful setup should be received.
In case of error, twilio error code and message are returned.'
operationId: testSiteWlanTwilioSetup
requestBody:
content:
application/json:
examples:
Example:
value:
from: '+185051234567'
to: '+19999999999'
twilio_auth_token: 2135be04736a1a0a314bce432d61721a
twilio_sid: AC5f4366878d193fb4865ab151739999eb
schema:
$ref: '#/components/schemas/test_twilio'
description: Request Body
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
'401':
$ref: '#/components/responses/HTTP401'
'403':
$ref: '#/components/responses/HTTP403'
'404':
$ref: '#/components/responses/HTTP404'
'429':
$ref: '#/components/responses/HTTP429'
summary: testSiteWlanTwilioSetup
tags:
- Utilities Wi-Fi
/webhook_example/_alarm_:
post:
description: 'Webhook sample for `alarm` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: alarms
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- aps:
- string
bssids:
- string
count: 0
event_id: a7a26ff2-e851-45b6-9634-d595f45458b7
for_site: true
id: 489f6eca-6276-4993-bfeb-c3cbbbba1f08
last_seen: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
ssids:
- string
timestamp: 0
type: string
update: true
topic: alarms
schema:
$ref: '#/components/schemas/webhook_alarms'
description: "**N.B.**: Fields like `aps`, `bssids`, `ssids` are event specific.\
\ They are relevant to this event type ( rogue-ap-detected). For a different\
\ event type, different fields may be sent. These don\u2019t contain all\
\ affected entities and are representative samples of entities (capped at\
\ 10). For marvis action related events, we expose `details` to include\
\ more event specific details.\n\nEvents specific fields for other alarm\
\ event type can be found with API https://api.mist.com/api/v1/const/alarm_defs,\
\ under \u201Cfields\u201D array of /alarm_defs response object."
responses:
'200':
$ref: '#/components/responses/OK'
summary: alarms
tags:
- Webhook Samples
/webhook_example/_asset_raw_:
post:
description: 'Webhook sample for `asset_raw` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages
**will be deprecated after 06/30/2024**'
operationId: assetRaw
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- asset_id: b4695157-0d1d-4da0-8f9e-5c53149389e4
beam: 0
device_id: 3bafab7b-4400-4bcf-8e6e-09f954699940
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
mfg_company_id: 0
mfg_data: string
rssi: 0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
timestamp: 0
topic: asset-raw
schema:
$ref: '#/components/schemas/webhook_asset_raw'
responses:
'200':
$ref: '#/components/responses/OK'
summary: assetRaw
tags:
- Webhook Samples
/webhook_example/_audit_:
post:
description: 'Webhook sample for `audit` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: audits
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- admin_name: admin_name8
device_id: 00000380-0000-0000-0000-000000000000
id: 0000122a-0000-0000-0000-000000000000
message: message0
org_id: 00001302-0000-0000-0000-000000000000
site_id: 00000290-0000-0000-0000-000000000000
src_ip: src_ip6
timestamp: 157.68
topic: audits
schema:
$ref: '#/components/schemas/webhook_audits'
description: ''
responses:
'200':
$ref: '#/components/responses/OK'
summary: audits
tags:
- Webhook Samples
/webhook_example/_client_info_:
post:
description: 'Webhook sample for `client_info` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: clientInfo
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- ap: string
ap_name: string
band: string
bssid: string
connect: 0
connect_float: 0
mac: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rssi: 0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
ssid: string
timestamp: 0
version: 0
wlan_id: 5028e92b-fc59-4056-91d1-ea4b4ca1617a
topic: client-info
schema:
$ref: '#/components/schemas/webhook_client_info'
responses:
'200':
$ref: '#/components/responses/OK'
summary: clientJoin
tags:
- Webhook Samples
/webhook_example/_client_join_:
post:
description: 'Webhook sample for `client_join` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: clientJoin
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- ap: string
ap_name: string
band: string
bssid: string
connect: 0
connect_float: 0
mac: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rssi: 0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
ssid: string
timestamp: 0
version: 0
wlan_id: 5028e92b-fc59-4056-91d1-ea4b4ca1617a
topic: client-join
schema:
$ref: '#/components/schemas/webhook_client_join'
responses:
'200':
$ref: '#/components/responses/OK'
summary: clientJoin
tags:
- Webhook Samples
/webhook_example/_client_latency_:
post:
description: 'Webhook sample for `client-latency` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: client_latency
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- avg_auth: 0.17170219
avg_dhcp: 0.017828934
avg_dns: 0.024532124
max_auth: 0.18170219
max_dhcp: 0.027828934
max_dns: 0.029532124
min_auth: 0.16050219
min_dhcp: 0.015828934
min_dns: 0.022532124
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1696401600
topic: client-latency
schema:
$ref: '#/components/schemas/webhook_client_latency'
description: ''
responses:
'200':
$ref: '#/components/responses/OK'
summary: alarms
tags:
- Webhook Samples
/webhook_example/_client_sessions_:
post:
description: 'Webhook sample for `client_sessions` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: clientSessions
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- ap: string
ap_name: string
band: string
bssid: string
client_family: string
client_manufacture: string
client_model: string
client_os: string
connect: 0
connect_float: 0
disconnect: 0
disconnect_float: 0
duration: 0
mac: string
next_ap: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rssi: 0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
ssid: string
termination_reason: 0
timestamp: 0
version: 0
wlan_id: 5028e92b-fc59-4056-91d1-ea4b4ca1617a
topic: client-sessions
schema:
$ref: '#/components/schemas/webhook_client_sessions'
responses:
'200':
$ref: '#/components/responses/OK'
'400':
$ref: '#/components/responses/HTTP400'
summary: clientSessions
tags:
- Webhook Samples
/webhook_example/_device_events_:
post:
description: 'Webhook sample for `device_events` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: deviceEvents
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- ap: string
ap_name: string
audit_id: 78c04fa6-cfb4-46a0-9aa5-3681ba4f3897
device_name: string
device_type: ap
ev_type: notice
mac: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
reason: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
text: string
timestamp: 0
type: string
topic: device-events
schema:
$ref: '#/components/schemas/webhook_device_events'
responses:
'200':
$ref: '#/components/responses/OK'
summary: deviceEvents
tags:
- Webhook Samples
/webhook_example/_device_updowns_:
post:
description: 'Webhook sample for `device_updowns` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: deviceUpDown
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- ap: string
ap_name: string
for_site: true
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
timestamp: 0
type: string
topic: device-updowns
schema:
$ref: '#/components/schemas/webhook_device_updowns'
responses:
'200':
$ref: '#/components/responses/OK'
summary: deviceUpDown
tags:
- Webhook Samples
/webhook_example/_discovered_raw_rssi_:
post:
description: 'Webhook sample for `discovered-raw-rssi` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: discovered-raw-rssi
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- ap_loc:
- 0
beam: 0
device_id: 3bafab7b-4400-4bcf-8e6e-09f954699940
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
is_asset: true
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
mfg_company_id: string
mfg_data: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rssi: 0
service_packets:
- service_data: string
service_uuid: 7138cc00-c611-4dec-a05e-5c4b1cae13c0
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
timestamp: 0
topic: string
schema:
$ref: '#/components/schemas/webhook_discovered_raw_rssi'
responses:
'200':
$ref: '#/components/responses/OK'
summary: discovered-raw-rssi
tags:
- Webhook Samples
/webhook_example/_location_:
post:
description: 'Webhook sample for `location` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: location
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- battery_voltage: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
id: 487f6eca-6276-4993-bfeb-e3cbbbba3f08
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
mfg_company_id: 0
mfg_data: string
name: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
timestamp: 0
type: string
x: 0
y: 0
topic: location
schema:
$ref: '#/components/schemas/webhook_location'
responses:
'200':
$ref: '#/components/responses/OK'
summary: location
tags:
- Webhook Samples
/webhook_example/_location_asset_:
post:
description: 'Webhook sample for `location-asset` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: location
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- battery_voltage: 3370
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_url: https://www.abc.com
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
mac: 7fc2936fd243
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
mfg_company_id: 935
mfg_data: 648520a1020000
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1461220784
type: asset
x: 13.5
y: 3.2
topic: location-asset
schema:
$ref: '#/components/schemas/webhook_location_asset'
responses:
'200':
$ref: '#/components/responses/OK'
summary: location
tags:
- Webhook Samples
/webhook_example/_location_client_:
post:
description: 'Webhook sample for `location-client` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: location
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- mac: 5684dae9ac8b
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1461220784
type: wifi
wifi_beacon_extended_info:
- frame_ctrl: 776
payload: '............'
seq_ctrl: 772
x: 13.5
y: 3.2
topic: location-client
schema:
$ref: '#/components/schemas/webhook_location_client'
responses:
'200':
$ref: '#/components/responses/OK'
summary: location
tags:
- Webhook Samples
/webhook_example/_location_sdk_:
post:
description: 'Webhook sample for `location-sdk` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: location
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- id: de87bf9d-183f-e383-cc68-6ba43947d403
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
name: optional
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1461220784
type: sdk
x: 13.5
y: 3.2
topic: location-sdk
schema:
$ref: '#/components/schemas/webhook_location_sdk'
responses:
'200':
$ref: '#/components/responses/OK'
summary: location
tags:
- Webhook Samples
/webhook_example/_location_unclient_:
post:
description: 'Webhook sample for `location-unclient` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: location
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- mac: 5684dae9ac8b
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1461220784
type: wifi
wifi_beacon_extended_info:
- frame_ctrl: 776
payload: '............'
seq_ctrl: 772
x: 13.5
y: 3.2
topic: location-unclient
schema:
$ref: '#/components/schemas/webhook_location_unclient'
responses:
'200':
$ref: '#/components/responses/OK'
summary: location
tags:
- Webhook Samples
/webhook_example/_nac_accounting_:
post:
description: 'Webhook sample for `nac-accounting` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: nacAccounting
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- ap: 5c5b355005be
auth_type: eap-tls
bssid: 5c5b35546bb4
client_ip: 172.16.87.4
client_type: wireless
mac: 6e795836d5f9
nas_vendor: juniper-mist
org_id: 625aba64-fe72-4b14-8985-cbf31ec3d78a
rx_pkts: 9523
site_id: ec9d1e85-af24-43f9-8d65-d620580e8631
ssid: Test-CMR SSID
timestamp: 1547235620.89
tx_pkts: 5233
type: NAC_ACCOUNTING_STOP
username: hi
topic: nac-accounting
schema:
$ref: '#/components/schemas/webhook_nac_accounting'
responses:
'200':
$ref: '#/components/responses/OK'
summary: nacAccounting
tags:
- Webhook Samples
/webhook_example/_nac_events_:
post:
description: Example Delivery of nac-events
operationId: nac-events
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- ap: 5c5b35513227
auth_type: 802.1X
bssid: 5c5b355fafcc
dryrun_nacrule_id: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264012
dryrun_nacrule_matched: true
idp_id: 912ef72e-2239-4996-b81e-469e87a27cd6
idp_role:
- itsuperusers
- vip
mac: ac3eb179e535
nacrule_id: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264c62
nacrule_matched: true
nas_vendor: juniper-mist
org_id: 27547ac2-d114-4e04-beb1-f3f1e6e81ec6
random_mac: true
resp_attrs:
- Tunnel-Type=VLAN
- Tunnel-Medium-Type=IEEE-802
- Tunnel-Private-Group-Id=750
- User-Name=anonymous
site_id: 441a1214-6928-442a-8e92-e1d34b8ec6a6
ssid: '##mist_nac'
timestamp: 1691512031.358188
type: NAC_CLIENT_PERMIT
username: user@deaflyz.net
vlan: '750'
topic: string
schema:
$ref: '#/components/schemas/webhook_nac_events'
responses:
'200':
$ref: '#/components/responses/OK'
summary: nac-events
tags:
- Webhook Samples
/webhook_example/_occupancy_alerts_:
post:
description: 'Webhook sample for `occupancy_alerts` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: occupancyAlerts
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- alert_events:
- current_occupancy: 0
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
occupancy_limit: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
timestamp: 0
type: COMPLIANCE-VIOLATION
zone_id: 4495020a-236f-46e0-9453-e3f9cc6476f4
zone_name: string
for_site: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
site_name: string
topic: occupancy-alerts
schema:
$ref: '#/components/schemas/webhook_occupancy_alerts'
responses:
'200':
$ref: '#/components/responses/OK'
summary: occupancyAlerts
tags:
- Webhook Samples
/webhook_example/_ping_:
post:
description: 'Webhook sample for `ping` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: ping
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- id: 487f6eca-6276-4993-bfeb-f3cbbbba4f08
name: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
timestamp: 0
topic: ping
schema:
$ref: '#/components/schemas/webhook_ping'
responses:
'200':
$ref: '#/components/responses/OK'
summary: ping
tags:
- Webhook Samples
/webhook_example/_sdkclient_scan_data:
post:
description: 'Webhook sample for `sdkclient_scan_data` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: sdkclientScanData
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- connection_ap: 5c5b352f587e
connection_band: '2.4'
connection_bssid: 5c5b352b51b4
connection_channel: 11
connection_rssi: -87
last_seen: 1592333828
mac: 70ef0071535f
scan_data:
- ap: 5c5b352f587e
band: '2.4'
bssid: 5c5b352b51b4
channel: 11
rssi: -87
ssid: mist-wifi
timestamp: 1592333828
- ap: 5c5b352f587e
band: '5'
bssid: 5c5b352b51b8
channel: 36
rssi: -75
ssid: mist-wifi
timestamp: 1592333828
site_id: d761985e-49b1-4506-88e9-e0368a05c301
topic: sdkclient-scan-data
schema:
$ref: '#/components/schemas/webhook_sdkclient-scan-data'
responses:
'200':
$ref: '#/components/responses/OK'
summary: sdkclientScanData
tags:
- Webhook Samples
/webhook_example/_site_sle_:
post:
description: 'Webhook sample for `site-sle` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: site-sle
requestBody:
content:
application/json:
examples:
Example:
value:
events:
- org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
sle:
ap-availability: 0.6
successful-connect: 0.7
time-to-connect: 0.9
timestamp: 1694620800
topic: site-sle
schema:
$ref: '#/components/schemas/webhook_site_sle'
description: ''
responses:
'200':
$ref: '#/components/responses/OK'
summary: site-sle
tags:
- Webhook Samples
/webhook_example/_zone_:
post:
description: 'Webhook sample for `zone` topic
**Note**: The server host will be your own server FQDN where the Mist Cloud
is sending the webhook messages'
operationId: zone
requestBody:
content:
application/json:
examples:
example-1:
value:
events:
- asset_id: b4695157-0d1d-4da0-8f9e-5c53149389e4
id: 485f6eca-6276-4993-bfeb-54cbbbba5f08
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
name: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
timestamp: 0
trigger: enter
type: string
zone_id: 4495020a-236f-46e0-9453-e3f9cc6476f4
topic: zone
schema:
$ref: '#/components/schemas/webhook_zone'
responses:
'200':
$ref: '#/components/responses/OK'
summary: zone
tags:
- Webhook Samples
components:
parameters:
account_id:
in: path
name: account_id
required: true
schema:
example: iojzXIJWEuiD73ZvydOfg
type: string
admin_id:
in: path
name: admin_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
alarm_id:
in: path
name: alarm_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
alarmtemplate_id:
in: path
name: alarmtemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
apitoken_id:
in: path
name: apitoken_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
aptemplate_id:
in: path
name: aptemplate_id
required: true
schema:
format: uuid
type: string
asset_id:
in: path
name: asset_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
assetfilter_id:
in: path
name: assetfilter_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
beacon_id:
in: path
name: beacon_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
client_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listClientEventsDefinitions)
in: query
name: type
schema:
type: string
client_mac:
in: path
name: client_mac
required: true
schema:
example: 0000000000ab
pattern: ^[0-9a-fA-F]{12}$
type: string
country_code:
description: country code, in two-character
in: query
name: country_code
schema:
example: US
pattern: ^[a-zA-Z]{2}$
type: string
device_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listDeviceEventsDefinitions)
in: query
name: type
schema:
type: string
device_id:
in: path
name: device_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
device_mac:
in: path
name: device_mac
required: true
schema:
example: 0000000000ab
pattern: ^[0-9a-fA-F]{12}$
type: string
deviceprofile_id:
in: path
name: deviceprofile_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
dot11_band:
description: 802.11 Band
in: query
name: band
schema:
$ref: '#/components/schemas/dot11_band'
dot11_proto:
description: a / b / g / n / ac / ax
in: query
name: proto
schema:
$ref: '#/components/schemas/dot11_proto'
duration:
description: duration like 7d, 2w
in: query
name: duration
required: false
schema:
default: 1d
example: 10m
type: string
end:
description: end datetime, can be epoch or relative time like -1d, -2h; now
if not specified
in: query
name: end
schema:
type: integer
evpn_topology_id:
in: path
name: evpn_topology_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
fields:
description: list of additional fields requests, comma separeted, or `fields=*`
for all of them
in: query
name: fields
required: false
schema:
example: field1,field2
type: string
gatewaytemplate_id:
in: path
name: gatewaytemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
guest_mac:
in: path
name: guest_mac
required: true
schema:
example: 0000000000ab
pattern: ^[0-9a-fA-F]{12}$
type: string
idpprofile_id:
in: path
name: idpprofile_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
image_name:
in: path
name: image_name
required: true
schema:
type: string
interval:
description: Aggregation works by giving a time range plus interval (e.g. 1d,
1h, 10m) where aggregation function would be applied to.
in: query
name: interval
required: false
schema:
example: 10m
type: string
invite_id:
in: path
name: invite_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
ip:
in: query
name: ip_address
required: false
schema:
example: 192.168.1.1
format: ipv4
type: string
limit:
in: query
name: limit
required: false
schema:
default: 100
minimum: 0
type: integer
map_id:
in: path
name: map_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
metric:
description: see /api/v1/const/insight_metrics for available metrics
in: path
name: metric
required: true
schema:
type: string
msp_id:
in: path
name: msp_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
mxcluster_id:
in: path
name: mxcluster_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
mxedge_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listMxedgeEventsDefinitions)
in: query
name: type
schema:
type: string
mxedge_id:
in: path
name: mxedge_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
mxtunnel_id:
in: path
name: mxtunnel_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
nac_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listNacEventsDefinitions)
in: query
name: type
schema:
type: string
naccrl_id:
in: path
name: naccrl_id
required: true
schema:
format: uuid
type: string
nacportal_id:
in: path
name: org_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
nacrule_id:
in: path
name: nacrule_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
nactag_id:
in: path
name: nactag_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
name:
in: query
name: name
required: false
schema:
default: ''
type: string
network_id:
in: path
name: network_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
networktemplate_id:
in: path
name: networktemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
org_id:
in: path
name: org_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
orggroup_id:
in: path
name: orggroup_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
otherdevice_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listOtherDeviceEventsDefinitions)
in: query
name: type
schema:
type: string
page:
in: query
name: page
required: false
schema:
default: 1
minimum: 1
type: integer
pcap_id:
in: path
name: pcap_id
required: true
schema:
format: uuid
type: string
psk_id:
description: PSK ID
in: path
name: psk_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
psk_id_query:
description: PSK ID
in: query
name: psk_id
required: false
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
pskportal_id:
in: path
name: pskportal_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
q:
description: search string
in: query
name: q
schema:
default: ''
example: search
type: string
resolution:
in: query
name: resolution
schema:
default: default
enum:
- default
- fine
title: Resolution
type: string
rfdiag_id:
in: path
name: rfdiag_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
rftemplate_id:
in: path
name: rftemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
rogue_bssid:
in: path
name: rogue_bssid
required: true
schema:
example: 0000000000ab
pattern: ^[0-9a-fA-F]{12}$
type: string
rogue_type:
in: query
name: type
schema:
enum:
- honeypot
- lan
- others
- spoof
title: Rogue Type
type: string
rssizone_id:
in: path
name: rssizone_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
sdkclient_id:
in: path
name: sdkclient_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
sdkinvite_id:
in: path
name: sdkinvite_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
sdktemplate_id:
in: path
name: sdktemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
secpolicy_id:
in: path
name: secpolicy_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
secret:
in: path
name: secret
required: true
schema:
type: string
service_id:
in: path
name: service_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
servicepolicy_id:
in: path
name: servicepolicy_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
site_id:
in: path
name: site_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
site_name:
in: path
name: site_name
required: true
schema:
type: string
sitegroup_id:
in: path
name: sitegroup_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
sitetemplate_id:
in: path
name: sitetemplate_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
sso_id:
in: path
name: sso_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
ssorole_id:
in: path
name: ssorole_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
start:
description: start datetime, can be epoch or relative time like -1d, -1w; -1d
if not specified
in: query
name: start
schema:
type: integer
system_event_type:
description: see [listDeviceEventsDefinitions](/#operation/listSystemEventsDefinitions)
in: query
name: type
schema:
type: string
template_id:
in: path
name: template_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
ticket_id:
in: path
name: ticket_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
token:
in: path
name: token
required: true
schema:
type: string
uisetting_id:
in: path
name: uisetting_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
upgrade_id:
in: path
name: upgrade_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
vbeacon_id:
in: path
name: vbeacon_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
vpn_id:
in: path
name: vpn_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
webhook_id:
in: path
name: webhook_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
wlan_id:
in: path
name: wlan_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
wxrules_id:
in: path
name: wxrules_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
wxtag_id:
in: path
name: wxtag_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
wxtunnel_id:
in: path
name: wxtunnel_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
zone_id:
in: path
name: zone_id
required: true
schema:
example: 000000ab-00ab-00ab-00ab-0000000000ab
format: uuid
type: string
zone_type:
in: path
name: zone_type
required: true
schema:
enum:
- zones
- rssizones
title: Zone Type
type: string
responses:
AccountJseInfo:
content:
application/json:
schema:
$ref: '#/components/schemas/account_jse_info'
description: OK
Admin:
content:
application/json:
examples:
example-1:
value:
admin_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
schema:
$ref: '#/components/schemas/admin'
description: OK
AdminsArray:
content:
application/json:
examples:
example-1:
value:
- admin_id: 456b7016-a916-a4b1-78dd-72b947c152b7
email: jsmith@mycorp.org
first_name: Joe
last_name: Smith
privileges:
- role: admin
scope: msp
- org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
- orggroup_ids:
- 507f1bab-13ba-73e2-f291-2bcb8d1362b0
role: read
scope: orggroup
example-2:
value:
- admin_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
email: user@example.com
first_name: string
last_name: string
privileges:
- msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
msp_name: string
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
org_name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: admin
scope: org
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
schema:
$ref: '#/components/schemas/admin_array'
description: OK
AlarmsSearch:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_search_result'
description: OK
Alarmtemplate:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_template'
description: OK
AlarmtemplatesArray:
content:
application/json:
schema:
$ref: '#/components/schemas/alarm_template_array'
description: OK
AnomalyMetrics:
content:
application/json:
schema:
$ref: '#/components/schemas/anomaly_search_result'
description: OK
ApitokenOrg:
content:
application/json:
examples:
Example:
value:
created_by: user@mycorp.com
created_time: 1626875902
id: 497f6eca-6276-4993-bfeb-53efbbba6f08
key: 1qkb...QQCL
last_used: 1690115110
name: org_token_xyz
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
privileges:
- org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
role: admin
scope: org
schema:
$ref: '#/components/schemas/org_apitoken'
description: OK
ApitokenUser:
content:
application/json:
examples:
Example:
value:
created_time: 1626875902
id: 864f351a-1377-4ad9-83f8-72f3fe6199ba
key: 1qkb...QQCL
last_used: 1690115110
name: org_token_xyz
schema:
$ref: '#/components/schemas/user_apitoken'
description: OK
ApitokensOrgArray:
content:
application/json:
examples:
Example:
value:
- created_by: user@mycorp.com
created_time: 1626875902
id: 497f6eca-6276-4993-bfeb-53f0bbba6f08
key: 1qkb...QQCL
last_used: 1690115110
name: org_token_xyz
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
privileges:
- org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
role: admin
scope: org
schema:
items:
$ref: '#/components/schemas/org_apitoken'
type: array
description: OK
ApitokensUserArray:
content:
application/json:
examples:
Example:
value:
- created_time: 1626875902
id: 864f351a-1377-4ad9-83f8-72f3fe6199ba
key: 1qkb...QQCL
last_used: 1690115110
name: org_token_xyz
schema:
items:
$ref: '#/components/schemas/user_apitoken'
type: array
description: OK
Aptemplate:
content:
application/json:
examples:
Example:
value:
ap_matching:
enabled: true
rules:
- match_model: string
name: string
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
created_time: 0
for_site: true
id: 497f6eca-6276-4993-bfeb-53cbbbba8f08
modified_time: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: true
enable_arp_spoof: true
enable_shared_radio_scanning: false
enabled: true
locate_connected: false
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: true
mesh_enabled: true
proxy_arp: false
schema:
$ref: '#/components/schemas/ap_template'
description: AP Template
AptemplatesArray:
content:
application/json:
examples:
Example:
value:
- ap_matching:
enabled: true
rules:
- match_model: string
name: string
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
created_time: 0
for_site: true
id: 497f6eca-6276-4993-bfeb-53cbbbba9f08
modified_time: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: true
enable_arp_spoof: true
enable_shared_radio_scanning: false
enabled: true
locate_connected: false
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: true
mesh_enabled: true
proxy_arp: false
schema:
items:
$ref: '#/components/schemas/ap_template'
type: array
description: Example response
Asset:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
tag_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
schema:
$ref: '#/components/schemas/asset'
description: OK
AssetOfInterestArray:
content:
application/json:
examples:
example-1:
value:
- _checkpoint_prep: 0
_checkpoint_preparer: 0
_checkpoint_scan: 0
_id: string
_timestamp: 0
_ttl: 0
ap_mac: string
beam: 0
by: string
curr_site: string
device_name: string
id: string
last_seen: 0
mac: string
manufacture: string
map_id: string
name: string
rssi: 0
schema:
items:
$ref: '#/components/schemas/asset_of_interest'
type: array
description: Example response
AssetStats:
content:
application/json:
examples:
example-1:
value:
battery_voltage: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
last_seen: 0
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
name: string
rssizones:
- id: 480f6eca-6276-4993-bfeb-59cbbbbaaf08
since: 0
x: 0
y: 0
zones:
- id: 479f6eca-6276-4993-bfeb-5acbbbbabf08
since: 0
schema:
$ref: '#/components/schemas/asset_stats'
description: OK
Assetfilter:
content:
application/json:
examples:
example-1:
value:
created_time: 0
disasbled: true
eddystone_uid_namespace: string
eddystone_url: string
for_site: true
ibeacon_major: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mfg_company_id: 0
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/asset_filter'
description: OK
AssetfiltersArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/asset_filter'
type: array
description: OK
AssetsArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/asset'
type: array
description: OK
AssetsArrayStats:
content:
application/json:
examples:
example-1:
value:
- battery_voltage: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
last_seen: 0
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
name: string
rssizones:
- id: 478f6eca-6276-4993-bfeb-5bcbbbbacf08
since: 0
x: 0
y: 0
zones:
- id: 477f6eca-6276-4993-bfeb-5ccbbbbadf08
since: 0
schema:
items:
$ref: '#/components/schemas/asset_stats'
type: array
description: OK
AssetsArrayStatsSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
next: string
results:
- battery_voltage: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: 1f89bc00-d0af-481b-82fe-a6629259a39f
last_seen: 0
mac: string
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
name: string
rssizones:
- id: 476f6eca-6276-4993-bfeb-5dcbbbbaef08
since: 0
x: 0
y: 0
zones:
- id: 475f6eca-6276-4993-bfeb-5ecbbbbf6f08
since: 0
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/asset_stats'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- start
- end
- limit
- total
- results
type: object
description: OK
AssignSuccess:
content:
application/json:
examples:
example-1:
value:
success:
- 5c5b350e0001
schema:
properties:
success:
items:
type: string
type: array
required:
- success
type: object
description: OK - list only devices that has deviceprofile_id changed
AutoOrientation:
content:
application/json:
examples:
enqueued:
value:
state: Not Started
time_queued: 1675414259
not-started:
value:
state: Not Started
time_queued: -1
oriented:
value:
state: Oriented
time_queued: 1675414259
schema:
properties:
state:
description: The state of auto orient for a given map derived from
an Enum
enum:
- Not Started
- Enqueued
- Oriented
title: auto_orientation_state
type: string
time_queued:
description: Time when auto orient process was last queued for this
map
type: number
type: object
description: Map queued for auto orientation
AutoOrientationFailed:
content:
application/json:
examples:
Example:
value:
detail: Map has less than 3 APs associated with it to perform auto
orient
Example-2:
value:
detail: Auto AP orient is already in progress for this Map
Example-3:
value:
detail: Auto orient data does not exist or has gone stale
schema:
properties:
detail:
type: string
type: object
description: Bad Request
AutoPlacementInfo:
content:
application/json:
examples:
done:
value:
end_time: 1678900362
start_time: 1678900062
status: done
error:
value:
end_time: 1678900362
start_time: 1678900062
status: error
in-Progress:
value:
est_time_left: 300
start_time: 1678900062
status: inprogress
pending:
value:
status: pending
schema:
properties:
end_time:
description: time when autoplacement completed or was manually stopped
type: number
est_time_left:
description: (Only when inprogress) estimate of the time to completion
type: number
start_time:
description: time when autoplacement process was last queued for this
map
type: number
status:
description: the status of autoplacement for a given map
enum:
- pending
- inprogress
- done
- error
title: auto_placement_status
type: string
type: object
description: OK
Beacon:
content:
application/json:
examples:
example-1:
value:
created_time: 0
eddystone_instance: string
eddystone_namespace: string
eddystone_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 0
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
type: eddystone-uid
x: 0
y: 0
schema:
$ref: '#/components/schemas/beacon'
description: OK
BeaconsArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
eddystone_instance: string
eddystone_namespace: string
eddystone_url: string
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 0
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
type: eddystone-uid
x: 0
y: 0
schema:
items:
$ref: '#/components/schemas/beacon'
minItems: 0
type: array
description: OK
BgpStatsArraySearch:
content:
application/json:
examples:
Example:
value:
end: 0
limit: 0
results:
- evpn_overlay: true
for_overlay: true
local_as: 65000
mac: 020001c04668
neighbor: 15.8.3.5
neighbor_as: 65000
neighbor_mac: 020001c04600
node: node0
org_id: 0c160b7f-1027-4cd1-923b-744534c4b070
rx_pkts: 63366
rx_routes: 60
site_id: 725a8d34-a126-4f2c-b990-d1219421cb75
state: established
timestamp: 1666251056.07
tx_pkts: 1735
tx_routes: 60
up: true
uptime: 31355
vrf_name: default
start: 0
total: 0
schema:
properties:
end:
type: number
limit:
type: integer
results:
items:
$ref: '#/components/schemas/bgp_stats'
type: array
start:
type: number
total:
type: integer
type: object
description: Example response
CallStatsArray:
content:
application/json:
examples: {}
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/call_stats'
type: array
start:
type: number
total:
type: integer
type: object
description: Example response
CallTroubleshoot:
content:
application/json:
examples:
Example:
value:
mac: 983a78ea4a44
meeting_id: b784d744-9a7c-4fad-9af0-f78858a319b1
results:
- audio_in:
ap_num_clients: -0.6565111
ap_rtt: 0.16559607
client_cpu: 3.7028809
client_n_streams: 0.15803306
client_radio_band: 0.5576923
client_rssi: -1.0839354
client_rx_bytes: 2.2622051
client_rx_rates: 0.62357205
client_rx_retries: 0.26726437
client_tx_bytes: 0.15803306
client_tx_rates: 0.62357205
client_tx_retries: 0.77553505
client_vpn_distaince: 1.6474955
client_wifi_version: 0.18267937
expected: 30.941595
radio_bandwidth: -0.06538621
radio_channel: -0.73391086
radio_tx_power: 0.10027129
radio_util: 12.770318
radio_util_interference: -3.079999
site_num_clients: 0.017364305
wan_avg_download_mbps: 1.4803165
wan_avg_upload_mbps: -0.038184267
wan_jitter: 5.9680853
wan_max_download_mbps: 1.4803165
wan_max_upload_mbps: -0.038184267
wan_rtt: 46.77899
audio_out:
ap_num_clients: -0.6565111
ap_rtt: 0.16559607
client_cpu: 3.7028809
client_n_streams: 0.15803306
client_radio_band: 0.5576923
client_rssi: -1.0839354
client_rx_bytes: 2.2622051
client_rx_rates: 0.62357205
client_rx_retries: 0.26726437
client_tx_bytes: 0.15803306
client_tx_rates: 0.62357205
client_tx_retries: 0.77553505
client_vpn_distaince: 1.6474955
client_wifi_version: 0.18267937
expected: 30.941595
radio_bandwidth: -0.06538621
radio_channel: -0.73391086
radio_tx_power: 0.10027129
radio_util: 12.770318
radio_util_interference: -3.079999
site_num_clients: 0.017364305
wan_avg_download_mbps: 1.4803165
wan_avg_upload_mbps: -0.038184267
wan_jitter: 5.9680853
wan_max_download_mbps: 1.4803165
wan_max_upload_mbps: -0.038184267
wan_rtt: 46.77899
timestamp: 1695425115
video_in:
ap_num_clients: -0.6565111
ap_rtt: 0.16559607
client_cpu: 3.7028809
client_n_streams: 0.15803306
client_radio_band: 0.5576923
client_rssi: -1.0839354
client_rx_bytes: 2.2622051
client_rx_rates: 0.62357205
client_rx_retries: 0.26726437
client_tx_bytes: 0.15803306
client_tx_rates: 0.62357205
client_tx_retries: 0.77553505
client_vpn_distaince: 1.6474955
client_wifi_version: 0.18267937
expected: 30.941595
radio_bandwidth: -0.06538621
radio_channel: -0.73391086
radio_tx_power: 0.10027129
radio_util: 12.770318
radio_util_interference: -3.079999
site_num_clients: 0.017364305
wan_avg_download_mbps: 1.4803165
wan_avg_upload_mbps: -0.038184267
wan_jitter: 5.9680853
wan_max_download_mbps: 1.4803165
wan_max_upload_mbps: -0.038184267
wan_rtt: 46.77899
video_out:
ap_num_clients: -0.6565111
ap_rtt: 0.16559607
client_cpu: 3.7028809
client_n_streams: 0.15803306
client_radio_band: 0.5576923
client_rssi: -1.0839354
client_rx_bytes: 2.2622051
client_rx_rates: 0.62357205
client_rx_retries: 0.26726437
client_tx_bytes: 0.15803306
client_tx_rates: 0.62357205
client_tx_retries: 0.77553505
client_vpn_distaince: 1.6474955
client_wifi_version: 0.18267937
expected: 30.941595
radio_bandwidth: -0.06538621
radio_channel: -0.73391086
radio_tx_power: 0.10027129
radio_util: 12.770318
radio_util_interference: -3.079999
site_num_clients: 0.017364305
wan_avg_download_mbps: 1.4803165
wan_avg_upload_mbps: -0.038184267
wan_jitter: 5.9680853
wan_max_download_mbps: 1.4803165
wan_max_upload_mbps: -0.038184267
wan_rtt: 46.77899
schema:
$ref: '#/components/schemas/call_troubleshoot'
description: Example response
CallTroubleshootSummary:
content:
application/json:
examples:
Example:
value:
mac: 983a78ea4a44
meeting_id: b784d744-9a7c-4fad-9af0-f78858a319b1
results:
- audio_in:
ap_num_clients: 45.48306793636746
ap_rtt: 6.352042701509264
client_cpu: 9.323452578650581
client_radio_band: 1.5325644097982958e-06
client_rssi: 17.251008563571506
client_tx_bytes: 1.8379177401463191
client_tx_rates: 10.668423069847954
client_tx_retries: 43.323209603627525
client_vpn_distance: 112.4420166015625
expected: 29.74261474609375
radio_bandwidth: -0.1533682727151447
radio_channel: 0.662909648484654
radio_util: 27.891777674357098
radio_util_interference: 4.38913492154744
site_num_clients: -0.2855822932389047
site_wan_avg_upload_mpbs: -0.988989942603641
site_wan_jitter: 0.7875519659784105
site_wan_rtt: 15.094849904378256
site_wan_upload_mpbs: -0.8131117953194512
audio_out:
ap_num_clients: 45.48306793636746
ap_rtt: 6.352042701509264
client_cpu: 9.323452578650581
client_radio_band: 1.5325644097982958e-06
client_rssi: 17.251008563571506
client_tx_bytes: 1.8379177401463191
client_tx_rates: 10.668423069847954
client_tx_retries: 43.323209603627525
client_vpn_distance: 112.4420166015625
expected: 29.74261474609375
radio_bandwidth: -0.1533682727151447
radio_channel: 0.662909648484654
radio_util: 27.891777674357098
radio_util_interference: 4.38913492154744
site_num_clients: -0.2855822932389047
site_wan_avg_upload_mpbs: -0.988989942603641
site_wan_jitter: 0.7875519659784105
site_wan_rtt: 15.094849904378256
site_wan_upload_mpbs: -0.8131117953194512
timestamp: 1695425115
video_in:
ap_num_clients: 45.48306793636746
ap_rtt: 6.352042701509264
client_cpu: 9.323452578650581
client_radio_band: 1.5325644097982958e-06
client_rssi: 17.251008563571506
client_tx_bytes: 1.8379177401463191
client_tx_rates: 10.668423069847954
client_tx_retries: 43.323209603627525
client_vpn_distance: 112.4420166015625
expected: 29.74261474609375
radio_bandwidth: -0.1533682727151447
radio_channel: 0.662909648484654
radio_util: 27.891777674357098
radio_util_interference: 4.38913492154744
site_num_clients: -0.2855822932389047
site_wan_avg_upload_mpbs: -0.988989942603641
site_wan_jitter: 0.7875519659784105
site_wan_rtt: 15.094849904378256
site_wan_upload_mpbs: -0.8131117953194512
video_out:
ap_num_clients: 45.48306793636746
ap_rtt: 6.352042701509264
client_cpu: 9.323452578650581
client_radio_band: 1.5325644097982958e-06
client_rssi: 17.251008563571506
client_tx_bytes: 1.8379177401463191
client_tx_rates: 10.668423069847954
client_tx_retries: 43.323209603627525
client_vpn_distance: 112.4420166015625
expected: 29.74261474609375
radio_bandwidth: -0.1533682727151447
radio_channel: 0.662909648484654
radio_util: 27.891777674357098
radio_util_interference: 4.38913492154744
site_num_clients: -0.2855822932389047
site_wan_avg_upload_mpbs: -0.988989942603641
site_wan_jitter: 0.7875519659784105
site_wan_rtt: 15.094849904378256
site_wan_upload_mpbs: -0.8131117953194512
schema:
$ref: '#/components/schemas/call_troubleshoot_summary'
description: Example response
Certificate:
content:
application/json:
examples:
example-1:
value:
cert: '-----BEGIN CERTIFICATE-----
MIIowDQYJKoZIhvcNAQELBQE
-----END CERTIFICATE-----'
schema:
properties:
cert:
type: string
required:
- cert
type: object
description: OK
ClaimLicense:
content:
application/json:
examples:
licenses-successfully-claimed-and-applied:
value:
inventory_added:
- mac: 5c5b35000018
magic: 6JG8EPTFV2A9Z2N
model: AP41
serial: FXLH2015150025
type: ap
inventory_duplicated:
- mac: 5c5b35000012
magic: DVH4VSNMSZPDXBR
model: AP41
serial: FXLH2015150027
type: ap
license_added:
- end: 1520380800
quantity: 180
start: 1504828800
type: SUB-MAN
- end: 1520380800
quantity: 120
start: 1504828800
type: SUB-LOC
license_duplicated:
- end: 1520380800
quantity: 180
start: 1504828800
type: SUB-MAN
license_error:
- order: '00000464'
reason: ''
schema:
properties:
inventory_added:
items:
properties:
mac:
type: string
magic:
type: string
model:
type: string
serial:
type: string
type:
type: string
required:
- serial
- model
- type
- magic
- mac
minItems: 1
type: array
uniqueItems: true
inventory_duplicated:
items:
properties:
mac:
type: string
magic:
type: string
model:
type: string
serial:
type: string
type:
type: string
required:
- serial
- model
- type
- magic
- mac
minItems: 1
type: array
uniqueItems: true
license_added:
items:
properties:
end:
type: integer
quantity:
type: integer
start:
type: integer
type:
type: string
required:
- type
- start
- end
- quantity
minItems: 1
type: array
uniqueItems: true
license_duplicated:
items:
properties:
end:
type: integer
quantity:
type: integer
start:
type: integer
type:
type: string
required:
- type
- start
- end
- quantity
minItems: 1
type: array
uniqueItems: true
license_error:
items:
properties:
order:
type: string
reason:
type: string
required:
- order
- reason
minItems: 1
type: array
uniqueItems: true
required:
- license_added
- license_duplicated
- license_error
- inventory_added
- inventory_duplicated
type: object
description: OK
ClaimMxedge:
content:
application/json:
examples:
example-1:
value:
id: 95ddd29a-6a3c-929e-a431-51a5b09f36a6
magic: ExNpT5gi-ADR8WTFd4EiQPY3cP5WdSoD
schema:
properties:
id:
format: uuid
type: string
magic:
type: string
required:
- id
- magic
type: object
description: OK
ClientEventsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1513176951
limit: 10
results:
- ap: 5c5b350eb31b
band: '5'
bssid: 5c5b350918f1
channel: 149
proto: ac
ssid: Guest
text: Status code 0 "Successful"
timestamp: 1513358874.667
type: CLIENT_DNS_OK
type_code: 15
wlan_id: be22bba7-8e22-e1cf-5185-b880816fe2cf
start: 1512572151
total: 1
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_client'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- start
- end
- limit
- total
- results
type: object
description: OK
ClientNacSearch:
content:
application/json:
examples:
Example:
value:
end: 1513362753
limit: 3
results:
- ap:
- 5c5b35bf16bb
- d4dc090041b4
auth_type: eap-tls
cert_cn:
- string
cert_issuer:
- string
idp_id: string
idp_role:
- string
last_ap: string
last_cert_cn: string
last_cert_expiry: 0
last_cert_issuer: string
last_nacrule_id: string
last_nacrule_name: string
last_nas_vendor: string
last_ssid: string
last_status: string
mac: string
nacrule_id:
- string
nacrule_matched: true
nacrule_name:
- string
nas_vendor:
- string
org_id: 31f27122-68a9-47a4-b526-8fb8a62a8acb
random_mac: true
site_id: 832b1d74-9531-409b-ae37-4d7f3edbde92
ssid:
- string
timestamp: 1694689718.612
type: wireless
start: 1513276353
total: 2
schema:
properties:
end:
example: 1513362753
type: integer
limit:
example: 3
type: integer
results:
$ref: '#/components/schemas/nac_clients'
start:
example: 1513276353
type: integer
total:
example: 2
type: integer
type: object
description: Example response
ClientSessionsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1513177200
limit: 10
results:
- ap: 5c5b350e0262
band: '5'
client_manufacture: Apple
connect: 1565208388
disconnect: 1565208448
duration: 60.09423865
mac: b019c66c8348
org_id: 3139f2c2-fac6-11e5-8156-0242ac110006
site_id: 70e0f468-fc13-11e5-85ad-0242ac110008
ssid: Dummy WLAN 2
tags:
- disassociate
timestamp: 1565208448.662
wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc
start: 1511967600
total: 100
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
ap:
readOnly: true
type: string
band:
readOnly: true
type: string
client_manufacture:
readOnly: true
type: string
connect:
readOnly: true
type: number
disconnect:
readOnly: true
type: number
duration:
readOnly: true
type: number
mac:
readOnly: true
type: string
org_id:
format: uuid
readOnly: true
type: string
site_id:
$ref: '#/components/schemas/site_id'
ssid:
readOnly: true
type: string
tags:
items:
type: string
readOnly: true
type: array
timestamp:
type: number
wlan_id:
format: uuid
type: string
required:
- ap
- band
- client_manufacture
- connect
- disconnect
- duration
- mac
- org_id
- site_id
- ssid
- timestamp
- wlan_id
title: client_session
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
ClientsSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
results:
- ap: string
band: '24'
bssid: string
channel: 0
proto: a
ssid: string
text: string
timestamp: 0
type: string
type_code: 0
wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_client'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- start
- end
- limit
- total
- results
type: object
description: OK
ConfigsHistorySearch:
content:
application/json:
examples:
example-1:
value:
end: 1531862583
limit: 10
results:
- channel_24: 11
channel_5: 100
radio_macs:
- 5c5b352e000a
- 5c5b352e000b
- 5c5b352e000c
radios:
- band: '24'
channel: 11
- band: '5'
channel: 100
secpolicy_violated: false
ssids:
- test24
- test5
ssids_24:
- test24
ssids_5:
- test5
timestamp: 1531855856.643369
version: apfw-0.2.14754-cersei-75c8
wlans:
- auth: psk
bands:
- '24'
id: be22bba7-8e22-e1cf-5185-b880816fe2cf
ssid: test24
vlan_ids:
- '1'
- auth: psk
bands:
- '5'
id: f8c18724-4118-3487-811a-f98964988604
ssid: test5
vlan_ids:
- '1'
start: 1531776183
total: 1
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
channel_24:
type: integer
channel_5:
type: integer
radio_macs:
items:
type: string
type: array
radios:
items:
properties:
band:
type: string
channel:
type: integer
required:
- band
- channel
type: object
minItems: 1
type: array
uniqueItems: true
secpolicy_violated:
type: boolean
ssids:
items:
type: string
type: array
ssids_24:
items:
type: string
type: array
ssids_5:
items:
type: string
type: array
timestamp:
type: number
version:
type: string
wlans:
items:
properties:
auth:
type: string
bands:
items:
type: string
type: array
id:
format: uuid
type: string
ssid:
type: string
vlan_ids:
items:
type: string
type: array
required:
- auth
- id
- ssid
type: object
minItems: 1
type: array
uniqueItems: true
required:
- channel_24
- channel_5
- secpolicy_violated
- timestamp
- version
title: config_history
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
ConstAlarmDefinitions:
content:
application/json:
examples:
Example:
value:
- display: Device offline
example:
aps:
- d420b02000fa
count: 1
group: infrastructure
hostnames:
- Vendor_AP2
id: e70c308f-7007-4866-9ecd-0d01842979ea
last_seen: 1629753888
org_id: 09dac91f-6e73-4100-89f7-698e0fafbb1b
severity: warn
site_id: dcfb31a1-d615-4361-8c95-b9dde05aa704
timestamp: 1629753888
type: device_down
fields:
- aps
- hostnames
group: infrastructure
key: device_down
marvis_suggestion_category: string
severity: warn
schema:
items:
$ref: '#/components/schemas/const_alarm_definition'
type: array
description: List of Alarm Definitions
ConstApChannels:
content:
application/json:
examples:
Example:
value:
band24_40mhz_allowed: true
band24_channels:
'20':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
'40':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
band24_enabled: true
band5_channels:
'20':
- 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
'40':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
'80':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
dfs:
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
outdoor:
- 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
band5_enabled: true
band6_channels:
'160':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
'20':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
- 225
- 229
- 233
'40':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
- 225
- 229
'80':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
psc:
- 5
- 21
- 37
- 53
- 69
- 85
- 101
- 117
- 133
- 149
- 165
- 181
- 197
- 213
- 229
band6_enabled: true
certified: true
code: 840
dfs_ok: true
key: US
name: United States
uses: US_FCC
schema:
$ref: '#/components/schemas/const_ap_channel'
description: AP Channels
ConstApLedDefinitions:
content:
application/json:
examples:
Example:
value:
- code: '01'
description: LED not working
key: LED_FAILURE
name: LED Failure
schema:
items:
$ref: '#/components/schemas/const_ap_led'
type: array
description: List of AP Led Status
ConstAppCategoryDefinitions:
content:
application/json:
examples:
Example:
value:
- display: Images
filters:
srx:
- Enhanced_Images_Media
- Enhanced_Web_Images
- Enhanced_Image_Servers
key: Images
- display: Standard
includes:
- Adult
- FileSharing
- Games
- Images
- Malware
- NewsAndReference
- Recreation
- Religion
- Security
- Sports
- Technology
- Violence
key: Standard
schema:
items:
$ref: '#/components/schemas/const_app_category_definition'
type: array
description: List of Application Categories Definitions
ConstAppSubCategoryDefinitions:
content:
application/json:
examples:
Example:
value:
- display: Office Documents
key: Office_Documents
traffic_type: data_interactive
schema:
items:
$ref: '#/components/schemas/const_app_subcategory_definition'
type: array
description: List of Application Sub-categories Definitions
ConstApplications:
content:
application/json:
examples:
Example:
value:
- app_id: true
app_image_url: ''
app_probe: true
category: FileSharing
group: File Sharing
key: dropbox
name: Dropbox
signature_based: true
ssr_app_id: true
schema:
items:
properties:
app_id:
type: boolean
app_image_url:
example: '""'
type: string
app_probe:
type: boolean
category:
example: FileSharing
type: string
group:
example: File Sharing
type: string
key:
example: dropbox
type: string
name:
example: Dropbox
type: string
signature_based:
type: boolean
ssr_app_id:
type: boolean
type: object
type: array
description: List of Applications
ConstClientEvents:
content:
application/json:
examples:
Example:
value:
- display: 11r Association
key: CLIENT_AUTH_ASSOCIATION_11R
schema:
items:
$ref: '#/components/schemas/const_event'
type: array
description: List of Client Events definitions
ConstCrountries:
content:
application/json:
examples:
Example:
value:
- alpha2: FR
certified: true
name: France
numeric: 250
schema:
items:
$ref: '#/components/schemas/const_country'
type: array
description: List of Countries
ConstDefaultGatewayConfig:
content:
application/json:
examples:
Example:
value:
dhcpd_config:
lan:
ip_end: 192.168.1.254
ip_start: 192.168.1.2
ip_configs:
lan:
ip: 192.168.1.1
type: static
networks:
lan:
name: lan
subnet: 192.168.1.0/24
vlan_id: 1
path_preferences:
wan:
paths:
- name: wan
type: wan
port_config:
cl-1/0/0:
ip_config:
type: dhcp
name: lte
usage: wan
wan_type: lte
ge-0/0/0,ge-0/0/7:
ip_config:
type: dhcp
name: wan
usage: wan
ge-0/0/1-6:
port_network: lan
usage: lan
service_policies:
- action: allow
name: Internet
path_preference: wan
services:
- any
tenants:
- lan
schema:
additionalProperties: true
type: object
description: OK
ConstDeviceEvents:
content:
application/json:
examples:
Example:
value:
- description: AP was assigned to a site
display: AP Assigned
example:
ap: 5c5b35000001
audit_id: e9a88814-fa81-5bdc-34b0-84e8735420e5
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1552408871
type: AP_ASSIGNED
key: AP_ASSIGNED
schema:
items:
$ref: '#/components/schemas/const_event'
type: array
description: List of Device Events Definitions
ConstDeviceModels:
content:
application/json:
examples:
Example:
value:
- ap_type: jewel
band24:
band5_channels_op: low
max_clients: 128
max_power: 19
min_power: 8
band24_usages:
- '5'
band5:
max_clients: 128
max_power: 17
min_power: 8
band6:
max_clients: 128
max_power: 17
min_power: 8
ce_dfs_ok: true
cisco_pace: true
description: AP-45
disallowed_channels:
property1:
property1:
- 0
property2:
- 0
property2:
property1:
- 0
property2:
- 0
display: AP45
extio:
property1:
default_dir: IN
input: true
output: true
property2:
default_dir: IN
input: true
output: true
fcc_dfs_ok: true
has_11ax: true
has_compass: false
has_ext_ant: true
has_extio: false
has_height: false
has_module_port: true
has_poe_out: true
has_scanning_radio: true
has_selectable_radio: true
has_usb: true
has_vble: true
has_wifi_band24: true
has_wifi_band5: true
has_wifi_band6: true
max_poe_out: 15400
max_wlans: 0
model: AP45
other_dfs_ok: true
outdoor: true
radios:
r0: '6'
r1: '5'
r2: '24'
shared_scanning_radio: true
type: ap
unmanaged: true
vble:
beacon_rate: 4
beams: 9
power: 8
- alias: EX4100-48P-CHAS
defaults:
_ports: ge-0/0/0-47, et-0/1/0-3, xe-0/2/0-3, ge-0/2/0-3
description: Juniper EX4100 Series
display: EX4100-48P
evpn_ri_type: mac-vrf
fans_pluggable: true
has_bgp: true
has_evpn: true
has_irb: true
has_poe_out: true
model: EX4100-48P
number_fans: 2
oc_device: true
oob_interface: re0:mgmt-0, re1:mgmt-0
pic:
'0': ge*48
'1': qsfp+*4
'2': sfp+*4 (uplink)
sub_required: string
type: switch
- defaults:
ha_control_port: ge-0/0/1
ha_data_ports: ge-0/0/2,ge-3/0/2
ha_fxp0_port: ge-0/0/0
ha_lan_ports: ge-0/0/4,ge-3/0/4
ha_wan_ports: ge-0/0/3,ge-3/0/3
lan_ports: ge-0/0/1-6
lte_wan_ports: cl-1/0/0
wan_ports: ge-0/0/0,ge-0/0/7
description: Juniper SRX320 Series
fans_pluggable: false
ha_node1_fpc: 3
has_bgp: true
has_fxp0: false
has_irb: true
model: SRX320
number_fans: 1
oc_device: true
pic:
'0': ge*6, sfp*2
sub_required: wan1
type: gateway
schema:
items:
anyOf:
- $ref: '#/components/schemas/const_device_ap'
- $ref: '#/components/schemas/const_device_switch'
- $ref: '#/components/schemas/const_device_gateway'
- $ref: '#/components/schemas/const_device_unknown'
type: array
description: List of supported device models
ConstGatewayApplications:
content:
application/json:
examples:
Example:
value:
- - app_id: true
key: 4shared
name: 4shared
ssr_app_id: true
schema:
items:
$ref: '#/components/schemas/const_gateway_applications_definition'
type: array
description: List of Alarm Definitions
ConstInsightMetrics:
content:
application/json:
examples:
Example:
value:
bytes:
description: aggregated bytes over time
example:
- 185
- 197
- 250
intervals:
10m:
interval: 600
max_age: 86400
1h:
interval: 3600
max_age: 1209600
report_durations:
1d:
duration: 86400
interval: 3600
1w:
duration: 604800
interval: 3600
report_scopes:
- site
- org
scopes:
- site
- ap
- client
type: timeseries
unit: byte
num_clients:
description: number of client over time
example:
- 18
- null
- 15
intervals:
10m:
interval: 600
max_age: 86400
1h:
interval: 3600
max_age: 1209600
report_durations:
1d:
duration: 86400
interval: 3600
1w:
duration: 604800
interval: 3600
report_scopes:
- site
- org
scopes:
- site
- ap
- device
type: timeseries
unit: ''
schema:
additionalProperties:
properties:
ctype:
items:
type: string
type: array
description:
type: string
example:
items:
anyOf:
- nullable: true
type: integer
- nullable: true
type: number
- nullable: true
type: string
- type: boolean
type: array
intervals:
additionalProperties:
properties:
interval:
type: integer
max_age:
type: integer
type: object
description: Property key is the interval (e.g. 10m, 1h, ...)
type: object
keys:
additionalProperties: true
type: object
params:
additionalProperties:
properties:
required:
type: boolean
type: object
description: Property key is the parameter name
type: object
report_duration:
additionalProperties:
properties:
interval:
type: integer
max_age:
type: integer
type: object
description: Property key is the duration (e.g. 1d, 1w, ...)
type: object
report_scopes:
items:
type: string
type: array
scopes:
items:
enum:
- site
- ap
- client
- switch
- device
- mxedge
type: string
type: array
sle_baselined:
type: boolean
sle_classifiers:
items:
type: string
type: array
type:
type: string
unit:
type: string
values:
additionalProperties: true
type: object
type: object
description: Property key is the metric name
type: object
description: Insight Metrics Definition
ConstLanaguages:
content:
application/json:
examples:
Example:
value:
- display: English (US)
display_native: English (US)
key: en-US
schema:
items:
$ref: '#/components/schemas/const_language'
type: array
description: List of Languages
ConstLicenceTypes:
content:
application/json:
examples:
Example:
value:
- description: Wired Assurance 12
includes:
- sub_ex12a
- sub_ex12p
key: sub_ex12
name: SUB-EX12
schema:
items:
$ref: '#/components/schemas/const_license_type'
type: array
description: List of Licence Types
ConstMxEdgeEvents:
content:
application/json:
examples:
Example:
value:
- description: Config change on ME was triggered as a result of change
made by user
display: ME Config changed by user
example:
audit_id: e9a88814-fa81-5bdc-34b0-84e8735420e5
mxcluster_id: ed4665ed-c9ad-4835-8ca5-dda642765ad3
mxedge_id: 387804a7-3474-85ce-15a2-f9a9684c9c9
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
service: mxagent
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1552408871
type: ME_CONFIG_CHANGED_BY_USER
key: ME_CONFIG_CHANGED_BY_USER
schema:
items:
$ref: '#/components/schemas/const_event'
type: array
description: List of MxEdge Events definitions
ConstMxEdgeModels:
content:
application/json:
examples:
Example:
value:
- display: X10
model: ME-X10
ports:
'0':
display: xe0
speed: 10000
'1':
display: xe1
speed: 10000
'2':
display: xe2
speed: 10000
'3':
display: xe3
speed: 10000
schema:
items:
$ref: '#/components/schemas/const_mxedge_model'
type: array
description: List of MxEdge Models
ConstNacEvents:
content:
application/json:
examples:
Example:
value:
- ap: 5c5b355008c0
bssid: 5c5b35548892
cert_cn: suriyas
cert_expiry: 1711557441
cert_issuer: /DC=net/DC=jnpr/CN=Juniper Networks Issuing AWS1 CA
cert_san_upn:
- suriyas@juniper.net
cert_serial: 1300103d29e56ef083797bedc2000100103d29
cert_subject: /CN=suriyas/emailAddress=suriyas@juniper.net
eap_type: EAP-TLS
nas_vendor: Mist
org_id: 94de66e8-556a-4d56-8780-a114620a5c42
random_mac: true
site_id: b5a005ab-47d4-41f7-97bf-733f9cc252dd
ssid: Test_Suriya-SSID
timestamp: 1685658478.438995
type: NAC_CLIENT_CERT_CHECK_SUCCESS
username: suriyas@juniper.net
wcid: b43637b0-f0d9-0a1d-1ec2-73c394a9f679
schema:
items:
$ref: '#/components/schemas/const_nac_events'
type: array
description: Example response
ConstOtherDeviceEvents:
content:
application/json:
examples:
Example:
value:
- display: Connected to NCM
example:
device_mac: 5c5b351e13b5
mac: 0030447771c0
org_id: c080ce4d-4e35-4373-bdc4-08df15d257f5
site_id: 1df889ad-9111-4c0e-a00b-8a008b83eb68
text: Connected to NCM
timestamp: 1675827825.765
type: CELLULAR_EDGE_CONNECTED_TO_NCM
vendor: cradlepoint
key: CELLULAR_EDGE_CONNECTED_TO_NCM
schema:
items:
$ref: '#/components/schemas/const_event'
type: array
description: List of Other Device Events definitions
ConstOtherDeviceModels:
content:
application/json:
examples:
Example:
value:
- _vendor_model_id: '65'
display: W1850
model: W1850
type: router
vendor: cradlepoint
schema:
items:
properties:
_vendor_model_id:
type: string
display:
type: string
model:
type: string
type:
type: string
vendor:
type: string
type: object
type: array
description: OK
ConstSystemEvents:
content:
application/json:
examples:
Example:
value:
- display: AP Disconnect
group: ap_health
key: ap_disconnected
schema:
items:
$ref: '#/components/schemas/const_event'
type: array
description: List of System Events definitions
ConstTrafficTypes:
content:
application/json:
examples:
Example:
value:
- display: VoIP Video
dscp: 32
failover_policy: non_revertible
max_jitter: 250
max_latency: 1500
max_loss: 35
name: voip_video
traffic_class: medium
schema:
items:
$ref: '#/components/schemas/const_traffic_type'
type: array
description: List of Traffic Types
Count:
content:
application/json:
examples:
Example:
value:
distinct: string
end: 0
limit: 0
results:
- count: 0
property: string
start: 0
total: 0
schema:
properties:
distinct:
type: string
end:
type: integer
limit:
type: integer
results:
$ref: '#/components/schemas/count_results'
start:
type: integer
total:
type: integer
required:
- distinct
- end
- limit
- results
- start
- total
type: object
description: Result of Count
CountMarvisActions:
content:
application/json:
examples:
Example:
value:
distinct: status
limit: 1000
results:
- count: 24
status: 002e176a-0000-000-1111-002e208b20e1
- count: 12
status: 2d3f176a-0000-000-2222-002e208f176a
- count: 15
status: 08b2176a-0000-000-3333-002e208b2d3f
total: 3
schema:
properties:
distinct:
example: status
type: string
limit:
example: 1000
type: integer
results:
example:
- count: 24
status: 002e176a-0000-000-1111-002e208b20e1
- count: 12
status: 2d3f176a-0000-000-2222-002e208f176a
- count: 15
status: 08b2176a-0000-000-3333-002e208b2d3f
items:
additionalProperties:
type: string
properties:
count:
example: 24
type: integer
type: object
type: array
total:
example: 3
type: integer
type: object
description: Marvis Actions Count
DeleteSelfFailed:
content:
application/json:
examples:
if-any-of-the-org-to-be-deleted-still-has-inventory:
value:
detail: inventory not empty
org_id: 424f6eca-7276-4993-bfeb-53cbbbba6f05
schema:
$ref: '#/components/schemas/error_delete_failed'
description: Bad Request
Device:
content:
application/json:
examples:
ap:
value:
aeroscout:
enabled: false
host: aero.pvt.net
locate_connected: true
ble_config:
beacon_enabled: false
beacon_rate: 3
beacon_rate_mode: custom
beam_disabled:
- 1
- 3
- 6
custom_ble_packet_enabled: false
custom_ble_packet_frame: 0x........
custom_ble_packet_freq_msec: 300
eddystone_uid_adv_power: -65
eddystone_uid_beams: 2-4,7
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_adv_power: -65
eddystone_url_beams: 2-4,7
eddystone_url_enabled: true
eddystone_url_freq_msec: 1000
eddystone_url_url: https://www.abc.com
ibeacon_adv_power: -65
ibeacon_beams: 2-4,7
ibeacon_enabled: false
ibeacon_freq_msec: 0
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
power: 10
power_mode: custom
centrak:
enabled: false
client_bridge:
auth:
psk: foryoureyesonly
type: psk
enabled: false
ssid: Uplink-SSID
created_time: 0
deviceprofile_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
disable_eth1: false
disable_eth2: false
disable_eth3: false
disable_module: false
esl_config:
cacert: string
channel: 3
enabled: false
host: 1.1.1.1
port: 0
type: imagotag
verify_cert: true
vlan_id: 1
for_site: true
height: 2.75
id: 497f6eca-6276-4993-bfeb-53cbbbba6008
image1_url: string
image2_url: string
image3_url: string
iot_config:
A1:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A2:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A3:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A4:
enabled: false
name: motion
output: true
pullup: internal
value: 0
DI1:
enabled: false
name: string
pullup: internal
DI2:
enabled: false
name: string
pullup: internal
DO:
enabled: false
name: motion
output: true
pullup: internal
value: 0
ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.1.1
ip6: 2607:f8b0:4005:808::2004
mtu: 0
netmask: 255.255.255.0
netmask6: /32
type: static
type6: static
vlan_id: 1
led:
brightness: 255
enabled: true
locked: true
map_id: 63eda950-c6da-11e4-a628-60f81dd250cc
mesh:
enabled: false
group: 1
role: base
modified_time: 0
name: conference room
notes: slightly off center
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
orientation: 45
poe_passthrough: false
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
pwr_config:
base: 2000
prefer_usb_over_wifi: false
radio_config:
allow_rrm_disable: false
ant_gain_24: 4
ant_gain_5: 5
ant_gain_6: 5
antenna_mode: default
band_24:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_24_usage: '5'
band_5:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_6:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
indoor_use: false
scanning_enabled: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
uplink_port_config:
dot1x: false
keep_wlans_up_if_down: false
usb_config:
cacert: string
channel: 3
enabled: true
host: 1.1.1.1
port: 0
type: imagotag
verify_cert: true
vlan_id: 1
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
x: 53.5
y: 173.1
gateway:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
deviceprofile_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
dhcpd_config:
corp:
dns_servers:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
fixed_bindings:
5684dae9ac8b:
ip: 192.168.70.35
name: John
gateway: 192.168.70.1
ip_end: 192.168.70.200
ip_start: 192.168.70.100
type: local
enabled: true
extra_routes:
0.0.0.0/0:
via: 10.2.1.1
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
image1_url: https://url/to/image.png
ip_configs:
corp:
ip: 192.168.10.1
type: static
managed: false
modified_time: 0
name: corp-a135
networks: {}
ntp_servers:
- pool.ntp.org
- time.google.com
oob_ip_config:
ip: 192.168.50.3
netmask: 255.255.255.0
type: static
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
port_config:
cl-0/0/1:
ip_config:
type: pppoe
usage: wan
wan_config:
backup_only: true
ge-0/0/0:
ip_config:
type: dhcp
usage: wan
ge-0/0/0,ge-7/0/0:
clustered: true
ip_config: {}
reth_idx: 3
usage: wan
ge-0/0/1-5:
usage: lan
ge-0/0/7:
ip_config:
type: static
usage: wan
port_forward:
remote-ssh:
ip_port: 10.2.5.3
ip_range: 10.2.5.1/32-10.2.5.20/32
protocol: tcp
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
switch:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
deviceprofile_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
disable_auto_config: false
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
image1_url: https://url/to/image.png
ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
ip: 10.2.1.1
netmask: 255.255.255.0
network: default
type: static
managed: false
modified_time: 0
name: corp-a135
networks: {}
notes: slightly off center
ntp_servers:
- pool.ntp.org
- time.google.com
oob_ip_config: {}
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
other_ip_configs:
guest:
ip: 10.3.3.1
netmask: 255.255.255.0
type: static
port_config:
'*':
usage: default
ge-0/0/0:
aggregated: true
description: to dist-sw-01
usage: uplink
ge-0/0/1:
dynamic_usage: dynamic
usage: default
ge-0/0/8-16,ge-1/0/0-47:
usage: ap
port_usages: {}
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
port: 1812
secret: testing123
auth_servers:
- host: 1.2.3.4
port: 1812
secret: testing123
- host: radius.internal
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
role: access
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
schema:
oneOf:
- $ref: '#/components/schemas/ap'
- $ref: '#/components/schemas/switch'
- $ref: '#/components/schemas/gateway'
description: OK
DeviceBiosUpgrade:
content:
application/json:
examples:
Example:
value:
status: inprogress
timestamp: 1428949501
schema:
properties:
status:
type: string
timestamp:
type: integer
type: object
description: OK
DeviceConfigCmd:
content:
application/json:
examples:
example-1:
value:
cli:
- set system hostname corp-a135
schema:
properties:
cli:
items:
type: string
type: array
required:
- cli
type: object
description: OK
DeviceEventsSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
next: string
results:
- ap: 5c5b351e13b5
apfw: 5c5b351e13b5
model: BT11-WW
org_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862a
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
text: Succeeding DNS query from 172.29.101.134 to 172.29.101.7 for
"portal.mistsys.com" on vlan 1, id 60224
timestamp: 1547235620.89
type: CLIENT_DNS_OK
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_device_ap'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- results
- start
- end
- limit
- total
type: object
description: OK
DeviceIot:
content:
application/json:
examples:
example-1:
value:
A1: 1
DO: 0
schema:
additionalProperties:
type: integer
description: Property key is the IoT port name (e.g. "A1")
type: object
description: OK
DeviceMetric:
content:
application/json:
examples:
example-1:
value:
end: 1604347200
interval: 3600
limit: 168
page: 1
results:
- 10
- 11
- 12
- 12
- 10
- 9
- 9
- 9
- 10
- 10
- 11
- 11
- 11
- 11
- 11
- 11
- 11
- 10
- 11
- 11
- 10
- 11
- 11
- 10
rt:
- '2020-11-01T20:00:00Z'
- '2020-11-01T21:00:00Z'
- '2020-11-01T22:00:00Z'
- '2020-11-01T23:00:00Z'
- '2020-11-02T00:00:00Z'
- '2020-11-02T01:00:00Z'
- '2020-11-02T02:00:00Z'
- '2020-11-02T03:00:00Z'
- '2020-11-02T04:00:00Z'
- '2020-11-02T05:00:00Z'
- '2020-11-02T06:00:00Z'
- '2020-11-02T07:00:00Z'
- '2020-11-02T08:00:00Z'
- '2020-11-02T09:00:00Z'
- '2020-11-02T10:00:00Z'
- '2020-11-02T11:00:00Z'
- '2020-11-02T12:00:00Z'
- '2020-11-02T13:00:00Z'
- '2020-11-02T14:00:00Z'
- '2020-11-02T15:00:00Z'
- '2020-11-02T16:00:00Z'
- '2020-11-02T17:00:00Z'
- '2020-11-02T18:00:00Z'
- '2020-11-02T19:00:00Z'
start: 1604260800
schema:
properties:
end:
type: integer
interval:
type: integer
results:
items:
oneOf:
- type: string
- type: integer
type: array
rt:
items:
type: string
type: array
start:
type: integer
required:
- end
- interval
- results
- start
type: object
description: OK
DeviceOther:
content:
application/json:
examples:
Example:
value:
created_time: 1676983730
device_mac: '001122334455'
id: ae9dee49-69e7-4710-a114-5b827a777738
mac: 5c5b35000018
model: AP41
modified_time: 1676983730
name: hallway
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
serial: FXLH2015150025
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
vendor: cradlepoint
schema:
$ref: '#/components/schemas/device_other'
description: Example response
DeviceOtherArray:
content:
application/json:
examples:
Example:
value:
- created_time: 1676983730
device_mac: '001122334455'
id: ae9dee49-69e7-4710-a114-5b827a777738
mac: 5c5b35000018
model: AP41
modified_time: 1676983730
name: hallway
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
serial: FXLH2015150025
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
vendor: cradlepoint
schema:
items:
$ref: '#/components/schemas/device_other'
type: array
description: Example response
DeviceOtherStats:
content:
application/json:
examples:
otherdevice-stats:
value:
config_status: synced
last_config: 1675392788
last_seen: 1675843629
mac: 5c5b35000018
status: online
uptime: 20296
vendor: cradlepoint
vendor_specific:
ports:
mdm-4d0e073b:
bytes_in: 33004879
bytes_out: 41103393
health_category: ''
health_score: 0
id: '101027967'
mode: wan
model: Internal 5GB (SIM1)
state: READY
type: 5G
uptime: 252371.34149021498
router_id: null
target_version: 7.23.40
version: 7.22.70
schema:
$ref: '#/components/schemas/device_other_stats'
description: Example response
DeviceRadioChannels:
content:
application/json:
examples:
example-1:
value:
band24_40mhz_allowed: false
band24_channels:
'20':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
'40':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
band24_enabled: true
band5_channels:
'20':
- 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
'40':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
'80':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
dfs:
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
outdoor:
- 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
band5_enabled: true
certified: true
code: 840
dfs_ok: true
key: US
name: United States
uses: US_FCC
schema:
properties:
band24_40mhz_allowed:
type: boolean
band24_channels:
type: object
band24_enabled:
type: boolean
band5_channels:
type: object
band5_enabled:
type: boolean
certified:
type: boolean
code:
type: integer
dfs_ok:
type: boolean
key:
type: string
name:
type: string
uses:
type: string
required:
- key
- dfs_ok
- band5_enabled
- band24_enabled
- band24_40mhz_allowed
- certified
- band5_channels
- band24_channels
- code
- name
- uses
type: object
description: OK
DeviceSnapshot:
content:
application/json:
examples:
example-1:
value:
status_id: string
staus: starting
timestamp: 0
schema:
properties:
status_id:
description: the internal status id
type: string
staus:
enum:
- starting
- inprogress
- success
- error
- scheduled
title: device_snapshot_status
type: string
timestamp:
type: number
type: object
description: OK
DeviceUpgrade:
content:
application/json:
examples:
example-1:
value:
counts:
downloaded: 0
failed: 0
reboot_in_progress: 0
rebooted: 0
total: 0
enable_p2p: true
force: true
id: 473f6eca-6276-4993-bfeb-53cbbbba6f18
start_time: 0
status: created
strategy: big_bang
target_version: string
schema:
$ref: '#/components/schemas/device_upgrade_info'
description: OK
DeviceUpgradeArray:
content:
application/json:
examples:
example-1:
value:
- counts:
download_requested: 0
downloaded: 0
failed: 0
reboot_in_progress: 0
rebooted: 0
skipped: 0
total: 0
enable_p2p: true
force: true
id: 472f6eca-6276-4993-bfeb-53cbbbba6f28
start_time: 0
status: created
strategy: big_bang
target_version: string
schema:
items:
$ref: '#/components/schemas/device_upgrade_info'
type: array
description: Example response
DeviceVersion:
content:
application/json:
examples:
example-1:
value:
- model: AP41
tag: stable
version: v0.1.543
- model: AP21
version: v0.1.545
schema:
items:
properties:
model:
description: Device model (as seen in the device stats)
type: string
tag:
description: annotation, stable / beta / alpha. Or it can be empty
or nothing which is likely a dev build
type: string
version:
description: firmware version
type: string
required:
- model
- version
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
Deviceprofile:
content:
application/json:
examples:
deviceprofile_ap:
value:
aeroscout:
enabled: true
host: string
ble_config:
beacon_enabled: true
beacon_rate: 0
beacon_rate_mode: default
beam_disabled:
- 0
eddystone_uid_adv_power: -100
eddystone_uid_beams: string
eddystone_uid_enabled: true
eddystone_uid_freq_msec: 0
eddystone_uid_instance: string
eddystone_uid_namespace: string
eddystone_url_adv_power: 0
eddystone_url_beams: string
eddystone_url_enabled: true
eddystone_url_freq_msec: 0
eddystone_url_url: string
ibeacon_adv_power: -100
ibeacon_beams: string
ibeacon_enabled: true
ibeacon_freq_msec: 0
ibeacon_major: 0
ibeacon_minor: 0
ibeacon_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 1
power_mode: string
created_time: 0
disable_eth1: true
disable_module: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ip_config:
dns:
- string
dns_suffix:
- string
gateway: 192.168.0.1
gateway6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
ip: 192.168.0.1
ip6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
mtu: 0
netmask: 192.168.0.1
netmask6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334
type: static
type6: static
vlan_id: 1
mesh:
enabled: true
group: 0
role: base
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
poe_passthrough: true
radio_config:
ant_gain_24: 0
ant_gain_5: 0
band_24:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_24_usage: '24'
band_5:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
scanning_enabled: true
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
switch_config:
enabled: true
eth0:
port_vlan_id: 1
vlan_ids:
- 0
eth1:
port_vlan_id: 1
vlan_ids:
- 0
eth2:
port_vlan_id: 1
vlan_ids:
- 0
eth3:
port_vlan_id: 1
vlan_ids:
- 0
module:
port_vlan_id: 1
vlan_ids:
- 0
wds:
port_vlan_id: 1
vlan_ids:
- 0
usb_config:
cacert: string
channel: 0
enabled: true
host: string
port: 0
type: imagotag
verify_cert: true
deviceprofile_hub:
value:
additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f3d
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f3e
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f3f
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 0
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
property2:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
$ref: '#/components/schemas/deviceprofile'
description: OK
DeviceprofilesArray:
content:
application/json:
examples:
deviceprofile_ap:
value:
- aeroscout:
enabled: false
host: aero.pvt.net
locate_connected: true
ble_config:
beacon_enabled: false
beacon_rate: 3
beacon_rate_mode: custom
beam_disabled:
- 1
- 3
- 6
custom_ble_packet_enabled: false
custom_ble_packet_frame: 0x........
custom_ble_packet_freq_msec: 300
eddystone_uid_adv_power: -65
eddystone_uid_beams: 2-4,7
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_adv_power: -65
eddystone_url_beams: 2-4,7
eddystone_url_enabled: true
eddystone_url_freq_msec: 1000
eddystone_url_url: https://www.abc.com
ibeacon_adv_power: -65
ibeacon_beams: 2-4,7
ibeacon_enabled: false
ibeacon_freq_msec: 0
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
power: 10
power_mode: custom
created_time: 0
disable_eth1: false
disable_eth2: false
disable_eth3: false
disable_module: false
for_site: true
height: 0
id: 497f6eca-6276-4993-bfeb-53cbbbba6108
iot_config:
A1:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A2:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A3:
enabled: false
name: motion
output: true
pullup: internal
value: 0
A4:
enabled: false
name: motion
output: true
pullup: internal
value: 0
DI1:
enabled: false
name: string
pullup: internal
DI2:
enabled: false
name: string
pullup: internal
DO:
enabled: false
name: motion
output: true
pullup: internal
value: 0
ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.1.1
ip6: 2607:f8b0:4005:808::2004
mtu: 0
netmask: 255.255.255.0
netmask6: /32
type: static
type6: static
vlan_id: 1
led:
brightness: 255
enabled: true
map_id: 09d2b626-2e4e-45ef-a3c4-e6aeb6c83db1
mesh:
enabled: false
group: 1
role: base
modified_time: 0
name: string
notes: string
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
orientation: 0
orientation_overwrite: true
poe_passthrough: false
port_config:
property1:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
property2:
additional_vlan_ids:
- 55
- 66
authentication_protocol: pap
disabled: true
dynamic_vlan:
default_vlan_id: 999
enabled: true
type: string
vlans:
1-10: null
user: null
enable_mac_auth: false
forwarding: all
mx_tunnel_id: 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name: string
port_auth: none
port_vlan_id: 1
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
vlan_id: 9
vland_ids:
- 1
- 10
- 50
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
wxtunnel_remote_id: wifiguest
pwr_config:
base: 0
radio_config:
allow_rrm_disable: false
ant_gain_24: 4
ant_gain_5: 5
ant_gain_6: 5
antenna_mode: default
band_24:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_24_usage: '5'
band_5:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_6:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
indoor_use: false
scanning_enabled: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
switch_config:
enabled: false
eth0:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth1:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth2:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
eth3:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
module:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
wds:
additional_vlan_ids:
- 0
enable_vlan: true
port_vlan_id: 0
vlan_ids:
- 0
type: ap
usb_config:
cacert: string
channel: 3
enabled: true
host: 1.1.1.1
port: 0
type: imagotag
verify_cert: true
vlan_id: 1
vars: {}
x: 0
y: 0
deviceprofile_hub:
value:
- additional_config_cmds:
- set snmp community public
bgp_config:
property1:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
property2:
auth_key: string
bfd_minimum_interval: 150
communities:
- id: string
local_preference: 0
vpn_name: string
disable_bfd: false
export: string
export_policy: string
graceful_restart_time: 0
hold_time: 90
import: string
import_policy: string
imported_networks:
- dc-apps
local_as: 0
neighbor_as: 0
neighbors:
property1:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
property2:
export_policy: string
hold_time: 90
import_policy: string
multihop_ttl: 0
neighbor_as: 0
networks:
- string
no_readvertise_to_overlay: false
type: internal
via: lan
vpn_name: string
wan_name: string
created_time: 0
dhcpd_config:
property1:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
property2:
dns_servers:
- 192.168.0.1
dns_suffix:
- string
fixed_bindings:
property1:
ip: 192.168.0.1
name: string
property2:
ip: 192.168.0.1
name: string
gateway: 192.168.0.1
ip_end: 192.168.0.1
ip_start: 192.168.0.1
servers:
- 192.168.0.1
type: local
extra_routes:
property1:
via: 192.168.0.1
property2:
via: 192.168.0.1
gateway_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f09
ip_configs:
property1:
ip: 192.168.0.1
netmask: /24
property2:
ip: 192.168.0.1
netmask: /24
modified_time: 0
name: string
networks:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f10
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f11
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
property2:
affinity: hub
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
no_readvertise_to_lan_bgp: false
no_readvertise_to_overlay: true
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
summarized_subnet_to_lan_bgp: 172.16.0.0/16
oob_ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
node1:
ip: string
netmask: string
network: string
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
property1:
ip: string
netmask: string
network: string
type: dynamic
property2:
ip: string
netmask: string
network: string
type: dynamic
type: dynamic
use_mgmt_vrf: false
use_mgmt_vrf_for_host_out: false
vlan_id: 0
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
path_preferences:
property1:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
property2:
paths:
cost: 0
gateway_ip: string
internet_access: false
name: string
networks:
- string
target_ips:
- string
type: local
strategy: ordered
port_config:
property1:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
property2:
description: string
disable_autoneg: false
dsl_config:
ppoe_auth: none
ppoe_password: string
ppoe_username: string
duplex: full
ip_config:
dns:
- string
dns_suffix:
- string
gateway: string
ip: string
netmask: string
network: string
poser_password: string
ppoe_username: string
pppoe_auth: none
type: dhcp
lte_apn: string
lte_auth: none
lte_backup: true
lte_password: string
lte_username: string
mtu: 0
name: string
networks:
- string
outer_vlan_id: 0
poe_disabled: false
port_network: string
preserve_dscp: true
redundant: true
reth_idx: 0
reth_node: string
speed: 1g
svr_port_range: 60000-60005
traffic_shaping:
class_percentages:
- 0
enabled: false
usage: lan
vlan_id: 10
vpn_paths:
property1:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
property2:
bfd_profile: broadband
bfd_udp_transform: false
bfd_use_tunnel_mode: false
role: spoke
traffic_shaping:
class_percentage:
- 0
enabled: true
max_tx_kbps: 0
wan_ext_ip: string
wan_source_nat:
disabled: false
nat_pool: 64.2.4.0/30
wan_type: broadband
routing_policies:
property1:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
property2:
terms:
- action:
accept: true
add_community:
- '65003:10'
community:
- '65003:10'
exclude_as_path:
- '65002'
exclude_community:
- '65003:10'
export_communitites:
- string
local_preference: string
prepend_as_path:
- '65003'
matching:
as_path:
- '65001'
community:
- '65001:2'
network:
- string
prefix:
- 192.168.0.0/16-30
protocol:
- direct
route_exists:
route: 192.168.0.0/24
vrf_name: default
vpn_neighbor_mac:
- string
vpn_path:
- string
vpn_path_sla:
max_jitter: 0
max_latency: 1500
max_loss: 30
service_policies:
- action: allow
ewf:
- alert_only: true
block_message: Access to this URL Category has been blocked
enabled: false
profile: strict
idp:
alert_only: string
enabled: false
profile: strict
local_routing: false
name: string
path_preferences: string
servicepolicy_id: a4b81837-7a2f-46c1-bf27-dc8af6edd0a0
services:
- string
tenants:
- string
tunnel_configs:
property1:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
property2:
auto_provision:
enable: true
latlng:
lat: 37.295833
lng: -122.032946
primary:
num_hosts: string
wan_names:
- wan0
region: auto
secondary:
num_hosts: string
wan_names:
- wan0
ike_lifetime: 0
ike_mode: main
ike_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
ipsec_lifetime: 0
ipsec_proposals:
- auth_algo: sha1
dh_group: '14'
enc_algo: aes256
local_id: string
mode: active-standby
primary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
probe:
interval: 0
threshold: 0
timeout: 0
type: icmp
protocol: ipsec
provider: zscaler-ipsec
psk: string
secondary:
hosts:
- string
internal_ips:
- string
probe_ips:
- string
remote_ids:
- string
wan_names:
- string
version: '2'
type: standalone
schema:
items:
$ref: '#/components/schemas/deviceprofile'
type: array
description: Example response
DevicesArray:
content:
application/json:
schema:
$ref: '#/components/schemas/config_devices'
description: OK
DevicesArrayStatsOrg:
content:
application/json:
schema:
$ref: '#/components/schemas/device_stats_array'
description: OK
DevicesArrayStatsSite:
content:
application/json:
examples:
AP:
value:
- ble_config:
beacon_rate: 3
beacon_rate_model: custom
beam_disabled:
- 1
- 3
- 6
power: 10
power_mode: custom
ble_stat:
beacon_rate: 3
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_enabled: true
eddystone_url_freq_msec: 100
eddystone_url_url: https://www.abc.com
ibeacon_enabled: true
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
major: 12345
minors:
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
power: 10
rx_bytes: 135
rx_pkts: 135
tx_bytes: 5231513353
tx_pkts: 135135135
tx_resets: 0
uuid: ada72f8f-1643-e5c6-94db-f2a5636f1a64
cert_expiry: 1534534392
ext_ip: 73.92.124.103
fwupdate:
progress: 10
status: inprogress
status_id: 5
timestamp: 1428949501
iot_stat:
DI2:
value: 0
ip: 10.2.9.159
ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
ip: 10.2.1.1
netmask: 255.255.255.0
type: static
ip_stat:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.254
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.1.1
ip6: 2607:f8b0:4005:808::2004
ips:
vlan1: 10.2.1.1/24,2607:f8b0:4005:808::1/32
vlan193: 10.73.1.31/16
vlan3157: 10.72.11.14/24
netmask: 255.255.255.0
netmask6: /32
l2tp_stat:
7dae216d-7c98-a51b-e068-dd7d477b7216:
sessions:
- local_sid: 31
remote_id: vpn1
remote_sid: 13
state: established
state: established_with_sessions
uptime: 135
wxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
last_seen: 1470417522
last_trouble:
code: '03'
timestamp: 1428949501
led:
brightness: 255
enabled: true
lldp_stat:
chassis_id: 63:68:61:73:73:69
lldp_med_supported: false
mgmt_addr: 10.1.5.2
port_desc: 2/26
power_allocated: 15500
power_draw: 15000
power_request_count: 3
power_requested: 25500
system_desc: HP J9729A 2920-48G-POE+ Switch
system_name: TC2-OWL-Stack-01
locating: false
mac: 5c5b35000010
map_id: 63eda950-c6da-11e4-a628-60f81dd250cc
mesh_downlinks:
00000000-0000-0000-1000-5c5b356be59f:
band: '24'
channel: 7
idle_time: 3
last_seen: 1470417522
proto: a
rssi: -65
rx_bps: 12
rx_bytes: 217416
rx_packets: 2337
rx_rate: 65
rx_retries: 5
snr: 31
tx_bps: 6
tx_bytes: 175132
tx_packets: 1566
tx_rate: 65
tx_retries: 500
mesh_uplink:
band: '24'
channel: 7
idle_time: 3
last_seen: 1470417522
proto: a
rssi: -65
rx_bps: 12
rx_bytes: 217416
rx_packets: 2337
rx_rate: 65
rx_retries: 5
snr: 31
tx_bps: 6
tx_bytes: 175132
tx_packets: 1566
tx_rate: 65
tx_retries: 500
uplink_ap_id: 00000000-0000-0000-1000-5c5b35000010
model: AP200
name: conference room
num_clients: 10
port_stat:
eth0:
full_duplex: true
rx_bytes: 2056
rx_errors: 0
rx_pkts: 670
speed: 1000
tx_bytes: 2056
tx_pkts: 670
up: true
eth1:
up: false
module:
up: false
power_budget: -12000
power_src: PoE 802.3af
radio_config:
band_24:
bandwidth: 20
channel: 0
dynamic_chaining_enabled: false
power: 0
rx_chain: 4
tx_chain: 4
band_5:
bandwidth: 40
channel: 0
dynamic_chaining_enabled: false
power: 0
rx_chain: 4
tx_chain: 1
scanning_enabled: true
radio_stat:
band_24:
bandwidth: 20
channel: 6
mac: 5c5b350004a0
num_clients: 6
power: 19
rx_bytes: 8504737800
rx_pkts: 57731964
tx_bytes: 211166512114
tx_pkts: 812058566
band_5:
bandwidth: 80
channel: 44
mac: 5c5b350004b0
num_clients: 4
power: 15
rx_bytes: 10366616
rx_pkts: 38603
tx_bytes: 50877568
tx_pkts: 145496
rx_bps: 60003
rx_bytes: 8515104416
rx_pkts: 57770567
serial: FXLH2015170017
status: connected
tx_bps: 634301
tx_bytes: 211217389682
tx_pkts: 812204062
type: ap
uptime: 13500
usb_stat:
channel: 3
connected: true
last_activity: 1586873254
type: imagotag
up: true
version: 1.0.0
x: 53.5
y: 173.1
Gateway:
value:
- cluster_stat:
node0:
status: ''
node1: {}
cpu2_stat: ''
cpu_stat:
idle: 28
interrupt: 8
load_avg:
- 0.9700000286102295
- 1.0499999523162842
- 1.0199999809265137
system: 41
user: 23
hostname: sj1
ip: 10.2.11.137
ip_stat:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.1
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.11.137
ip6: 2607:f8b0:4005:808::2004
ips:
vlan1: 10.2.1.1/24,2607:f8b0:4005:808::1/32
vlan193: 10.73.1.31/16
vlan3157: 10.72.11.14/24
netmask: 255.255.192.0
netmask6: /32
last_seen: 1553203563
mac: dc38e1dbf3cd
memory_stat:
usage: 35
model: SRX320
module2_stat: ''
module_stat:
- fans:
- name: Fan 0
status: absent
- airflow: out
name: Fan 1
status: ok
model: EX4300-48P
poe:
max_power: 250
power_draw: 120.3
psus:
- name: Power Supply 0
status: ok
- name: Power Supply 1
status: failed
serial: PX8716230021
temperatures:
- celsius: 45
name: CPU
status: ok
vc_links:
- neighbor_module_idx: 1
neighbor_port_id: vcp-255/1/0
port_id: vcp-255/1/0
vc_role: master
name: sj1
serial: TC3714190003
spu2_stat: ''
spu_stat:
cpu: 15
memory: 32
sessions:
current: 41
max: 65535
pending: 12
valid: 15
status: connected
type: gateway
uptime: 13500
version: 18.4R1.8
Switch:
value:
- cpu_stat:
idle: 28
interrupt: 8
load_avg:
- 0.9700000286102295
- 1.0499999523162842
- 1.0199999809265137
system: 41
user: 23
hostname: sj-sw1
ip: 10.2.11.137
ip_stat:
dns:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
gateway: 10.2.1.1
gateway6: 2607:f8b0:4005:808::1
ip: 10.2.11.137
ip6: 2607:f8b0:4005:808::2004
ips:
vlan1: 10.2.1.1/24,2607:f8b0:4005:808::1/32
vlan193: 10.73.1.31/16
vlan3157: 10.72.11.14/24
netmask: 255.255.192.0
netmask6: /32
last_seen: 1553203563
mac: dc38e1dbf3cd
memory_stat:
usage: 35
model: EX4600
module_stat:
- fans:
- name: Fan 0
status: absent
- airflow: out
name: Fan 1
status: ok
model: EX4300-48P
poe:
max_power: 250
power_draw: 120.3
psus:
- name: Power Supply 0
status: ok
- name: Power Supply 1
status: failed
serial: PX8716230021
temperatures:
- celsius: 45
name: CPU
status: ok
vc_links:
- neighbor_module_idx: 1
neighbor_port_id: vcp-255/1/0
port_id: vcp-255/1/0
vc_role: master
name: xg50b
pics:
- idx: 0
port_groups:
- count: 12
type: sfp+
serial: TC3714190003
status: connected
type: switch
uptime: 13500
version: 18.4R1.8
schema:
items:
anyOf:
- $ref: '#/components/schemas/ap_stats'
- $ref: '#/components/schemas/switch_stats'
- $ref: '#/components/schemas/gateway_stats'
type: array
description: OK
DevicesSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
next: string
results:
- hostname:
- AP41-STB-3E5299-WH-2001
- AP41-STB-3E5299-WH-50
- AP41-STB-3E5299
- 5c5b353e5299
ip: 10.2.16.205
lldp_mgmt_addr: 10.2.10.139
lldp_port_desc: GigabitEthernet1/0/1
lldp_port_id: Gi1/0/1
lldp_system_desc: 'Cisco IOS Software, C2960S Software (C2960S-UNIVERSALK9-M),
Version 15.2(1)E1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2013 by Cisco Systems, Inc.
Compiled Fri 22-Nov-13 07:10 by prod_rel_team'
lldp_system_name: ME-DC-1-ACC-SW
mac: 5c5b353e5299
model: AP41
mxedge_id: 00000000-0000-0000-1000-43a81f238391
mxtunnel_status: down
org_id: 6748cfa6-4e12-11e6-9188-0242ac110007
site_id: a8178443-ecb5-461c-b854-f16627619ab3
sku: AP41-US
timestamp: 1596588619.007
uptime: 85280
version: 0.7.20216
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
anyOf:
- $ref: '#/components/schemas/ap_search'
- $ref: '#/components/schemas/switch_search'
- $ref: '#/components/schemas/gateway_search'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
DiscoveredSwitchMetrics:
content:
application/json:
examples:
example-1:
value:
end: 1675193686.0191767
limit: 1
next: /api/v1/sites/f5fcbee5-fbca-45b3-8bf1-1619ede87879/stats/discovered_switch_metrics/search?end=1675193686.0191767&limit=1&search_after=%5B1675193400000%5D&start=1675107286.0191767
results:
- details: {}
org_id: 203d3d02-dbc0-4c1b-9f41-76896a3330f4
scope: site
score: 100
site_id: f5fcbee5-fbca-45b3-8bf1-1619ede87879
timestamp: 1675193400
type: inactive_wired_vlans
start: 1675107286.0191767
total: 3
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
$ref: '#/components/schemas/discovered_switch_metrics'
start:
type: number
total:
type: integer
required:
- results
- start
- end
- limit
- total
type: object
description: OK
DiscoveredSwitches:
content:
application/json:
examples:
example-1:
value:
end: 1604496474.8978634
limit: 1000
results:
- aps:
- hostname: ap41nearlab
inactive_wired_vlans: []
mac: 5c5b352e2001
poe_status: true
when: 2019-06-13T19:53:16.870+0000
mgmt_addr: 10.1.1.1
model: EX2300-C-12P
org_id: 6748cfa6-4e12-11e6-9188-0242ac110007
site_id: 67970e46-4e12-11e6-9188-0242ac110007
system_desc: 'Juniper Networks, Inc. ex2300-c-12p Ethernet Switch,
kernel JUNOS 18.2R2.6, Build date: 2018-12-07 13:19:04 UTC Copyright
(c) 1996-2018 Juniper Networks, Inc.'
system_name: mist-lab-ex2300c
timestamp: 1560457177.037
vendor: Juniper Networks
version: 18.2R2.6
start: 1604410074.8978484
total: 1
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
items:
properties:
adopted:
type: boolean
aps:
items:
properties:
hostname:
type: string
mac:
type: string
poe_status:
type: boolean
port:
type: string
port_id:
type: string
power_draw:
type: number
when:
type: string
title: discovered_switch_ap
type: object
type: array
uniqueItems: true
chassis_id:
items:
type: string
type: array
for_site:
readOnly: true
type: boolean
model:
type: string
org_id:
format: uuid
type: string
site_id:
$ref: '#/components/schemas/site_id'
system_desc:
type: string
system_name:
type: string
timestamp:
type: number
vendor:
type: string
version:
type: string
required:
- model
- org_id
- site_id
- system_desc
- system_name
- timestamp
- vendor
- version
title: discovered_switch
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
DiscoveredSwitchesMetrics:
content:
application/json:
examples:
example-1:
value:
inactive_wired_vlans:
details: {}
score: 100
poe_compliance:
details:
total_aps: 63
total_power: 981500
score: 100
switch_ap_affinity:
details:
system_name:
- mist-lab-ex2300c
- switch1
threshold: 12
score: 33.3333
version_compliance:
details:
major_versions:
- major_count: 2
model: EX2300-C-12P
system_names:
- switch1
- mist-lab-ex2300c
- major_count: 1
model: EX4300-48P
system_names: []
total_switch_count: 5
score: 75
schema:
properties:
inactive_wired_vlans:
properties:
details:
title: inactive_wired_vlans_details
type: object
score:
type: number
required:
- score
- details
type: object
poe_compliance:
properties:
details:
properties:
total_aps:
type: integer
total_power:
type: number
required:
- total_power
- total_aps
title: poe_compliance_details
type: object
score:
type: number
required:
- score
- details
type: object
switch_ap_affinity:
properties:
details:
properties:
system_name:
items:
type: string
type: array
threshold:
type: number
required:
- threshold
- system_name
title: switch_ap_affinity_details
type: object
score:
type: number
required:
- score
- details
type: object
version_compliance:
properties:
details:
properties:
major_versions:
items:
properties:
major_count:
type: number
model:
type: string
system_names:
items:
type: string
type: array
required:
- model
- major_count
title: version_compliance_major_version
type: object
minItems: 1
type: array
uniqueItems: true
total_switch_count:
type: integer
required:
- major_versions
- total_switch_count
title: version_compliance_details
type: object
score:
type: number
required:
- score
- details
type: object
required:
- version_compliance
- switch_ap_affinity
- inactive_wired_vlans
- poe_compliance
type: object
description: OK
EventsDevices:
content:
application/json:
examples:
example-1:
value:
end: 1531862583
limit: 2
next: /api/v1/sites/8aaba0aa-09cc-44bd-9709-33b98040550c/devices/events/search?ap=5c5b350e0001&end=1531855849.000&limit=2&start=1531776183.0
results:
- last_reboot_time: 1531854327
text: Success
timestamp: 1531855849.226722
type: AP_CONNECT_STATUS
type_code: 2002
- timestamp: 1531854326
type: AP_CONFIGURED
start: 1531776183
total: 14
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_device_ap'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- next
- results
- start
- total
type: object
description: OK
EventsFastroam:
content:
application/json:
examples:
example-1:
value:
end: 1501023379
limit: 2
next: /api/v1/sites/dca0a44b-324c-11e6-a776-0243ad110007/events/fast_roam?type=success&start=1428939600&end=1428949600&limit=200&token=AAAAEgAIAAVVJh4hF8AAAARzc2lkAH%2F%2F%2F%2F0%3D
results:
- ap_mac: 5c5b350e040b
client_mac: dc2b2a3fb13d
fromap: 5c5b350e0569
latency: 0.1874195
ssid: marvis_test
subtype: CLIENT_AUTHENTICATED_11R
timestamp: 1501000002283782
start: 1500940800
schema:
properties:
end:
type: integer
limit:
type: integer
next:
description: the link to query next set of results. value is null
if no next page exists.
type: string
results:
items:
properties:
ap_mac:
type: string
client_mac:
type: string
fromap:
type: string
latency:
type: number
ssid:
type: string
subtype:
type: string
timestamp:
description: timestamp of the event in nsec
type: number
type:
enum:
- success
- fail
- none
- poor
- pingpong
- slow
title: fast_roam_event_type
type: string
required:
- latency
- ssid
- timestamp
- ap_mac
- fromap
- client_mac
title: fast_roam_event
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
required:
- start
- end
- limit
- results
type: object
description: OK
EventsNacClientSearch:
content:
application/json:
examples:
NAC-client-events:
value:
end: 1513176951
limit: 10
results:
- ap: 5c5b35513227
auth_type: eap-ttls
bssid: 5c5b355fafcc
dryrun_nacrule_id: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264012
dryrun_nacrule_matched: true
idp_id: 912ef72e-2239-4996-b81e-469e87a27cd6
idp_role:
- itsuperusers
- vip
mac: ac3eb179e535
nacrule_id: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264c62
nacrule_matched: true
nas_vendor: juniper-mist
org_id: 27547ac2-d114-4e04-beb1-f3f1e6e81ec6
random_mac: false
resp_attrs:
- Tunnel-Type=VLAN
- Tunnel-Medium-Type=IEEE-802
- Tunnel-Private-Group-Id=750
- User-Name=anonymous
site_id: 441a1214-6928-442a-8e92-e1d34b8ec6a6
ssid: mist_nac
timestamp: 1691512031.358188
type: NAC_CLIENT_PERMIT
username: user@deaflyz.net
vlan: '750'
start: 1512572151
total: 1
schema:
properties:
end:
example: 1513176951
type: integer
limit:
example: 10
type: integer
results:
$ref: '#/components/schemas/event_nac_clients'
start:
example: 1512572151
type: integer
total:
example: 1
type: integer
type: object
description: NAC Client Events
EventsOtherDevicesSearch:
content:
application/json:
examples:
Example:
value:
end: 0
limit: 0
results:
device_mac: string
mac: 5c5b351e13b5
org_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862a
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
text: 'Plugged: The Internal 5GB (SIM1) has been inserted into Internal
1.'
timestamp: 547235620.89
type: CELLULAR_EDGE_MODEM_WAN_PLUGGED
vendor: cradlepoint
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
results:
$ref: '#/components/schemas/event_otherdevice'
start:
type: integer
total:
type: integer
type: object
description: Example response
EventsSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
results:
- ap: string
band: '24'
bssid: string
channel: 0
proto: a
ssid: string
text: string
timestamp: 0
type: string
type_code: 0
wlan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_client'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- start
- end
- limit
- total
- results
type: object
description: OK
EvpnTopologiesArray:
content:
application/json:
examples:
Example:
value:
- id: 9197ec96-4c8d-529f-c595-035895e688b2
name: CC
overwrite: true
pod_names:
'1': default
'2': default
switches:
- deviceprofile_id: 6a1deab1-96df-4fa2-8455-d5253f943d06
downlink_ips:
- 10.255.240.6
- 10.255.240.8
downlinks:
- 5c5b35000007
- 5c5b35000008
esilaglinks:
- 5c5b3500000f
evpn_id: 1
mac: 5c5b35000003
model: QFX10002-36Q
role: collapsed-core
site_id: 1916d52a-4a90-11e5-8b45-1258369c38a9
uplinks:
- 5c5b35000005
- 5c5b35000006
schema:
items:
$ref: '#/components/schemas/junos_evpn_topology'
type: array
description: OK
EvpnTopology:
content:
application/json:
examples:
Example:
value:
id: 9197ec96-4c8d-529f-c595-035895e688b2
name: CC
overwrite: true
pod_names:
'1': default
'2': default
switches:
- deviceprofile_id: 6a1deab1-96df-4fa2-8455-d5253f943d06
downlink_ips:
- 10.255.240.6
- 10.255.240.8
downlinks:
- 5c5b35000007
- 5c5b35000008
esilaglinks:
- 5c5b3500000f
evpn_id: 1
mac: 5c5b35000003
model: QFX10002-36Q
role: collapsed-core
site_id: 1916d52a-4a90-11e5-8b45-1258369c38a9
uplinks:
- 5c5b35000005
- 5c5b35000006
schema:
$ref: '#/components/schemas/junos_evpn_topology'
description: Example response
File:
content:
application/json:
schema:
description: File
format: binary
type: string
description: OK
GatewayMetrics:
content:
application/json:
examples:
example-1:
value:
config_success: 99.9
version_compliance:
major_version:
SRX320:
major_count: 0
major_version: 19.4R2-S1.2
score: 99.9
type: gateway
schema:
properties:
config_success:
description: config success score
example: 99.9
type: number
version_compliance:
description: version compliance score, major version for gateway,
type
properties:
major_version:
additionalProperties:
properties:
major_count:
type: integer
major_version:
example: 19.4R2-S1.2
type: string
type: object
title: gateway_version_compliance_major_version
type: object
score:
example: 99.9
type: number
type:
example: gateway
type: string
title: gateway_version_compliance
type: object
type: object
description: OK
Gatewaytemplate:
content:
application/json:
examples: {}
schema:
$ref: '#/components/schemas/gateway_template'
description: OK
GatewaytemplatesArray:
content:
application/json:
examples: {}
schema:
items:
$ref: '#/components/schemas/gateway_template'
type: array
description: OK
GetLicenceUsage:
content:
application/json:
examples:
Example:
value:
org_entitled:
SUB-LOC: 30
SUB-MAN: 60
svna_enabled: true
trial_enabled: true
usages:
SUB-LOC: 30
SUB-MAN: 60
vna_eligible: true
vna_ui: true
wvna_eligible: true
schema:
properties:
org_entitled:
additionalProperties:
type: integer
description: license entitlement for the entire org
example:
SUB-LOC: 30
SUB-MAN: 60
type: object
svna_enabled:
description: eligibility for the Switch SLE
type: boolean
trial_enabled:
type: boolean
usages:
additionalProperties:
type: integer
description: subscriptions and their quantities
example:
SUB-LOC: 30
SUB-MAN: 60
type: object
vna_eligible:
description: eligibility for the AP/Client SLE
type: boolean
vna_ui:
description: if True, Conversational Assistant and Marvis Action available
type: boolean
wvna_eligible:
description: eligibility for the WAN SLE
type: boolean
required:
- org_entitled
- svna_enabled
- trial_enabled
- usages
- vna_eligible
- wvna_eligible
- vna_ui
type: object
description: License Usage
Guest:
content:
application/json:
examples:
example-1:
value:
authorized: true
authorized_expiring_time: 0
authorized_time: 0
company: string
email: user@example.com
field1: string
field2: string
field3: string
field4: string
mac: string
minutes: 0
name: string
example-2:
value:
authorized: true
authorized_expiring_time: 1480704955
authorized_time: 1480704355
company: abc
email: john@abc.com
field1: xxx
mac: 5684dae9ac8b
name: John Smith
schema:
$ref: '#/components/schemas/guest'
description: OK
GuestsArray:
content:
application/json:
examples:
example-1:
value:
- authorized: true
authorized_expiring_time: 0
authorized_time: 0
company: string
email: user@example.com
field1: string
field2: string
field3: string
field4: string
mac: string
minutes: 0
name: string
example-2:
value:
- authorized: true
authorized_expiring_time: 1480704955
authorized_time: 1480704355
company: abc
email: john@abc.com
field1: xxx
mac: 5684dae9ac8b
name: John Smith
schema:
items:
$ref: '#/components/schemas/guest'
type: array
description: OK
GuestsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1531862583
limit: 2
next: /api/v1/sites/8aaba0aa-09cc-44bd-9709-33b98040550c/guests/search?wlan_id=88ffe630-95b8-11e8-b294-346895ed1b7d&end=1531855849.000&limit=2&start=1531776183.0
results:
- ap: 5c5b350e0001
auth_method: passphrase
authorized_expiring_time: 1531810258.186273
authorized_time: 1531782218
company: mistsystems
email: user@mistsys.com
name: john
ssid: openNet
timestamp: 1531782218
- ap: 5c5b350e0001
auth_method: facebook
authorized_expiring_time: 1531810821.145
authorized_time: 1531782632
company: xyz inc.
email: cool_user@yahoo.com
name: John White
ssid: openNet
timestamp: 1531782632
start: 1531776183
total: 14
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
ap:
type: string
auth_method:
type: string
authorized_expiring_time:
type: number
authorized_time:
type: number
company:
type: string
email:
type: string
name:
type: string
ssid:
type: string
timestamp:
type: number
required:
- ap
- auth_method
- authorized_expiring_time
- authorized_time
- company
- email
- name
- ssid
- timestamp
title: guest_search_result
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- next
- results
- start
- total
type: object
description: OK
HTTP400:
content:
application/json:
examples:
Example:
value:
detail: 'JSON parse error - Expecting value: line 5 column 8 (char
56)'
schema:
properties:
detail:
example: 'JSON parse error - Expecting value: line 5 column 8 (char
56)'
title: HTTP400 detail
type: string
type: object
description: Bad Syntax
HTTP401:
content:
application/json:
examples:
Example:
value:
detail: Authentication credentials were not provided.
schema:
properties:
detail:
example: Authentication credentials were not provided.
type: string
type: object
description: Unauthorized
HTTP403:
content:
application/json:
examples:
Example:
value:
detail: You do not have permission to perform this action.
schema:
properties:
detail:
example: You do not have permission to perform this action.
type: string
type: object
description: Permission Denied
HTTP404:
content:
application/json:
schema:
properties:
id:
type: string
description: "Not found. The API endpoint doesn\u2019t exist or resource doesn\u2019\
t exist"
HTTP429:
content:
application/json:
examples:
Example:
value:
detail: Too Many Request. The API Token used for the request reached
the 5000 API Calls per hour threshold
schema:
properties:
detail:
example: Too Many Request. The API Token used for the request reached
the 5000 API Calls per hour threshold
type: string
type: object
description: Too Many Request. The API Token used for the request reached the
5000 API Calls per hour threshold
IdpProfile:
content:
application/json:
examples:
idpprofile:
value:
base_profile: strict
created_time: 0
id: 874ca978-d736-4d4b-bc90-a49a29eec133
modified_time: 0
name: relaxed
overwrites:
- action: alert
matching:
attack_name:
- HTTP:INVALID:HDR-FIELD
dst_subnet:
- 63.1.2.0/24
severity:
- major
schema:
$ref: '#/components/schemas/idp_profile'
description: Example response
IdpProfileArray:
content:
application/json:
examples:
idpprofiles:
value:
- base_profile: strict
created_time: 0
id: 874ca978-d736-4d4b-bc90-a49a29eec133
modified_time: 0
name: relaxed
overwrites:
- action: alert
matching:
attack_name:
- HTTP:INVALID:HDR-FIELD
dst_subnet:
- 63.1.2.0/24
severity:
- major
schema:
items:
$ref: '#/components/schemas/idp_profile'
type: array
description: Example response
InsightMetric:
content:
application/json:
examples:
example-1:
value:
end: 0
interval: 0
results:
- {}
start: 0
schema:
$ref: '#/components/schemas/insight_metrics'
description: OK
InsightMetricMsp:
content:
application/json:
examples:
orgs-sle:
value:
end: 1643706000
interval: 3600
limit: 100
results:
- ap-availability: 0.9919400860511628
ap-health: 0.967607512909879
capacity: 0.7484652273070254
coverage: 0.91217567374857
num_aps: 13
num_clients: 12
org_id: 978c48e6-6ef6-11e6-8bbf-02e208b2d34f
roaming: 0.991735537682683
roaming-exp: 0.991735537682683
successful-connect: 0.46052632135780236
throughput: 0.6775702123846302
time-to-connect: 0.9349112447196916
- ap-availability: 0.9990384613092129
ap-health: 0.48201754375507955
capacity: 0.9702673450306101
coverage: 0.8335392334930375
num_aps: 1
num_clients: 6
org_id: 49ff76e0-a283-4e7d-b38d-041f1e9aff3c
roaming: 1
roaming-exp: 1
successful-connect: 1
throughput: 0
time-to-connect: 1
- ap-availability: 1
ap-health: 0.982456140612301
capacity: 1
coverage: 0.9276041182442488
num_aps: 2
num_clients: 3
org_id: 9b9b48f1-15a4-459e-86cc-9cbec9005983
roaming: 1
roaming-exp: 1
successful-connect: 1
throughput: 1
time-to-connect: 0.8125
- ap-availability: 0.9981132070973234
ap-health: 0.9991228068084047
capacity: 1
coverage: 1
num_aps: 1
num_clients: 0
org_id: eb0e1671-7a6b-472b-94c3-c187dafe5274
roaming: 1
roaming-exp: 1
successful-connect: 1
throughput: 0
time-to-connect: 0.5
start: 1643670000
schema:
$ref: '#/components/schemas/insight_metrics'
description: OK
InsightMetricOrg:
content:
application/json:
examples:
worst-sites-by-sle:
value:
end: 1643706000
interval: 3600
limit: 100
results:
- ap-availability: 0.9919400860511628
ap-health: 0.967607512909879
capacity: 0.7484652273070254
coverage: 0.91217567374857
num_aps: 13
num_clients: 12
roaming: 0.991735537682683
roaming-exp: 0.991735537682683
site_id: 978c48e6-6ef6-11e6-8bbf-02e208b2d34f
successful-connect: 0.46052632135780236
throughput: 0.6775702123846302
time-to-connect: 0.9349112447196916
- ap-availability: 0.9990384613092129
ap-health: 0.48201754375507955
capacity: 0.9702673450306101
coverage: 0.8335392334930375
num_aps: 1
num_clients: 6
roaming: 1
roaming-exp: 1
site_id: 49ff76e0-a283-4e7d-b38d-041f1e9aff3c
successful-connect: 1
throughput: 0
time-to-connect: 1
- ap-availability: 1
ap-health: 0.982456140612301
capacity: 1
coverage: 0.9276041182442488
num_aps: 2
num_clients: 3
roaming: 1
roaming-exp: 1
site_id: 9b9b48f1-15a4-459e-86cc-9cbec9005983
successful-connect: 1
throughput: 1
time-to-connect: 0.8125
- ap-availability: 0.9981132070973234
ap-health: 0.9991228068084047
capacity: 1
coverage: 1
num_aps: 1
num_clients: 0
roaming: 1
roaming-exp: 1
site_id: eb0e1671-7a6b-472b-94c3-c187dafe5274
successful-connect: 1
throughput: 0
time-to-connect: 0.5
start: 1643670000
schema:
$ref: '#/components/schemas/insight_metrics'
description: OK
InsightRogue:
content:
application/json:
examples:
example-1:
value:
end: 1428954000
limit: 100
next: /api/v1/sites/a3eda150-ab3f-11e4-aa18-13e21dd250cc/rogues?start=1498482000&end=1498485600&limit=10&interval=1h&type=others
results:
- ap_mac: 5c5b350e021c
avg_rssi: -72
bssid: d8-97-ba-76-b5-aa
channel: '11'
num_aps: 4
ssid: xfinitywifi
times_heard: 8
start: 1428939600
schema:
properties:
end:
type: integer
limit:
type: integer
next:
description: "link to next set of results. If more results aren\u2019\
t present, next is null."
type: string
results:
items:
properties:
ap_mac:
description: mac of the device that had strongest signal strength
for ssid/bssid pair
type: string
avg_rssi:
description: average signal strength of ap_mac for ssid/bssid
pair
type: number
bssid:
description: bssid of the network detected as threat
type: string
channel:
description: channel over which ap_mac heard ssid/bssid pair
type: string
delta_x:
description: X position relative to the reporting AP (`ap_mac`)
type: number
delta_y:
description: Y position relative to the reporting AP (`ap_mac`)
type: number
num_aps:
description: num of aps that heard the ssid/bssid pair
type: integer
seen_on_lan:
description: whether the reporting AP see a wireless client
(on LAN) connecting to it
type: boolean
ssid:
description: ssid of the network detected as threat
type: string
times_heard:
description: represents number of times the pair was heard in
the interval. Each count roughly corresponds to a minute.
type: integer
required:
- ap_mac
- avg_rssi
- bssid
- channel
- num_aps
title: insight_rogue_ap
type: object
minItems: 0
type: array
uniqueItems: true
start:
type: integer
required:
- end
- limit
- results
- start
type: object
description: OK
InsightRogueClients:
content:
application/json:
examples:
example-1:
value:
end: 1428954000
limit: 100
next: /api/v1/sites/a3eda150-ab3f-11e4-aa18-13e21dd250cc/rogues/clients?start=1498482000&end=1498485600&limit=10&interval=1h
results:
- annotation: whitelist
ap_mac: 5c-5b-35-0e-02-1c
avg_rssi: -63.9
band: '5'
bssid: d8-97-ba-76-b5-aa
client_mac: 34-f8-32-13-57-c2
num_aps: 2
start: 1428939600
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
annotation:
type: string
ap_mac:
type: string
avg_rssi:
type: number
band:
type: string
bssid:
type: string
client_mac:
type: string
num_aps:
type: integer
required:
- bssid
- ap_mac
- client_mac
- num_aps
- band
- avg_rssi
- annotation
title: insight_rogue_client
minItems: 1
type: array
uniqueItems: true
start:
type: integer
required:
- start
- end
- limit
- next
- results
type: object
description: OK
InstallerAlarmtemplates:
content:
application/json:
examples:
Example:
value:
- id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
name: AlarmTemplate 1
schema:
items:
$ref: '#/components/schemas/installer_list'
type: array
description: Installer List of Alarm Templates
InstallerDeviceProfiles:
content:
application/json:
examples:
Example:
value:
- id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
name: DeviceProfile 1
schema:
items:
$ref: '#/components/schemas/installer_list'
type: array
description: Installer List of Device Profiles
InstallerDevicesArray:
content:
application/json:
examples:
Example:
value:
- connected: true
deviceprofile_name: SJ1
height: 2.7
mac: 5c5b35000018
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
model: AP41
name: hallway
orientation: 90
serial: FXLH2015150025
site_name: SJ1
x: 150
y: 300
schema:
items:
$ref: '#/components/schemas/installer_device'
type: array
description: List of Devices Recently Claimed
InstallerRftemplatesArray:
content:
application/json:
examples:
Example:
value:
- id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2
name: RFTemplate 1
schema:
items:
$ref: '#/components/schemas/installer_list'
type: array
description: Installer List of RF Templates
InstallerSecpoliciesArray:
content:
application/json:
examples:
Example:
value:
- id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef
name: SecuPolicy 1
schema:
items:
$ref: '#/components/schemas/installer_list'
type: array
description: Installer List of Security Policies
InstallerSitegroupsArray:
content:
application/json:
examples:
Example:
value:
- id: 581328b6-e382-f54e-c9dc-999983183a34
name: SiteGroup 1
schema:
items:
$ref: '#/components/schemas/installer_list'
type: array
description: Installer List of Site Groups
InstallerSitesArray:
content:
application/json:
examples:
Example:
value:
- address: 1601 S. Deanza Blvd., Cupertino, CA, 95014
country_code: US
id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
latlng:
lat: 37.295833
lng: -122.032946
name: Mist Office
rftemplate_name: rftemplate1
sitegroup_names:
- sg1
- sg2
timezone: America/Los_Angeles
schema:
items:
$ref: '#/components/schemas/installer_site'
type: array
description: List of Sites
InviteVerifyNotFound:
content:
application/json:
examples:
invalid-secret:
value:
detail: invalid secret
invite-created-by-self:
value:
detail: invite created by self
schema:
properties:
detail:
type: string
type: object
description: Not Found
JseInfo:
content:
application/json:
examples:
Example:
value:
cloud_name: devcentral.juniperclouds.net
org_names:
- Mist-Sys
- Mist-Eng
schema:
properties:
cloud_name:
type: string
org_names:
items:
type: string
type: array
type: object
description: Example response
JsiDevices:
content:
application/json:
examples:
example-1:
value:
- ext_ip: 73.92.124.103
last_seen: 1654636867
mac: c15353123096
model: EX2300-C-12P
serial: DGCOO0015
schema:
items:
properties:
ext_ip:
description: when available
type: string
last_seen:
type: integer
mac:
type: string
model:
type: string
serial:
type: string
type: object
type: array
description: OK
JsiInventory:
content:
application/json:
examples:
example-1:
value:
- contract_end_time: 1708214400
contract_id: '68247710'
contract_sku: PAR-SDCE-EX4300T48
contract_start_time: 1629331200
customer_po: '4501942932'
distributor: dist1
eol_time: 1671062400
eos_time: 1828828800
installed_address: Address
model: EX4300-48T
order_id: '15909647'
reseller: reseller1
serial: PE3721050223
sku: EX4300-48T-AFI
type: switch
warranty_end_time: 2258236800
warranty_start_time: 1619395200
warranty_type: Enhanced Hardware Warranty
schema:
items:
properties:
contract_end_time:
type: integer
contract_id:
type: string
contract_sku:
type: string
contract_start_time:
type: integer
contract_type:
description: Contract type (Maintenance / Subscription / Premium
/ Gov AdvCare / Gov TAC / High Sec / AdvCare / Gov Premium)
type: string
customer_po:
description: po number associated with this SKU
type: string
distributor:
description: distributor name
type: string
eol_time:
description: end of life time
type: integer
eos_time:
description: end of support time
type: integer
installed_address:
description: address where the device is installed. It is a combination
of address , region , country , zip
type: string
model:
description: model of the install base inventory
type: string
order_id:
description: order ID associated with this SKU
type: string
reseller:
description: reseller name
type: string
serial:
description: serial Number of the inventory
type: string
shipped_time:
description: Shipped date
type: number
sku:
description: serviceable device stock
type: string
type:
enum:
- ap
- switch
- gateway
type: string
warranty_end_time:
type: integer
warranty_start_time:
type: integer
warranty_type:
type: string
type: object
type: array
description: OK
JsiInventoryError:
content:
application/json:
examples:
no-juniper-account-linked:
value:
detail: no-juniper-account-linked
schema:
properties:
detail:
type: string
type: object
description: Bad Requeno Juniper Account Linkedst
JsiShellSession:
content:
application/json:
examples:
example-1:
value:
session: 19e73828-937f-05e6-f709-e29efdb0a82b
url: wss://api-ws.mist.com/ssh?jwt=xxxx
schema:
properties:
session:
type: string
url:
type: string
type: object
description: OK
JuniperLinkAccountFailed:
content:
application/json:
examples:
example-1:
value:
detail: Account[ABC Corp] already linked
schema:
properties:
detail:
type: string
type: object
description: account already linked
JuniperLinkAccountSuccess:
content:
application/json:
examples:
Example:
value:
account:
linked_by: John Smith (john@abccorp.com)
name: ABC Corp
schema:
$ref: '#/components/schemas/account_juniper_info'
description: account linked
JunosRegisterCmd:
content:
application/json:
examples:
example-1:
value:
cmd: 'set system services ssh...
...
set system services outbound-ssh client mist ...'
schema:
properties:
cmd:
type: string
required:
- cmd
type: object
description: OK
Licence:
content:
application/json:
examples:
example-1:
value:
amendments:
- created_time: 1644684842
end_time: 1744156799
id: ff0a14f6-1234-5678-90ab-c8e64d4bc6c6
modified_time: 1644684842
quantity: -1
start_time: 1632873600
subscription_id: VNA-000000af
type: SUB-VNA
- created_time: 1644684842
end_time: 1744156799
id: c1c28812-1234-5678-90ab-dc95680da61e
modified_time: 1644684842
quantity: -1
start_time: 1632873600
subscription_id: MAN-000008be
type: SUB-MAN
- created_time: 1644684842
end_time: 1744243199
id: 96c0a41f-1234-5678-90ab-afe74817e9fd
modified_time: 1644684842
quantity: -1
start_time: 1586476800
subscription_id: EX24-000000bc
type: SUB-EX24
entitled:
SUB-ENG: 26
SUB-EX24: 9
SUB-MAN: 26
SUB-VNA: 26
licenses:
- created_time: 1555353534
end_time: 1586822399
id: 693a41a6-1234-5678-90ab-f53dbd3a31c0
modified_time: 1555353534
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 2
remaining_quantity: 0
start_time: 1555286400
subscription_id: VNA-000000aa
type: SUB-VNA
- created_time: 1576132516
end_time: 1586822399
id: 656607cf-1234-5678-90ab-fc9035614ea5
modified_time: 1576132516
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 8
remaining_quantity: 0
start_time: 1576022400
subscription_id: VNA-000000ab
type: SUB-VNA
- created_time: 1579204568
end_time: 1730764800
id: db50d0bc-1234-5678-90ab-e439958cb06b
modified_time: 1579204568
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 2
remaining_quantity: 2
start_time: 1572998400
subscription_id: MAN-000000ac
type: SUB-MAN
- created_time: 1579204568
end_time: 1730764800
id: 2ff9e84a-1234-5678-90ab-fb9ec0726e01
modified_time: 1579204568
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 2
remaining_quantity: 2
start_time: 1572998400
subscription_id: ENG-000000ad
type: SUB-ENG
- created_time: 1579204568
end_time: 1730764800
id: 16df7ea6-1234-5678-90ab-78018cd4024d
modified_time: 1579204568
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 2
remaining_quantity: 2
start_time: 1572998400
subscription_id: VNA-000000ae
type: SUB-VNA
- created_time: 1586237081
end_time: 1744243199
id: 1b6f68d5-1234-5678-90ab-70d3e6d18c73
modified_time: 1586237081
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 14
remaining_quantity: 14
start_time: 1586563200
subscription_id: VNA-000000af
type: SUB-VNA
- created_time: 1586237097
end_time: 1744243199
id: 1375c9bf-1234-5678-90ab-9c636708c89e
modified_time: 1586237097
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 14
remaining_quantity: 14
start_time: 1586563200
subscription_id: MAN-000000ba
type: SUB-MAN
- created_time: 1586237137
end_time: 1744243199
id: 5974e979-1234-5678-90ab-438f833ec1c9
modified_time: 1586237137
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 14
remaining_quantity: 14
start_time: 1586563200
subscription_id: ENG-000000bb
type: SUB-ENG
- created_time: 1629947267
end_time: 1744243199
id: 340a9cb3-1234-5678-90ab-b009344dbf3c
modified_time: 1629947267
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 10
remaining_quantity: 9
start_time: 1586476800
subscription_id: EX24-000000bc
type: SUB-EX24
- created_time: 1632941870
end_time: 1744156799
id: 9b599b0f-1234-5678-90ab-406081b58e7f
modified_time: 1632941870
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 10
remaining_quantity: 10
start_time: 1632873600
subscription_id: ENG-000000bd
type: SUB-ENG
- created_time: 1632941882
end_time: 1744156799
id: d6d8ead3-1234-5678-90ab-98badeac7287
modified_time: 1632941882
order_id: '00000000'
org_id: 9777c1a0-1234-5678-90ab-02e208b2d34f
quantity: 11
remaining_quantity: 9
start_time: 1632873600
subscription_id: MAN-000008be
type: SUB-MAN
summary:
SUB-ENG: 18
SUB-EX24: 3
SUB-MAN: 22
SUB-VNA: 20
schema:
$ref: '#/components/schemas/license'
description: OK
LicenceUsage:
content:
application/json:
examples:
example-1:
value:
- fully_loaded:
SUB-LOC: 30
SUB-MAN: 80
num_devices: 80
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
usages:
SUB-LOC: 30
SUB-MAN: 60
schema:
items:
properties:
for_site:
readOnly: true
type: boolean
fully_loaded:
additionalProperties:
readOnly: true
type: integer
description: Property key is the service name (e.g. "SUB-MAN")
readOnly: true
type: object
num_devices:
readOnly: true
type: integer
site_id:
$ref: '#/components/schemas/site_id'
usages:
additionalProperties:
readOnly: true
type: integer
description: subscriptions and their quantities. Property key is
the service name (e.g. "SUB-MAN")
readOnly: true
type: object
required:
- num_devices
- site_id
- usages
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
LocationCoverage:
content:
application/json:
examples:
example-1:
value:
beams_means:
- - 1
- 3
- 3.2
- - 6
- 10
- 6.5
end: 1428954000
gridsize: 1
result_def:
- x
- y
- beams_mean
- beacons_mean
- max_rssi
- avg_rssi
results:
- - 1
- 3
- 3.2
- 18.5
- -68
- -70
- - 6
- 10
- 6.5
- 30
- 1
- -72.5
- -75
start: 1428939600
schema:
properties:
beams_means:
description: list of [x, y, mean]s, x/y are in meters (UI would need
to use map.ppm to calulate the pixel location from top-left).
items:
items:
type: number
type: array
type: array
end:
type: integer
gridsize:
description: the size of grid, in meter
type: number
result_def:
description: list of names annotating the fields in results
items:
type: string
type: array
results:
description: list of results, see result_def.
items:
items:
type: number
type: array
type: array
start:
type: integer
required:
- start
- end
- beams_means
- gridsize
- result_def
- results
type: object
description: OK
LoginFailure:
content:
application/json:
examples:
example-1:
value:
detail: sso admin login needs to be initiated by IdP
forward_url: https://my.sso/idp_sso_url
schema:
oneOf:
- properties:
detail:
type: string
forward_url:
type: string
required:
- detail
type: object
description: Login Failed
LoginLookup:
content:
application/json:
examples:
SSO-user-exists:
value:
sso_url: https://my.sso/idp_sso_url
local-user-exists:
value: {}
schema:
properties:
sso_url:
type: string
type: object
description: account exists
LoginOauthUrl:
content:
application/json:
examples:
example-1:
value:
authorization_url: https://accounts.google.com/o/oauth2/v2/auth?.....
client_id: 173131512-mpbnju32.apps.googleusercontent.com
schema:
properties:
authorization_url:
type: string
client_id:
type: string
required:
- client_id
- authorization_url
type: object
description: OK
LoginSuccess:
content:
application/json:
examples:
2FA-required:
value:
email: test@mistsys.com
two_factor_passed: false
two_factor_required: true
OK:
value: {}
schema:
properties:
email:
type: string
two_factor_passed:
type: boolean
two_factor_required:
type: boolean
type: object
description: Login Success
headers:
Set-Cookie:
description: Session Cookie if login/password authentication is successful
schema:
example: csrftoken=vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx; expires=Tue, 15-Mar-2016
19:47:20 GMT; Max-Age=31449600; Path=/
type: string
Logout:
content:
application/json:
examples:
example-1:
value:
forward_url: https://my.sso/custom_logout_url
schema:
properties:
forward_url:
description: if configured in SSO as custom_logout_url
type: string
type: object
description: OK
LogsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1428954000
limit: 100
results:
- admin_id: 72bfa2bd-e58a-4670-9d20-a1468f7a6f58
admin_name: test@mistsys.com
id: c6f9347b-b0a4-4a23-b927-fa9249f2ffb2
message: TEST AUDIT
org_id: 469f6eca-6276-4993-bfeb-53cbbbba6f58
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1431382121
start: 1428939600
total: 135
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
admin_id:
description: admin id
format: uuid
nullable: true
readOnly: true
type: string
admin_name:
description: name of the admin that performs the action
nullable: true
readOnly: true
type: string
after:
description: field values after the change
readOnly: true
type: object
before:
description: field values prior to the change
readOnly: true
type: object
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
message:
description: log message
readOnly: true
type: string
org_id:
description: org id
format: uuid
readOnly: true
type: string
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
description: start time, in epoch
readOnly: true
type: number
required:
- admin_id
- admin_name
- message
- org_id
- site_id
- timestamp
title: log_entry
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
MacsArray:
content:
application/json:
examples:
example-1:
value:
macs:
- 18-65-90-de-f4-c6
- 84-89-ad-5d-69-0d
schema:
properties:
macs:
items:
type: string
type: array
type: object
description: OK
Map:
content:
application/json:
schema:
$ref: '#/components/schemas/map'
description: OK
MapImport:
content:
application/json:
examples:
example-assigned_and_placed:
value:
aps:
- action: assigned-placed
floorplan_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
height: 3
mac: 5c5b35000001
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
orientation: 45
floorplans:
- action: imported
id: cbdb7f0b-3be0-4872-88f9-58790b509c23
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
name: map1
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
summary:
num_ap_assigned: 1
num_inv_assigned: 1
num_map_assigned: 1
example-assigned_named_and_placed:
value:
aps:
- action: assigned-named-placed
floorplan_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
mac: 5c5b35000001
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
orientation: 45
floorplans:
- action: imported
id: cbdb7f0b-3be0-4872-88f9-58790b509c23
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
name: map1
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
summary:
num_ap_assigned: 1
num_inv_assigned: 1
num_map_assigned: 1
example-placed:
value:
aps:
- action: placed
floorplan_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
height: 3
mac: 5c5b35000001
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
orientation: 45
floorplans:
- action: imported
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
map_id: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
name: map1
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
summary:
num_ap_assigned: 1
num_inv_assigned: 1
num_map_assigned: 1
schema:
properties:
aps:
items:
properties:
action:
enum:
- placed
- assigned-placed
- named-placed
- assigned-named-placed
- ignored
title: map_import_result
type: string
floorplan_id:
format: uuid
type: string
height:
type: number
mac:
type: string
map_id:
format: uuid
type: string
orientation:
type: number
reason:
type: string
required:
- mac
- action
- map_id
- floorplan_id
- orientation
type: object
minItems: 1
type: array
uniqueItems: true
floorplans:
items:
properties:
action:
type: string
id:
format: uuid
type: string
map_id:
format: uuid
type: string
name:
type: string
reason:
type: string
required:
- id
- name
- action
- map_id
type: object
minItems: 1
type: array
uniqueItems: true
for_site:
readOnly: true
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
summary:
properties:
num_ap_assigned:
type: integer
num_inv_assigned:
type: integer
num_map_assigned:
type: integer
required:
- num_ap_assigned
- num_map_assigned
- num_inv_assigned
type: object
required:
- site_id
- aps
- floorplans
- summary
type: object
description: OK
MapsArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
flags: {}
height: 0
height_m: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
latlng_br:
lat: string
lng: string
latlng_tl:
lat: string
lng: string
locked: true
modified_time: 0
name: string
occupancy_limit: 0
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
orientation: 0
origin_x: 0
origin_y: 0
ppm: 0
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitesurvey_path:
- coordinate: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
thumbnail_url: string
type: image
url: string
view: roadmap
wall_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
wayfinding:
micello:
account_key: string
default_level_id: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
snap_to_path: true
wayfinding_path:
coordinate: string
nodes:
- edges:
N2: string
name: string
position:
x: 0
y: 0
width: 0
width_m: 0
schema:
items:
$ref: '#/components/schemas/map'
type: array
description: OK
Ml:
content:
application/json:
examples:
example-1:
value:
- current:
Android:
completed: 36
int: -6
level: 3
ple: -3
quality: '4'
src: device
timestamp: 1442854794
iOS:
completed: 16
int: -6
level: 6
ple: -3
quality: '2'
src: default
timestamp: 1442854704
iPod:
int: -10
overwrite: true
ple: -5
src: overwrite
device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
- beacon_id: 7913f032-aab4-c3ae-e83e-5a2756ef4d40
current:
iOS:
completed: 16
int: -6
level: 6
ple: -3
quality: last
src: device
timestamp: 1442854704
schema:
items:
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
MobileVerifySecret:
content:
application/json:
examples:
example-1:
value:
name: Macy's
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
secret: device-specific-secret
schema:
properties:
name:
type: string
org_id:
format: uuid
type: string
secret:
type: string
required:
- name
- org_id
- secret
type: object
description: OK
Msp:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
schema:
$ref: '#/components/schemas/msp'
description: OK
MspInventoryDevice:
content:
application/json:
examples:
example-1:
value:
mac: 5c5b35000018
model: AP200
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
serial: FXLH2015150025
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
type: ap
schema:
properties:
for_site:
readOnly: true
type: boolean
mac:
readOnly: true
type: string
model:
readOnly: true
type: string
org_id:
format: uuid
readOnly: true
type: string
serial:
readOnly: true
type: string
site_id:
$ref: '#/components/schemas/site_id'
type:
readOnly: true
type: string
required:
- serial
- model
- type
- mac
- org_id
- site_id
type: object
description: OK
MxEdgeEventsSearch:
content:
application/json:
examples:
Example:
value:
end: 1694708579
limit: 10
page: 3
results:
- mxcluster_id: 2815c917-58e7-472f-a190-bfd44fb58d05
mxedge_id: 00000000-0000-0000-1000-020000dc585c
org_id: f2695c32-0e83-4936-b1b2-96fc88051213
service: tunterm
timestamp: 1694678225.927
type: ME_SERVICE_STOPPED
start: 1694622179
schema:
properties:
end:
example: 1694708579
type: integer
limit:
example: 10
type: integer
page:
example: 3
type: integer
results:
items:
$ref: '#/components/schemas/mxedge_event'
type: array
start:
example: 1694622179
type: integer
type: object
description: Example response
MxEdgeSearch:
content:
application/json:
examples:
Example:
value:
end: 1694708579
limit: 10
results:
- distro: buster
last_seen: 1695151551.833
model: ME-X5
mxedge_id: 00000000-0000-0000-1000-d420b0f0025d
org_id: 35d96b1a-1a13-4ba8-90f5-1e78dd2a10c5
tunterm_version: 0.1.2813
uptime: 5662632
start: 1694622179
total: 2
schema:
properties:
end:
example: 1694708579
type: integer
limit:
example: 10
type: integer
results:
items:
properties:
distro:
example: buster
type: string
last_seen:
example: 1695151551.833
type: number
model:
example: ME-X5
type: string
mxedge_id:
example: 00000000-0000-0000-1000-d420b0f0025d
type: string
org_id:
example: 35d96b1a-1a13-4ba8-90f5-1e78dd2a10c5
type: string
tunterm_version:
example: 0.1.2813
type: string
uptime:
example: 5662632
type: integer
title: mxedge_search_item
type: object
type: array
start:
example: 1694622179
type: integer
total:
example: 2
type: integer
type: object
description: Example response
MxEdgeUpgrade:
content:
application/json:
schema:
$ref: '#/components/schemas/mxedge_upgrade_response'
description: Example response
MxEdgeUpgradesArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/mxedge_upgrade_response'
type: array
description: Example response
MxTunnelsPreemptAps:
content:
application/json:
schema:
properties:
preempted_aps:
items:
type: string
type: array
required:
- preempted_aps
type: object
description: OK
Mxcluster:
content:
application/json:
examples:
example-1:
value:
created_time: 0
for_site: true
id: 468f6eca-6276-4993-bfeb-53cbbbba6f68
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
radsec:
acct_servers:
- host: string
port: 1813
secret: string
auth_servers:
- host: string
port: 1812
secret: string
enabled: true
server_selection: ordered
radsec_tls:
keypair: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
tunterm_ap_subnets:
- string
tunterm_dhcpd_config:
enabled: false
property1:
enabled: false
servers:
- string
type: relay
property2:
enabled: false
servers:
- string
type: relay
servers:
- string
type: relay
tunterm_extra_routes:
property1:
via: string
property2:
via: string
tunterm_hosts:
- string
tunterm_monitoring:
- host: string
port: 0
protocol: arp
timeout: 300
schema:
$ref: '#/components/schemas/mxcluster'
description: OK
MxclustersArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
for_site: true
id: 467f6eca-6276-4993-bfeb-53cbbbba6f78
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
radsec:
acct_servers:
- host: string
port: 1813
secret: string
auth_servers:
- host: string
port: 1812
secret: string
enabled: true
server_selection: ordered
radsec_tls:
keypair: string
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
tunterm_ap_subnets:
- string
tunterm_dhcpd_config:
enabled: false
property1:
enabled: false
servers:
- string
type: relay
property2:
enabled: false
servers:
- string
type: relay
servers:
- string
type: relay
tunterm_extra_routes:
property1:
via: string
property2:
via: string
tunterm_hosts:
- string
tunterm_monitoring:
- host: string
port: 0
protocol: arp
timeout: 300
schema:
items:
$ref: '#/components/schemas/mxcluster'
type: array
description: OK
Mxedge:
content:
application/json:
examples:
example-1:
value:
id: 95ddd29a-6a3c-929e-a431-51a5b09f36a6
magic: L-NpT5gi-ADR8WTFd4EiQPY3cP5WdSoD
model: ME-100
mxagent_registered: true
mxcluster_id: 572586b7-f97b-a22b-526c-8b97a3f609c4
mxedge_mgmt:
mist_password: MIST_PASSWORD
root_password: ROOT_PASSWORD
name: Guest
ntp_servers: []
oob_ip_config:
dns:
- 8.8.8.8
- 4.4.4.4
gateway: 10.2.1.254
ip: 10.2.1.10
netmask: 255.255.255.0
type: static
tunterm_dhcpd_config:
'2':
enabled: true
servers:
- 11.2.3.44
enabled: false
servers:
- 11.2.3.4
tunterm_extra_routes:
11.0.0.0/8:
via: 10.3.3.1
tunterm_ip_config:
dns:
- 8.8.8.8
dns_suffix:
- .mist.local
gateway: 10.2.1.254
ip: 10.2.1.1
netmask: 255.255.255.0
tunterm_monitoring:
- host: 10.2.8.15
port: 80
protocol: ping
timeout: 300
tunterm_other_ip_configs:
'5':
ip: 10.3.3.1
netmask: 255.255.255.0
tunterm_port_config:
downstream_ports:
- '3'
separate_upstream_downstream: true
upstream_port_vlan_id: 30
upstream_ports:
- '0'
- '1'
- '2'
tunterm_registered: true
tunterm_switch_config:
'0':
port_vlan_id: 1
vlan_ids:
- 1
- 3055
enabled: true
schema:
$ref: '#/components/schemas/mxedge'
description: OK
MxedgeStats:
content:
application/json:
examples:
Example:
value:
cpu_stat:
cpus:
cpu0:
idle: 89
interrupt: 0
system: 8
usage: 10
user: 1
cpu1:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu2:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu3:
idle: 2
interrupt: 0
system: 50
usage: 97
user: 46
idle: 62
interrupt: 0
system: 17
usage: 37
user: 19
created_time: 1632684398
for_site: false
id: 00000000-0000-0000-1000-020000a80cb4
ip_stat:
ip: 192.168.1.244
ips:
ens18: 192.168.1.244/24,fe80::104c:ffff:fee0:caf8/64
macs:
ens18: e4434b217044
lag_stat:
lacp0:
active_ports:
- port0
- port1
last_seen: 1633721215
mac: 020000a80cb4
memory_stat:
active: 394936320
available: 4699291648
buffers: 107646976
cached: 478060544
free: 4330659840
inactive: 211980288
swap_cached: 0
swap_free: 1022357504
swap_total: 1022357504
total: 8365957120
usage: 48
model: ME-VM
modified_time: 1633643629
mxagent_registered: true
mxcluster_id: 678bc339-7635-4556-bbc0-e77ad493ef8b
name: me-vm-1
num_tunnels: 0
oob_ip_config:
dns:
- 8.8.8.8
- 1.1.1.1
gateway: 10.0.0.1
ip: 10.0.0.10
netmask: 255.255.255.0
type: static
org_id: 11b08247-b1ee-4152-9b25-312b323ce480
port_stat:
port0:
full_duplex: true
mac: 9e294e49091d
rx_bytes: 646898375700
rx_errors: 0
rx_pkts: 8784449574
speed: 10000
state: forwarding
tx_bytes: 647200748038
tx_errors: 0
tx_pkts: 8788647466
up: true
port1:
full_duplex: true
mac: a270fe53437e
rx_bytes: 647200437652
rx_errors: 0
rx_pkts: 8788644886
speed: 10000
state: forwarding
tx_bytes: 646898681650
tx_errors: 0
tx_pkts: 8784452092
up: true
sensor_stat: {}
serial: string
service_stat:
mxagent:
ext_ip: 99.0.86.164
last_seen: 1633721215
package_state: Installed
package_version: 3.1.1037-1
running_state: Running
uptime: 21240
tunterm:
ext_ip: 99.0.86.164
last_seen: 1633721203
package_state: Installed
package_version: 0.1.2449+deb10
running_state: Running
uptime: 76261
services:
- tunterm
site_id: 00000000-0000-0000-0000-000000000000
status: connected
tunterm_ip_config:
gateway: 192.168.11.1
ip: 192.168.11.91
netmask: 255.255.255.0
tunterm_port_config:
downstream_ports:
- '0'
- '1'
separate_upstream_downstream: false
upstream_ports:
- '0'
- '1'
tunterm_registered: true
tunterm_stat:
monitoring_failed: false
uptime: 76281
virtualization_type: KVM
schema:
$ref: '#/components/schemas/mxedge_stats'
description: MxEdge Stats
MxedgeStatsArray:
content:
application/json:
examples:
Example:
value:
- cpu_stat:
cpus:
cpu0:
idle: 89
interrupt: 0
system: 8
usage: 10
user: 1
cpu1:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu2:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu3:
idle: 2
interrupt: 0
system: 50
usage: 97
user: 46
idle: 62
interrupt: 0
system: 17
usage: 37
user: 19
created_time: 1632684398
for_site: false
id: 00000000-0000-0000-1000-020000a80cb4
ip_stat:
ip: 192.168.1.244
ips:
ens18: 192.168.1.244/24,fe80::104c:ffff:fee0:caf8/64
macs:
ens18: e4434b217044
lag_stat:
lacp0:
active_ports:
- port0
- port1
last_seen: 1633721215
mac: 020000a80cb4
memory_stat:
active: 394936320
available: 4699291648
buffers: 107646976
cached: 478060544
free: 4330659840
inactive: 211980288
swap_cached: 0
swap_free: 1022357504
swap_total: 1022357504
total: 8365957120
usage: 48
model: ME-VM
modified_time: 1633643629
mxagent_registered: true
mxcluster_id: 678bc339-7635-4556-bbc0-e77ad493ef8b
name: me-vm-1
num_tunnels: 0
oob_ip_config:
dns:
- 8.8.8.8
- 1.1.1.1
gateway: 10.0.0.1
ip: 10.0.0.10
netmask: 255.255.255.0
type: static
org_id: 11b08247-b1ee-4152-9b25-312b323ce480
port_stat:
port0:
full_duplex: true
mac: 9e294e49091d
rx_bytes: 646898375700
rx_errors: 0
rx_pkts: 8784449574
speed: 10000
state: forwarding
tx_bytes: 647200748038
tx_errors: 0
tx_pkts: 8788647466
up: true
port1:
full_duplex: true
mac: a270fe53437e
rx_bytes: 647200437652
rx_errors: 0
rx_pkts: 8788644886
speed: 10000
state: forwarding
tx_bytes: 646898681650
tx_errors: 0
tx_pkts: 8784452092
up: true
sensor_stat: {}
serial: string
service_stat:
mxagent:
ext_ip: 99.0.86.164
last_seen: 1633721215
package_state: Installed
package_version: 3.1.1037-1
running_state: Running
uptime: 21240
tunterm:
ext_ip: 99.0.86.164
last_seen: 1633721203
package_state: Installed
package_version: 0.1.2449+deb10
running_state: Running
uptime: 76261
services:
- tunterm
site_id: 00000000-0000-0000-0000-000000000000
status: connected
tunterm_ip_config:
gateway: 192.168.11.1
ip: 192.168.11.91
netmask: 255.255.255.0
tunterm_port_config:
downstream_ports:
- '0'
- '1'
separate_upstream_downstream: false
upstream_ports:
- '0'
- '1'
tunterm_registered: true
tunterm_stat:
monitoring_failed: false
uptime: 76281
virtualization_type: KVM
schema:
items:
$ref: '#/components/schemas/mxedge_stats'
type: array
description: List of MxEdge Stats
MxedgeUpgradeInfo:
content:
application/json:
examples:
example-1:
value:
- default: true
package: mxagent
version: 2.4.100
- package: tunterm
version: 1.0.0
schema:
items:
properties:
default:
type: boolean
package:
type: string
version:
type: string
required:
- package
- version
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
MxedgesArray:
content:
application/json:
examples:
example-1:
value:
- cpu_stat:
cpus:
cpu0:
idle: 79
interrupt: 0
system: 4
usage: 20
user: 16
cpu1:
idle: 93
interrupt: 0
system: 4
usage: 6
user: 1
idle: 87
interrupt: 0
system: 5
usage: 12
user: 7
ext_ip: 116.187.144.16
id: 387804a7-3474-85ce-15a2-f9a9684c9c90
ip_stat:
ip: 172.16.5.3
ips:
ens192: 172.16.5.3/24,fe81::20c:29ff:fef8:d18e/64
lag_stat:
lag0:
active_ports:
- '0'
- '1'
last_seen: 1547437078
magic: ExNpT5gi-ADR8WTFd4EiQPY3cP5WdSoD
memory_stats:
active: 1061085184
available: 4124860416
buffers: 789495808
cached: 718016512
free: 2818838528
inactive: 458158080
swap_cached: 0
swap_free: 8161062912
swap_total: 8161062912
total: 7947616256
usage: 65
model: ME-S2019
mxagent_registered: false
mxcluster_id: 572586b7-f97b-a22b-526c-8b97a3f609c4
name: Guest
num_tunnels: 31
port_stat:
eth0:
full_duplex: true
lldp_stats:
mgmt_addr: 122.16.3.11
port_desc: GigabitEthernet4/0/16
port_id: "\x05Gi4/0/16"
system_desc: Cisco IOS Software
system_name: ME-DC2-DIS-SW
rx_bytes: 2056
rx_errors: 0
rx_pkts: 670
speed: 1000
tx_bytes: 2056
tx_pkts: 670
up: true
eth1:
up: false
module:
up: false
status: connected
tunterm_registered: false
tunterm_stat:
monitoring_failed: false
uptime: 884221
version: 0.1.2
virtualization_type: VirtualizationVMware
schema:
items:
$ref: '#/components/schemas/mxedge'
type: array
description: OK
MxedgesArrayStats:
content:
application/json:
examples:
example-1:
value:
- cpu_stat:
cpus:
property1:
idle: 0
interrupt: 0
system: 0
usage: 0
user: 0
property2:
idle: 0
interrupt: 0
system: 0
usage: 0
user: 0
idle: 0
interrupt: 0
system: 0
usage: 0
user: 0
ext_ip: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ip_stat:
ip: string
ips:
property1: string
property2: string
lag_stat:
property1:
active_ports:
- string
property2:
active_ports:
- string
last_seen: 0
magic: string
memory_stats:
active: 0
available: 0
buffers: 0
cached: 0
free: 0
inactive: 0
swap_cached: 0
swap_free: 0
swap_total: 0
total: 0
usage: 0
model: string
mxagent_registered: true
mxcluster_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
num_tunnels: 0
port_stat:
property1:
full_duplex: true
lldp_stats:
mgmt_addr: string
port_desc: string
port_id: string
system_desc: string
system_name: string
rx_bytes: 0
rx_errors: 0
rx_pkts: 0
speed: 0
tx_bytes: 0
tx_pkts: 0
up: true
property2:
full_duplex: true
lldp_stats:
mgmt_addr: string
port_desc: string
port_id: string
system_desc: string
system_name: string
rx_bytes: 0
rx_errors: 0
rx_pkts: 0
speed: 0
tx_bytes: 0
tx_pkts: 0
up: true
status: string
tunterm_registered: true
tunterm_stat:
monitoring_failed: true
uptime: 0
version: string
virtualization_type: string
schema:
items:
$ref: '#/components/schemas/mxedge_stats'
type: array
description: OK
Mxtunnel:
content:
application/json:
examples:
example-1:
value:
cluster_ids:
- string
created_time: 0
for_site: true
hello_interval: 60
hello_retries: 7
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ipsec:
dns_servers:
- string
enabled: true
extra_routes:
- dest: string
next_hop: 192.168.0.1
split_tunnel: true
use_mxedge: true
modified_time: 0
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vlan_ids:
- 0
schema:
$ref: '#/components/schemas/mxtunnel'
description: OK
MxtunnelsArray:
content:
application/json:
examples:
example-1:
value:
- hello_interval: 60
hello_retries: 3
ipsec:
dns_servers:
- 172.16.0.8
enabled: true
extra_routes:
- dest: 172.16.0.0/12
next_hop: 172.16.0.1
split_tunnel: true
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
name: HQ
protocol: udp
vlan_ids:
- 3
- 4
- 5
schema:
items:
$ref: '#/components/schemas/mxtunnel'
type: array
description: OK
NacCrlFile:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_crl_file'
description: Example response
NacCrlFilesArray:
content:
application/json:
schema:
properties:
results:
$ref: '#/components/schemas/nac_crl_files'
type: object
description: Example response
NacPortal:
content:
application/json:
examples:
Example:
value:
access_type: wireless
cert_expire_time: 365
enable_telemetry: 'true'
expiry_notification_time: 2
name: get-wifi
notify_expiry: 'true'
ssid: Corp
sso:
idp_cert: '-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE
-----END CERTIFICATE-----'
idp_sign_algo: sha256
idp_sso_url: https://yourorg.onelogin.com/trust/saml2/http-post/sso/138130
issuer: https://app.onelogin.com/saml/metadata/138130
nameid_format: email
sso_role_matching:
- assigned: user
match: Student
use_sso_role_for_cert: 'true'
schema:
$ref: '#/components/schemas/nac_portal'
NacPortalArray:
content:
application/json:
examples:
Example:
value:
- access_type: wireless
cert_expire_time: 365
enable_telemetry: 'true'
expiry_notification_time: 2
name: get-wifi
notify_expiry: 'true'
ssid: Corp
sso:
idp_cert: '-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE
-----END CERTIFICATE-----'
idp_sign_algo: sha256
idp_sso_url: https://yourorg.onelogin.com/trust/saml2/http-post/sso/138130
issuer: https://app.onelogin.com/saml/metadata/138130
nameid_format: email
sso_role_matching:
- assigned: user
match: Student
use_sso_role_for_cert: 'true'
schema:
$ref: '#/components/schemas/nac_portal_array'
NacRule:
content:
application/json:
schema:
$ref: '#/components/schemas/nac_rule'
description: Example response
NacRulesArray:
content:
application/json:
examples:
example-1:
value:
- action: allow
apply_tags:
- string
created_time: 0
id: 455f6eca-6276-4993-bfeb-53cbbbba6208
matching:
auth_type: eap-tls
nactags:
- string
port_types:
- wireless
site_ids:
- 454f6eca-6276-4993-bfeb-53cbbbba6308
sitegroup_ids:
- 453f6eca-6276-4993-bfeb-53cbbbba6408
modified_time: 0
name: string
not_matching:
auth_type: eap-tls
nactags:
- string
port_types:
- wireless
site_ids:
- 452f6eca-6276-4993-bfeb-53cbbbba6508
sitegroup_ids:
- 451f6eca-6276-4993-bfeb-53cbbbba6608
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
schema:
items:
$ref: '#/components/schemas/nac_rule'
type: array
description: Example response
NacTag:
content:
application/json:
examples:
client_mac:
value:
match: client_mac
name: cameras
type: match
values:
- '010203040506'
- abcdef*
egress_vlan_names:
value:
egress_vlan_names:
- 1vlan-30
- 1vlan-20
- 2vlan10
name: trunk_ap
type: egress_vlan_names
matches_cert_cn:
value:
match: cert_cn
name: staff
type: match
values:
- john
- staff*
matches_cert_issuer:
value:
match: cert_issuer
name: issuer1
type: match
values:
- /C=CN/ST=defy/L=defy/O=defy/OU=defy/CN=defy
matches_cert_san:
value:
match: cert_san
name: san1
type: match
values:
- henry1@defy.com
matches_cert_serial:
value:
match: cert_serial
name: serial1
type: match
values:
- 6a524ab782fb468c00c59f51cff00268d95533b8
matches_cert_sub:
value:
match: cert_sub
name: subject1
type: match
values:
- /C=CN/ST=defy/O=defy/OU=defy/CN=steve
matches_radius_group:
value:
name: VIP_group
radius_group: VIP
type: radius_group
matches_realm:
value:
match: realm
name: defy
type: match
values:
- defy.com
matches_role:
value:
match: idp_role
name: VIP
type: match
values:
- vip
matches_username:
value:
match: user_name
name: admins
type: match
values:
- bob
- steve
matches_vlan:
value:
name: guest_vlan
type: vlan
vlan: '30'
radius_attrs:
value:
name: custom_attrs
radius_attrs:
- Idle-Timeout=600
- Termination-Action=RADIUS-Request
type: radius_attrs
radius_vendor_attrs:
value:
name: custom_radius_vendor_attrs
radius_vendor_attrs:
- PaloAlto-Admin-Role=superuser
- PaloAlto-Panorama-Admin-Role=administrator
type: radius_vendor_attrs
session_timeout:
value:
name: timeout
session_timeout: 86400
type: session_timeout
schema:
$ref: '#/components/schemas/nac_tag'
description: Example response
NacTagsArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/nac_tag'
type: array
description: Example response
Network:
content:
application/json:
examples:
Example:
value:
created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f12
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
schema:
$ref: '#/components/schemas/network'
description: OK
NetworksArray:
content:
application/json:
examples:
Example:
value:
- created_time: 0
disallow_mist_services: false
gateway: 192.168.70.1
hosts:
property1:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
property2:
external_ips: 172.16.10.32-172.16.10.35
ips: 192.168.70.32-192.168.70.35
id: 497f6eca-6276-4993-bfeb-53cbbbba6f13
internal_access:
enabled: true
internet_access:
create_simple_service_policy: false
destination_nat:
property1:
internal_ip: 192.168.70.30
name: web server
port: 443
property2:
internal_ip: 192.168.70.30
name: web server
port: 443
enabled: true
restricted: false
static_nat:
property1:
internal_ip: 192.168.70.3
name: printer-1
property2:
internal_ip: 192.168.70.3
name: printer-1
isolation: true
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
subnet: 192.168.70.0/24
tenants:
property1:
addresses: string
property2:
addresses: string
vlan_id: 0
vpn_access:
property1:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
property2:
allow_ping: true
destination_nat:
property1:
name: web server
port: 443
to: 192.168.70.5/30
property2:
name: web server
port: 443
to: 192.168.70.5/30
nat_pool: 172.16.0.0/26
routed: true
source_nat:
exteral_ip: 172.16.0.8/30
static_nat:
property1:
internal_ip: 192.168.70.3
name: pos-station-1
property2:
internal_ip: 192.168.70.3
name: pos-station-1
summarized_subnet: 172.16.0.0/16
schema:
items:
$ref: '#/components/schemas/network'
type: array
description: OK
Networktemplate:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
created_time: 0
dhcp_snooping:
all_networks: true
enable_arp_spoof_check: true
enable_ip_source_guard: true
enabled: true
networks:
- string
dns_servers:
- string
dns_suffix:
- string
extra_routes:
property1:
via: string
property2:
via: string
group_tags: {}
id: 497f6eca-6276-4993-bfeb-53cbbbba6708
import_org_networks:
- ap
mist_nac:
enabled: true
network: string
modified_time: 0
name: string
networks:
property1:
subnet: 192.168.1.0/24
vlan_id: 10
property2:
subnet: 192.168.1.0/24
vlan_id: 10
ntp_servers:
- string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 111
size: 5m
console:
contents:
- facility: any
severity: any
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: any
severity: any
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: string
send_to_all_servers: true
servers:
- contents:
- facility: any
severity: any
explicit_priority: true
facility: any
host: syslogd.internal
match: '!alarm|ntp|errors.crc_error[chan]'
port: 514
protocol: udp
routing_instance: routing-instance-name
severity: any
source_address: string
structured_data: true
tag: string
time_format: millisecond
users:
- contents:
- facility: any
severity: any
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
snmp_config:
client_list:
- client_list_name: clist-1
clients:
- 151.140.101.218/32
contact: cns@juniper.net
description: Juniper QFX Series Switch - 1K_5LA
enabled: true
engine_id: local
location: Las Vegas, NV
name: TGH-1K-QFX10K
network: default
trap_groups:
- categories:
- authentication
group_name: profiler
targets:
- 172.29.158.19
version: v2
v2c_config:
- authorization: read-only
client_list_name: clist-1
community_name: abc123
view: all
v3_config:
notify:
- name: string
tag: string
type: trap
notify_filter:
- contents:
- include: true
oid: 1.3.6.1.4.1
profile_name: string
target_address:
- address: address
address_mask: address_mask
port: 161
tag_list: string
target_address_name: target_address_name
target_parameters: string
target_parameters:
- message_processing_model: v1
name: string
notify_filter: string
security_level: authentication
security_model: usm
security_name: m01620
usm:
engine-id: 00:00:00:0b:00:00:70:10:6f:08:b6:3f
engine_type: remote_engine
users:
- authentication_password: strings
authentication_type: authentication-md5
encryption_password: stringst
encryption_type: privacy-aes128
name: string
vacm:
access:
- group_name: string
prefix_list:
- context_prefix: iil
notify_view: all
read_view: all
security_level: privacy
security_model: any
type: default_context_prefix
write_view: all
security_to_group:
content:
- group: string
security_name: string
security_model: usm
views:
include: true
oid: 1.3.6.1
view_name: all
switch_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
match_role: string
name: string
port_config:
property1:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property2:
ae_disable_lacp: true
ae_idx: 0
aggregated: false
critical: true
description: string
disable_autoneg: false
duplex: auto
dynamic_usage: string
esilag: true
mtu: 1514
no_local_overwrite: true
poe_disabled: false
speed: auto
usage: string
property1: string
property2: string
switch_mgmt:
ap_affinity_threshold: '10'
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
use_mxedge_proxy: false
switch_mgmt:
config_revert: 10
protect_re:
enabled: false
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
vrf_config:
enabled: false
vrf_instances:
property1:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.10
networks:
- string
property2:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.10
networks:
- string
schema:
$ref: '#/components/schemas/network_template'
description: OK
NetworktemplatesArray:
content:
application/json:
examples:
Example:
value:
- additional_config_cmds:
- set snmp community public
created_time: 0
dhcp_snooping:
all_networks: true
enable_arp_spoof_check: true
enable_ip_source_guard: true
enabled: true
networks:
- string
dns_servers:
- 8.8.8.8
- 4.4.4.4
dns_suffix:
- .mist.local
- .mist.com
extra_routes:
0.0.0.0/0:
via: 1.2.3.4
group_tags: {}
id: 497f6eca-6276-4993-bfeb-53cbbbba6808
import_org_networks:
- ap
mist_nac:
enabled: true
network: default
modified_time: 0
name: template_name
networks:
corp:
vlan_id: 600
default:
subnet: 192.168.1.0/24
vlan_id: 1
guest:
vlan_id: 700
mgmt:
vlan_id: 500
ntp_servers:
- 192.168.1.10
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
port_usages:
ap:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: WAP
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: false
enable_qos: true
mac_auth_only: false
mac_limit: 0
mode: trunk
mtu: 9192
networks:
- guest
- corp
persist_mac: false
poe_disabled: false
port_network: default
rejected_network: null
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
iot:
allow_dhcpd: true
mode: access
port_network: default
stp_edge: true
uplink:
all_networks: true
enable_qos: false
mode: trunk
port_network: default
stp_edge: false
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: default
remote_syslog:
archive:
files: 20
size: 5m
console:
contents:
- facility: config
severity: warning
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: config
severity: warning
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: default
send_to_all_servers: false
servers:
- facility: config
host: syslogd.internal
port: 514
protocol: udp
severity: info
tag: ''
time_format: millisecond
users:
- contents:
- facility: config
severity: warning
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
snmp_config:
client_list:
- client_list_name: clist-1
clients:
- 151.140.101.218/32
contact: cns@juniper.net
description: Juniper QFX Series Switch - 1K_5LA
enabled: true
engine_id: local
location: Las Vegas, NV
name: TGH-1K-QFX10K
network: default
trap_groups:
- categories:
- authentication
group_name: profiler
targets:
- 172.29.158.19
version: v2
v2c_config:
- authorization: read-only
client_list_name: clist-1
community_name: abc123
view: all
v3_config:
notify:
- name: string
tag: string
type: trap
notify_filter:
- contents:
- include: true
oid: 1.3.6.1.4.1
profile_name: string
target_address:
- address: address
address_mask: address_mask
port: 161
tag_list: string
target_address_name: target_address_name
target_parameters: string
target_parameters:
- message_processing_model: v1
name: string
notify_filter: string
security_level: authentication
security_model: usm
security_name: m01620
usm:
engine-id: 00:00:00:0b:00:00:70:10:6f:08:b6:3f
engine_type: remote_engine
users:
- authentication_password: strings
authentication_type: authentication-md5
encryption_password: stringst
encryption_type: privacy-aes128
name: string
vacm:
access:
- group_name: string
prefix_list:
- context_prefix: iil
notify_view: all
read_view: all
security_level: privacy
security_model: any
type: default_context_prefix
write_view: all
security_to_group:
content:
- group: string
security_name: string
security_model: usm
views:
include: true
oid: 1.3.6.1
view_name: all
switch_matching:
enable: true
rules:
- additional_config_cmds:
- set snmp community public
match_model: EX4300
match_name[0:3]: abc
name: match by name
port_config:
ge-0/0/0:
usage: uplink
ge-0/0/8-16ge-1/0/0-47:
usage: ap
- additional_config_cmds:
- set snmp community public2
match_role: access
name: match by role
port_config:
ge-0/0/0:
usage: uplink
switch_mgmt:
config_revert: 10
protect_re:
enabled: false
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
vrf_config:
enabled: false
vrf_instances:
property1:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.10
networks:
- string
property2:
extra_routes:
property1:
via: 198.51.100.1
property2:
via: 198.51.100.10
networks:
- string
schema:
items:
$ref: '#/components/schemas/network_template'
type: array
description: OK
OK:
content:
application/json:
schema:
type: object
description: OK
OauthAppLink:
content:
application/json:
examples:
Jamf:
value:
accounts:
- error: OAuth token refresh failed, please re-link your account
instance_url: junipertest.jamfcloud.com
last_status: failed
last_sync: 1665465339000
linked_by: Testname1
name: Test Compay1 Ltd
smartgroup_name: CompliantGroup1
username: john@nmo.com
linked: true
Vmware:
value:
accounts:
- account_id: f43ea4c4-8a97-4159-9214-112a8c7b8f22
instance_url: as800.airwatchportals.com
last_status: success
last_sync: 1665465339000
linked_by: Testname1
linked_timestamp: 1702284364
name: Test Compay1 Ltd
- account_id: m56ea4c4-8a10-4189-9214-113a8c7b8m82
error: Get token failed, please re-link VMware
instance_url: as561.airwatchportals.com
last_status: failed
last_sync: 1234567890123
linked_by: Testname2
linked_timestamp: 1702284364
name: Test Compay2 Ltd
linked: true
Zoom:
value:
accounts:
- account_id: KkEM7orQSIWHZNFzwMLuRA
company: Test Compay1 Ltd
last_status: success
last_sync: 1665465339000
linked_by: Testname1
max_daily_api_requests: 1500
- account_id: kojzWgIJQ0ujR73VvydOdg
company: Test Compay2 Ltd
error: OAuth token refresh failed, please re-link your account
errors:
- OAuth token refresh failed, please re-link your account
- API daily rate limit reached for your account
last_status: failed
last_sync: 1665465346000
linked_by: Testname2
max_daily_api_requests: 5000
- account_id: iojzXIJWEuiD73ZvydOfg
company: Test Compay3 Ltd
last_status: failed
last_sync: 1665465538000
linked_by: Testname3
max_daily_api_requests: 3500
authorization_url: https://zoom.us/oauth/authorize?response_type=code&client_id=YDyajBmJREjwkyb3TPAbA&redirect_uri=https%3A%2F%2Fapi.local%2Fapi%2Fv1%2Forg%2Fb4e16c72-d50e-4c03-a952-a3217e231e2c%2Foauth2%2Fapp%2Fzoom%2Fcallback&state=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE2NDk3NjE0MDQsImZvcndhcmQiOiJodHRwczovL2NsaWVudGZvcndhcmR1cmwuY29tIn0.RIE4XTU5kpF4nKIy7_enJ0PpOCyTTp6DLm9PZsdncpI
linked: true
schema:
properties:
accounts:
description: List of linked account details
items:
anyOf:
- $ref: '#/components/schemas/account_jamf_info'
- $ref: '#/components/schemas/account_oauth_info'
- $ref: '#/components/schemas/account_vmware_info'
type: array
linked:
description: Basic Auth application linked status in mist portal enabled
for VMware
type: boolean
type: object
description: OK
Org:
content:
application/json:
examples:
example-1:
value:
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
allow_mist: true
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
session_expiry: 0
schema:
$ref: '#/components/schemas/org'
description: Org Infos
OrgDeviceUpgrade:
content:
application/json:
examples:
example-1:
value:
enable_p2p: true
force: true
id: 466f6eca-6276-4993-bfeb-53cbbbba6f88
start_time: 0
status: created
strategy: big_bang
target_version: string
upgrades:
- site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
upgrade:
id: 465f6eca-6276-4993-bfeb-53cbbbba6f98
start_time: 0
status: created
targets:
download_requested:
- 464f6eca-6276-4993-bfeb-53cbbbba6fa8
downloaded:
- 463f6eca-6276-4993-bfeb-53cbbbba6fb8
failed:
- 462f6eca-6276-4993-bfeb-53cbbbba6fc8
reboot_in_progress:
- 461f6eca-6276-4993-bfeb-53cbbbba6fd8
rebooted:
- 460f6eca-6276-4993-bfeb-53cbbbba6fe8
skipped:
- 459f6eca-6276-4993-bfeb-53cbbbba6ff8
schema:
$ref: '#/components/schemas/org_device_upgrade_info'
description: OK
OrgDeviceUpgradeMulti:
content:
application/json:
examples:
example-1:
value:
- enable_p2p: true
force: true
id: 466f6eca-6276-4993-bfeb-53cbbbba6f88
start_time: 0
status: created
strategy: big_bang
target_version: string
upgrades:
- site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
upgrade:
id: 465f6eca-6276-4993-bfeb-53cbbbba6f98
start_time: 0
status: created
targets:
download_requested:
- 464f6eca-6276-4993-bfeb-53cbbbba6fa8
downloaded:
- 463f6eca-6276-4993-bfeb-53cbbbba6fb8
failed:
- 462f6eca-6276-4993-bfeb-53cbbbba6fc8
reboot_in_progress:
- 461f6eca-6276-4993-bfeb-53cbbbba6fd8
rebooted:
- 460f6eca-6276-4993-bfeb-53cbbbba6fe8
skipped:
- 459f6eca-6276-4993-bfeb-53cbbbba6ff8
schema:
items:
$ref: '#/components/schemas/org_device_upgrade_info'
type: array
uniqueItems: true
description: OK
OrgDevices:
content:
application/json:
examples:
example-1:
value:
results:
- mac: string
name: string
schema:
properties:
results:
items:
properties:
mac:
type: string
name:
type: string
required:
- mac
- name
title: org_device
minItems: 1
type: array
uniqueItems: true
required:
- results
type: object
description: OK
OrgInventory:
content:
application/json:
examples:
example-1:
value:
- connected: true
created_time: 1542328276
deviceprofile_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
id: 00000000-0000-0000-0000-5c5b35000018
mac: 5c5b35000018
model: AP41
modified_time: 1542829778
name: hallway
serial: FXLH2015150025
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
type: ap
schema:
items:
$ref: '#/components/schemas/inventory'
type: array
description: OK
OrgInventoryAdd:
content:
application/json:
examples:
Example:
value:
added:
- 6JG8E-PTFV2-A9Z2N
duplicated:
- DVH4V-SNMSZ-PDXBR
error:
- PO1025335ohoh
inventory_added:
- mac: 5c5b35000018
magic: 6JG8EPTFV2A9Z2N
model: AP41
serial: FXLH2015150025
type: ap
inventory_duplicated:
- mac: 5c5b35000012
magic: DVH4VSNMSZPDXBR
model: AP41
serial: FXLH2015150027
type: ap
schema:
$ref: '#/components/schemas/response_inventory'
description: "OK - if any of entries are valid or there\u2019s no errors"
OrgInventoryChanges:
content:
application/json:
examples:
assign:
value:
error: []
op: assign
reason: []
success:
- 5c5b350e0001
delete:
value:
error:
- FXLH2015150026
op: delete
reason: []
success:
- FXLH2015150025
- 5c5b350e0001
error:
value:
error:
- 5c5b350e0001
op: manage
reason:
- already managed
success:
- c15353123096
schema:
properties:
error:
items:
type: string
type: array
op:
enum:
- delete
- assign
- manage
- unmanage
type: string
reason:
items:
type: string
type: array
success:
items:
type: string
type: array
required:
- error
- op
- success
- reason
type: object
description: OK
OrgInventoryUnassignFailed:
content:
application/json:
examples:
invalid-mac-given-for-replacing_mac:
value:
detail: invalid replacing_mac
inventory-device-is-already-assigned:
value:
detail: device already assigned
outsite-of-grace-period:
value:
detail: outside of grace period
replacing_mac-device-is-not-assigned-to-a-site:
value:
detail: replacing_mac device is unassigned
replacing_mac-device-last-modified-outside-of-grace-period:
value:
detail: replacing_mac device outside of grace period
schema:
properties:
detail:
type: string
required:
- detail
type: object
description: Bad Request
OrgInventoryUnassignNotFound:
content:
application/json:
examples:
replacing_mac-device-is-not-in-org-inventory:
value:
detail: replacing_mac inventory not found
replacing_mac-device-not-found:
value:
detail: replacing_mac device not found
schema:
properties:
detail:
type: string
type: object
description: Not Found
OrgSetting:
content:
application/json:
examples:
example-1:
value:
auto_device_naming:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
auto_deviceprofile_assignment:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
auto_site_assignment:
enable: true
rules:
- expression: string
model: string
prefix: string
src: name
subnet: string
suffix: string
value: string
cacerts:
- string
cloudshark:
apitoken: string
url: string
created_time: 0
device_cert:
cert: string
key: string
device_updown_threshold: 0
disable_pcap: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
installer:
allow_all_sites: true
extra_site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
grace_period: 0
mgmt:
mxtunnel_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
use_mxtunnel: true
use_wxtunnel: true
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
password_policy:
enabled: true
freshness: 0
min_length: 8
requires_special_char: true
requires_two_factor_auth: true
pcap:
bucket: string
max_pkt_len: 0
pcap_bucket_verified: true
remote_syslog:
enabled: true
send_to_all_servers: true
servers:
- facility: conflict-log
host: string
port: 0
protocol: udp
severity: any
tag: string
security:
disable_local_ssh: true
fips_zeroize_password: string
limit_ssh_access: true
tags:
- string
ui_idle_timeout: 0
example-2:
value:
auto_device_naming:
enable: true
rules:
- expression: '...'
src: lldp_port_desc
auto_deviceprofile_assignment:
enable: true
auto_site_assignment:
enable: true
rules:
- expression: '[0:3]'
prefix: XX-
src: name
suffix: -YY
- src: subnet
subnet: 10.1.2.0/18
value: s1351
- expression: '...'
src: lldp_system_name
- expression: '...'
src: dns_suffix
- model: AP41
src: model
value: s1351
cacerts:
- '-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE
-----END CERTIFICATE-----'
- '-----BEGIN CERTIFICATE-----
BhMCRVMxFDASBgNVBAoMC1N0YXJ0Q29tIENBMSwwKgYDVn-----END CERTIFICATE-----'
cloudshark:
apitoken: accbd6f10c6d05c3
url: https://cloudshark.hosted.domain
device_cert:
cert: '-----BEGIN CERTIFICATE-----
MIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE
-----END CERTIFICATE-----'
key: '-----BEGIN PRI...'
device_updown_threshold: 0
disable_pcap: false
installer:
allow_all_sites: false
extra_site_ids:
- 4ac1dcf4-9d8b-7211-65c4-057819f0862b
- 52f4347e-3e4b-186c-21ca-ad5b70eb23d6
grace_period: 14
mgmt:
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
use_mxtunnel: true
use_wxtunnel: false
password_policy:
enabled: true
freshness: 60
min_length: 8
requires_special_char: false
requires_two_factor_auth: true
pcap:
bucket: myorg-pcap
max_pkt_len: 128
pcap_bucket_verified: true
remote_syslog:
enabled: true
send_to_all_servers: true
servers:
- facility: any
host: syslogd.internal
port: 514
protocol: udp
severity: info
tag: ''
security:
disable_local_ssh: false
fips_zeroize_password: NUKETHESITE
limit_ssh_access: false
tags:
- beta
ui_idle_timeout: 10
schema:
$ref: '#/components/schemas/org_setting'
description: OK
OrgSiteSle:
content:
application/json:
examples:
wan-sle:
value:
end: 1651323600
interval: 3600
limit: 1
page: 2
results:
- application-health: 0.8250000047942866
gateway-health: 1
num_clients: 65
num_gateways: 1
site_id: f5fcbee5-1234-5678-9101-1619ede87879
wan-link-health: 0.9988471089272484
start: 1651269600
total: 4
wifi-sle:
value:
end: 1651323600
interval: 3600
limit: 1
page: 2
results:
- ap-availability: 1
ap-health: 0.6735632316819553
capacity: 0.9802900770150502
coverage: 0.812181632387686
num_aps: 3
num_clients: 24
roaming: 1
site_id: f5fcbee5-1234-5678-9101-1619ede87879
successful-connect: 0.9535864983932881
throughput: 1
time-to-connect: 0.9791666666666666
start: 1651269600
total: 4
wired-sle:
value:
end: 1651323600
interval: 3600
limit: 1
page: 2
results:
- num_clients: 6
num_switches: 1
site_id: f5fcbee5-1234-5678-9101-1619ede87879
switch-health: 1
switch-stc: 1
switch-throughput: 0.9669529756744796
start: 1651269600
total: 4
schema:
anyOf:
- $ref: '#/components/schemas/org_site_sle_wifi'
- $ref: '#/components/schemas/org_site_wired_wifi'
- $ref: '#/components/schemas/org_site_wan_wifi'
description: Example response
OrgStats:
content:
application/json:
examples:
example-1:
value:
alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
allow_mist: true
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
num_devices: 0
num_devices_connected: 0
num_devices_disconnected: 0
num_inventory: 0
num_sites: 0
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
session_expiry: 0
sle:
- path: string
user_minutes:
ok: 0
total: 0
schema:
$ref: '#/components/schemas/org_stats'
description: OK
OrgSuppressedAlarms:
content:
application/json:
examples:
Example:
value:
results:
- duration: 48
site_id: 581328b6-e382-f54e-c9dc-9c998d183a34
schema:
properties:
results:
items:
properties:
duration:
description: duration, in seconds. Maximum duration is 86400
* 14 (14 days). 0 is to un-suppress alarms.
type: integer
site_id:
$ref: '#/components/schemas/site_id'
title: alarm_search_result
type: object
type: array
type: object
description: OK
Orggroup:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/orggroup'
description: OK
OrggroupsArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
items:
$ref: '#/components/schemas/orggroup'
type: array
description: OK
OrgsArray:
content:
application/json:
examples:
example-1:
value:
- alarmtemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
allow_mist: true
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
orggroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
session_expiry: 0
schema:
items:
$ref: '#/components/schemas/org'
type: array
description: OK
OrgsArrayStats:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/org_stats'
type: array
description: OK
OrgsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1614383378.4365287
limit: 10
results:
- msp_id: d287e62f-0000-0000-0000-f2b9ba0a531f
name: Test Org
num_aps: 9
num_sites: 5
num_switches: 1
num_unassigned_aps: 1
org_id: bb1a8bf6-0000-0000-0000-8053a663cf65
sub_ana_required: 9
sub_ast_entitled: 5
sub_ast_required: 3
sub_eng_required: 3
sub_ex12_required: 1
sub_insufficient: true
sub_man_required: 9
sub_vna_entitled: 1
timestamp: 1614322563.513937
trial_enabled: false
usage_types:
- sub_eng
- msp_id: d287e62f-0000-0000-0000-f2b9ba0a531f
name: Rogue Test1
num_aps: 1
num_sites: 1
org_id: 0fb81690-0000-0000-0000-9596d1d1534f
sub_ana_entitled: 1
sub_ana_required: 1
sub_insufficient: false
sub_man_entitled: 1
sub_man_required: 1
timestamp: 1614309876.500955
start: 1613778578.4365668
total: 2
schema:
properties:
end:
readOnly: true
type: number
limit:
readOnly: true
type: integer
next:
type: string
results:
items:
properties:
msp_id:
format: uuid
readOnly: true
type: string
name:
description: org name
readOnly: true
type: string
num_aps:
readOnly: true
type: integer
num_gateways:
readOnly: true
type: integer
num_sites:
readOnly: true
type: integer
num_switches:
readOnly: true
type: integer
num_unassigned_aps:
readOnly: true
type: integer
org_id:
$ref: '#/components/schemas/org_id'
sub_ana_entitled:
readOnly: true
type: integer
sub_ana_required:
readOnly: true
type: integer
sub_ast_entitled:
readOnly: true
type: integer
sub_ast_required:
readOnly: true
type: integer
sub_eng_entitled:
readOnly: true
type: integer
sub_eng_required:
readOnly: true
type: integer
sub_ex12_required:
readOnly: true
type: integer
sub_insufficient:
description: if this org has sufficient subscription
readOnly: true
type: boolean
sub_man_entitled:
readOnly: true
type: integer
sub_man_required:
readOnly: true
type: integer
sub_me_entitled:
readOnly: true
type: integer
sub_vna_entitled:
readOnly: true
type: integer
sub_vna_required:
readOnly: true
type: integer
timestamp:
readOnly: true
type: number
trial_enabled:
description: if this org is under trial period
readOnly: true
type: boolean
usage_types:
description: a list of types that enabled by usage
items:
type: string
readOnly: true
type: array
title: org_search_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
readOnly: true
type: number
total:
readOnly: true
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
PcapBucketConfig:
content:
application/json:
examples:
Failed:
value:
bucket: company-private-pcap
detail: failed to write bucket - 403 AccessDenied
Success:
value: {}
schema:
properties:
bucket:
type: string
detail:
type: string
type: object
description: OK
PcapStart:
content:
application/json:
examples:
example-1:
value:
ap_count: 3
aps: []
duration: 600
enabled: true
expiry: 1614886726.5411825
format: stream
id: a9a84e13-a714-b1eb-152f-a434416217d5
include_mcast: false
invalid_aps: {}
max_pkt_len: 68
num_packets: 100
org_id: a9346fba-f920-e99a-cc51-2e8dcc57fa3c
raw: true
site_id: 67970e46-4e12-11e6-9188-0242ac110007
ssid: ''
timestamp: 1614886126.5411825
type: radiotap
schema:
properties:
ap_count:
type: integer
aps:
items:
type: string
type: array
client_mac:
nullable: true
type: string
duration:
type: number
enabled:
type: boolean
expiry:
type: number
format:
type: string
id:
format: uuid
type: string
include_mcast:
type: boolean
invalid_aps:
type: object
max_pkt_len:
type: integer
num_packets:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
raw:
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
ssid:
nullable: true
type: string
tcpdump_parser_expression:
nullable: true
type: string
timestamp:
type: number
type:
type: string
required:
- timestamp
- id
- org_id
- site_id
- type
type: object
description: OK
PcapStatus:
content:
application/json:
examples:
example-1:
value:
aps:
- 5c5b350e001c
- 5c5b350e001b
client_mac: 60a10a773412
duration: 300
failed: []
id: a9a84e13-a714-b1eb-152f-a434416217d5
includes_mcast: false
max_pkt_len: 128
num_packets: 1000
ok:
- 5c5b350e001c
- 5c5b350e001b
started_time: 1435080709
type: client
schema:
properties:
ap_mac:
nullable: true
type: string
aps:
description: List of target APs to capture packets
items:
type: string
type: array
client_mac:
example: 60a10a773412
nullable: true
type: string
duration:
example: 300
type: integer
failed:
description: List of APs where configuration attempt failed
items:
type: string
type: array
gateways:
description: List of target Gateways to capture packets if a gateway
capture type is specified
items:
type: string
type: array
id:
description: unique id for the capture
format: uuid
type: string
includes_mcast:
type: boolean
max_num_packets:
description: max number of packets configured by user
example: 1000
type: integer
max_pkt_len:
example: 128
type: integer
num_packets:
description: total number of packets captured by all AP, not applicable
for type [client, new_assoc]
type: integer
ok:
description: List of target APs successfully configured to capture
packets
items:
type: string
type: array
pcap_aps:
additionalProperties:
properties:
band:
type: integer
bandwidth:
type: integer
channel:
type: integer
tcpdump_expresssion:
nullable: true
type: string
type: object
example:
5c5b35000010:
band: 6
bandwidth: 20
channel: 133
tcpdump_expressiin: null
type: object
radiotap_tcpdump_expression:
description: when `type`==`radiotap`, radiotap_tcpdump_expression
expression provided by the user
type: string
scan_tcpdump_expression:
description: when `type`==`scan`, scan_tcpdump_expression provided
by the user
type: string
ssid:
nullable: true
type: string
started_time:
example: 1435080709
type: integer
switches:
description: List of target Switches to capture packets if a switch
capture type is specified
items:
type: string
type: array
tcpdump_expression:
description: tcpdump expression provided by the user (common)
type: string
type:
enum:
- new_assoc
- client
- wired
- wireless
- radiotap
- gateway
example: client
title: pcap_type
type: string
wired_tcpdump_expression:
description: when `type`==`wired`, wired_tcpdump_expression provided
by the user
type: string
wireless_tcpdump_expression:
description: "when `type`==`\u2018wireless\u2019`, wireless_tcpdump_expression\
\ provided by the user"
type: string
required:
- id
- type
type: object
description: OK
PcapsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1461089816
limit: 100
next: /api/v1/sites/67970e46-4e12-11e6-9188-0242ac110007/pcaps?start=1461099816&search_after=%5B1694537121217%5D&limit=100&end=1461089816
results:
- ap_macs:
- 5c5b35000010
timestamp: 1461869041
type: new_assoc
url: https://...
start: 1461099816
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
ap_macs:
items:
type: string
type: array
aps:
items:
example: 5c5b35000010
type: string
type: array
duration:
example: 600
type: number
format:
example: stream
type: string
id:
format: uuid
type: string
max_num_packets:
example: 1024
type: number
org_id:
$ref: '#/components/schemas/org_id'
pcap_aps:
type: object
pcap_url:
type: string
site_id:
$ref: '#/components/schemas/site_id'
termination_reason:
example: default
type: string
timestamp:
type: number
type:
type: string
url:
type: string
required:
- timestamp
- type
- url
title: pcap_search_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- next
- results
- start
type: object
description: OK
PmaDashboards:
content:
application/json:
examples:
example-1:
value:
- name: dashboard_1
url: https://mist.looker.com/login/embed/%2Fembed%2Fdashboards%2F1?group_ids=%5B3%5D&last_name=%22%22&models=%5B%22generic%22%5D&.....
schema:
items:
properties:
description:
description: description of the dashboard
example: Dashboard 1 description
type: string
label:
description: group label name
example: Wireless
type: string
name:
description: name of the dashboard
example: dashboard_1
type: string
url:
description: url to access dashboard. Url will redirect the user
to the dashboard
example: https://api.mist.com/api/v1/forward/looker?jwt=...
type: string
type: object
type: array
description: OK
PortStatsSearch:
content:
application/json:
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/switch_port_stats'
type: array
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: Example response
Portaltemplate:
content:
application/json:
examples:
example-1:
value:
accessCodeAlternateEmail: string
alignment: string
authButtonAmazon: string
authButtonAzure: string
authButtonEmail: string
authButtonFacebook: string
authButtonGoogle: string
authButtonMicrosoft: string
authButtonPassphrase: string
authButtonSms: string
authButtonSponsor: string
authLabel: string
backLink: string
color: string
colorDark: string
colorLight: string
company: true
companyError: string
companyLabel: string
created_time: 0
email: true
emailAccessDomainError: string
emailCancel: string
emailCodeError: string
emailError: string
emailFieldLabel: string
emailLabel: string
emailMessage: string
emailSubmit: string
emailTitle: string
field1: true
field1Error: string
field1Label: string
field1Required: true
field2: true
field2Error: string
field2Label: string
field2Required: true
field3: true
field3Error: string
field3Label: string
field3Required: true
field4: true
field4Error: string
field4Label: string
field4Required: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
message: string
modified_time: 0
name: true
nameError: string
nameLabel: string
optout: true
optoutLabel: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
pageTitle: string
passphraseCancel: string
passphraseError: string
passphraseLabel: string
passphraseMessage: string
passphraseSubmit: string
passphraseTitle: string
poweredBy: true
requiredFieldLabel: string
signInLabel: string
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
smsCarrierDefault: string
smsCarrierError: string
smsCarrierFieldLabel: string
smsCodeCancel: string
smsCodeError: string
smsCodeFieldLabel: string
smsCodeMessage: string
smsCodeSubmit: string
smsCodeTitle: string
smsCountryFieldLabel: string
smsCountryFormat: string
smsHaveAccessCode: string
smsMessageFormat: string
smsNumberCancel: string
smsNumberError: string
smsNumberFieldLabel: string
smsNumberFormat: string
smsNumberMessage: string
smsNumberSubmit: string
smsNumberTitle: string
smsUsernameFormat: string
smsValidityDuration: 0
sponsorBackLink: string
sponsorCancel: string
sponsorEmail: string
sponsorEmailError: string
sponsorEmailTemplate: string
sponsorInfoApproved: string
sponsorInfoDenied: string
sponsorInfoPending: string
sponsorName: string
sponsorNameError: string
sponsorNotePending: string
sponsorStatusApproved: string
sponsorStatusDenied: string
sponsorStatusPending: string
sponsorSubmit: string
tos: true
tosAcceptLabel: string
tosError: string
tosLink: string
tosText: string
schema:
$ref: '#/components/schemas/portal_template'
description: OK
Psk:
content:
application/json:
schema:
$ref: '#/components/schemas/psk'
description: OK
PskPortal:
content:
application/json:
schema:
$ref: '#/components/schemas/psk_portal'
description: Example response
PskPortalLogsArray:
content:
application/json:
examples:
psk-portal-logs:
value:
end: 1428954000
limit: 100
results:
- id: 8a3dcaa7-80e3-4bb0-a75b-7bc6322cfd09
message: Rotate PSK test@mist.com
name_id: test@mist.com
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
psk_id: 608fe603-f9f0-4ce9-9473-04ef6c6ea749
psk_name: test@mist.com
pskportal_id: c1742c09-af35-4161-96ef-7dc65c6d5674
timestamp: 1686346104.096
start: 1428939600
total: 135
schema:
properties:
end:
example: 1428954000
type: integer
limit:
example: 100
type: integer
results:
items:
properties:
id:
example: 8a3dcaa7-80e3-4bb0-a75b-7bc6322cfd09
format: uuid
type: string
message:
example: Rotate PSK test@mist.com
type: string
name_id:
example: test@mist.com
type: string
org_id:
$ref: '#/components/schemas/org_id'
psk_id:
example: 608fe603-f9f0-4ce9-9473-04ef6c6ea749
format: uuid
type: string
psk_name:
example: test@mist.com
type: string
pskportal_id:
example: c1742c09-af35-4161-96ef-7dc65c6d5674
format: uuid
type: string
timestamp:
example: 1686346104.096
type: number
title: psk_portal_log_entry
type: object
type: array
start:
example: 1428939600
type: integer
total:
example: 135
type: integer
type: object
description: Example response
PskPortalsArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/psk_portal'
type: array
description: Example response
PsksArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
passphrase: stringst
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ssid: string
usage: multi
vlan_id: 1
schema:
items:
$ref: '#/components/schemas/psk'
type: array
description: OK
RadioMacs:
content:
application/json:
examples:
example-1:
value:
- mac: 5c5b35000001
radio_macs:
- 5c5b35000040
- 5c5b35000050
- 5c5b35000060
- mac: 5c5b45000001
radio_macs:
- 5c5b45000040
- 5c5b45000050
- 5c5b45000060
schema:
$ref: '#/components/schemas/ap_radio_macs'
description: OK
Recaptcha:
content:
application/json:
examples:
Google:
value:
flavor: google
required: true
sitekey: 6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd
Hcaptcha:
value:
flavor: hcaptcha
required: true
sitekey: 6LdAewsTAAAAAE25XKQhPEQ2FiMTft-WrZXQ5NUd
schema:
$ref: '#/components/schemas/recaptcha'
description: Example response
Rfdiag:
content:
application/json:
examples:
example-1:
value:
- asset_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
asset_name: string
client_name: string
duration: 0
end_time: 0
frame_count: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
next: string
raw_events: string
ready: true
sdkclient_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sdkclient_name: string
sdkclient_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
start_time: 0
type: sdkclient
url: string
schema:
$ref: '#/components/schemas/rf_diag_info'
description: OK
RfdiagsArray:
content:
application/json:
examples:
example-1:
value:
- - asset_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
asset_name: string
client_name: string
duration: 0
end_time: 0
frame_count: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
mac: string
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
next: string
raw_events: string
ready: true
sdkclient_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sdkclient_name: string
sdkclient_uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
start_time: 0
type: sdkclient
url: string
schema:
items:
$ref: '#/components/schemas/rf_diag_info'
type: array
description: OK
Rftemplate:
content:
application/json:
examples:
example-1:
value:
ant_gain_24: 0
ant_gain_5: 0
band_24:
allow_rrm_disable: true
ant_gain: 0
bandwidth: 20
channels:
- 1
- 6
- 11
disabled: false
power_max: 11
power_min: 3
preamble: short
band_24_usage: auto
band_5:
allow_rrm_disable: false
ant_gain: 0
bandwidth: 80
channels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 149
- 153
- 157
- 161
disabled: false
power_max: 16
power_min: 9
preamble: short
country_code: FR
created_time: 1594743723
id: b3f20330-f76a-49f1-bc65-0d8727140b1d
model_specific: {}
modified_time: 1613582192
name: Lab
org_id: 203d3d02-dbc0-4c1b-9f41-76896a3330f4
schema:
$ref: '#/components/schemas/rf_template'
description: OK
RftemplatesArray:
content:
application/json:
examples:
example-1:
value:
- ant_gain_24: 0
ant_gain_5: 0
band_24:
allow_rrm_disable: true
ant_gain: 0
bandwidth: 20
channels:
- 1
- 6
- 11
disabled: false
power_max: 11
power_min: 3
preamble: short
band_24_usage: auto
band_5:
allow_rrm_disable: false
ant_gain: 0
bandwidth: 80
channels:
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 149
- 153
- 157
- 161
disabled: false
power_max: 16
power_min: 9
preamble: short
country_code: FR
created_time: 1594743723
id: b3f20330-f76a-49f1-bc65-0d8727140b1d
model_specific: {}
modified_time: 1613582192
name: Lab
org_id: 203d3d02-dbc0-4c1b-9f41-76896a3330f4
schema:
items:
$ref: '#/components/schemas/rf_template'
type: array
description: OK
RogueDetails:
content:
application/json:
examples:
example-1:
value:
manufacture: Intel Corporate
seen_as_client: true
schema:
properties:
manufacture:
type: string
seen_as_client:
type: boolean
required:
- seen_as_client
- manufacture
type: object
description: OK
RogueEventsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1538074800
limit: 10
results:
- ap: 5c5b350e10030
bssid: 38ff363c8c4c
channel: 136
rssi: -54
ssid: MyHomeNetwork
timestamp: 1538074612
- ap: 5c5b350e10030
bssid: 60d02c2394cc
channel: 11
rssi: -59
ssid: Home-Office
timestamp: 1538074612
start: 1538071200
total: 2
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_rogue'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
Router128TRegisterCmd:
content:
application/json:
examples:
example-1:
value:
conductor_cmd: register mist eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdfaWQiOiIyODE4ZTM4Ni04ZGVjLTI1NjItOWVkZS01YjhhMGZiYmRjNzEiLCJzdmMiOiIxMjhyb3V0ZXIiLCJwcm92aWRlciI6ImF3cyIsImVudiI6ImxvY2FsIiwiZXB0ZXJtX3VybCI6IndzczovL2xvY2FsL3dzIiwiaWF0IjoxNjEzODQ3NDg0LCJleHAiOjE2NDUzODM0ODR9.YnhgThKYAj1uaooi6j-zY8dMipp5YqJxnn79B9TB5XQ
registration_code: eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdfaWQiOiIyODE4ZTM4Ni04ZGVjLTI1NjItOWVkZS01YjhhMGZiYmRjNzEiLCJzdmMiOiIxMjhyb3V0ZXIiLCJwcm92aWRlciI6ImF3cyIsImVudiI6ImxvY2FsIiwiZXB0ZXJtX3VybCI6IndzczovL2xvY2FsL3dzIiwiaWF0IjoxNjEzODQ3NDg0LCJleHAiOjE2NDUzODM0ODR9.YnhgThKYAj1uaooi6j-zY8dMipp5YqJxnn79B9TB5XQ
router_shell_cmd: 128agent register --registration-code eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdfaWQiOiIyODE4ZTM4Ni04ZGVjLTI1NjItOWVkZS01YjhhMGZiYmRjNzEiLCJzdmMiOiIxMjhyb3V0ZXIiLCJwcm92aWRlciI6ImF3cyIsImVudiI6ImxvY2FsIiwiZXB0ZXJtX3VybCI6IndzczovL2xvY2FsL3dzIiwiaWF0IjoxNjEzODQ3NDg0LCJleHAiOjE2NDUzODM0ODR9.YnhgThKYAj1uaooi6j-zY8dMipp5YqJxnn79B9TB5XQ
schema:
properties:
conductor_cmd:
type: string
registration_code:
type: string
router_shell_cmd:
type: string
type: object
description: OK
Rrm:
content:
application/json:
examples:
example-1:
value:
band_24: {}
band_24_metric:
avg_aps_per_channel: 0
channel_distribution_uniformity: 0
cochannel_neighbors: 0
density: 0
naps_by_channel: {}
naps_by_power: {}
neighbors: 0
noise: 0
band_5: {}
band_5_metric:
avg_aps_per_channel: 0
channel_distribution_uniformity: 0
cochannel_neighbors: 0
density: 0
naps_by_channel: {}
naps_by_power: {}
neighbors: 0
noise: 0
rftemplate:
band_24:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_5:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
country_code: string
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
model_specific:
property1:
band_24:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_5:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
property2:
band_24:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
band_5:
allow_rrm_disable: true
antenna_mode: default
bandwidth: 20
channel: 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: auto
usage: '24'
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rftemplate_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rftemplate_name: string
status: updating
timestamp: 0
schema:
$ref: '#/components/schemas/rrm'
description: OK
RrmConsideration:
content:
application/json:
examples:
example-1:
value:
results:
- channel: 36
noise: -78
non_wifi: 0.08
other_rssi: -66
other_ssid: Rivendell5G
rssi: -48
util_score: 0.1
util_score_non_wifi: 0.01
util_score_other: 0.05
wifi: 0.13
schema:
properties:
results:
items:
properties:
channel:
type: integer
noise:
type: number
other_rssi:
description: the avg RSSI heard from other APs (that does NOT
belongs to the same site)
type: number
other_ssid:
description: SSID from other AP that we heard from with the
max RSSI
type: string
util_score:
description: utilization score, 0-1, lower means less utilization
(cleaner RF)
type: number
util_score_non_wifi:
description: non-wifi utilization score, 0-1, lower means less
utilization (cleaner RF)
type: number
util_score_other:
description: other utilization score, 0-1, lower means less
utilization (cleaner RF)
type: number
required:
- channel
- noise
- util_score
- util_score_other
- util_score_non_wifi
title: rrm_consideration_item
type: object
minItems: 1
type: array
uniqueItems: true
required:
- results
type: object
description: OK
RrmEvents:
content:
application/json:
examples:
example-1:
value:
end: 1428954000
limit: 100
next: /api/v1/sites/dca0a44b-324c-11e6-a776-0243ad110007/events/rrm?start=1428939600&end=1428949600&limit=200&token=001a0010000000120010000005005880ec18000004776c616e007fffffeb067ab8e29c1d659b6a7c8cf698bf81490003
results:
- ap_id: 00000000-0000-0000-1000-5c5b359e4fe0
band: '24'
bandwidth: 20
channel: 6
event: scheduled-site-rrm
power: 5
pre_bandwidth: 20
pre_channel: 1
pre_power: 11
pre_usage: '24'
timestamp: 1428939600
usage: '24'
start: 1428939600
schema:
properties:
end:
type: integer
limit:
type: integer
next:
description: the link to query next set of results. value is null
if no next page exists.
type: string
results:
items:
properties:
ap_id:
format: uuid
type: string
band:
$ref: '#/components/schemas/dot11_band'
bandwidth:
$ref: '#/components/schemas/dot11_bandwidth'
channel:
description: channel for the band from rrm
type: integer
event:
description: schedule-site-rrm / triggered-site-rrm / interference-ap-co-channel
/ rrm-radar
enum:
- triggered-site-rrm
- interference-ap-co-channel
- rrm-radar
- scheduled-site-rrm
- interference-ap-non-wifi
- radar-detected
- neighbor-ap-down
- neighbor-ap-recovered
type: string
power:
description: tx power of the radio
type: integer
pre_bandwidth:
description: (previously) channel width for the band , 0 means
no previously available
enum:
- 0
- 20
- 40
- 80
- 160
type: integer
pre_channel:
description: (previously) channel for the band, 0 means no previously
available
type: integer
pre_power:
description: (previously) tx power of the radio, 0 means no
previously available
type: number
pre_usage:
type: string
timestamp:
description: timestamp of the event
type: number
usage:
type: string
required:
- ap_id
- band
- bandwidth
- channel
- event
- power
- pre_bandwidth
- pre_channel
- pre_power
- pre_usage
- timestamp
- usage
title: rrm_event
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
required:
- end
- limit
- results
- start
type: object
description: OK
RrmNeighbors:
content:
application/json:
examples:
example-1:
value:
results:
- band: 6
bssid: a7c7096d7b8f
rssi: -78
schema:
properties:
results:
items:
properties:
band:
example: 6
type: integer
bssid:
example: a7c7096d7b8f
type: string
rssi:
example: -66
type: integer
required:
- bssid
- rssi
- band
title: rrm_neighbors_item
type: object
minItems: 1
type: array
uniqueItems: true
required:
- results
type: object
description: OK
Rssizone:
content:
application/json:
examples:
example-1:
value:
created_time: 0
devices:
- device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rssi: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/rssi_zone'
description: OK
RssizonesArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
devices:
- device_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
rssi: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
items:
$ref: '#/components/schemas/rssi_zone'
type: array
description: OK
Sdkinvite:
content:
application/json:
examples:
example-1:
value:
created_time: 1428954000
enabled: true
expire_time: 1428954000
id: 5034b980-b49e-501c-66e0-9de4c38f18a2
name: Macy's
quota: -1
schema:
$ref: '#/components/schemas/sdkinvite'
description: OK
SdkinvitesArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 1428954000
enabled: true
expire_time: 1428954000
id: 5034b980-b49e-501c-66e0-9de4c38f18a2
name: Macy's
quota: -1
schema:
items:
$ref: '#/components/schemas/sdkinvite'
type: array
description: OK
Sdktemplate:
content:
application/json:
examples:
example-1:
value:
bg_image: http://p.imgci.com/db/PICTURES/CMS/227700/227791.4.jpg
btn_flr_bgcolor: '#282828'
default: true
header_txt: Mist
name: default
search_txtcolor: '#282828'
welcome_msg: Welcome to Mist
schema:
$ref: '#/components/schemas/sdktemplate'
description: OK
SdktemplatesArray:
content:
application/json:
examples:
example-1:
value:
- bg_image: http://p.imgci.com/db/PICTURES/CMS/227700/227791.4.jpg
btn_flr_bgcolor: '#282828'
default: true
header_txt: Mist
name: default
search_txtcolor: '#282828'
welcome_msg: Welcome to Mist
schema:
items:
$ref: '#/components/schemas/sdktemplate'
type: array
description: Example response
Search:
content:
application/json:
examples:
example-1:
value:
limit: 0
page: 0
results:
- id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
text: string
type: string
total: 0
schema:
properties:
limit:
type: integer
next:
type: string
page:
type: integer
results:
items:
properties:
id:
format: uuid
type: string
text:
type: string
type:
type: string
required:
- id
- text
- type
title: org_group
type: object
minItems: 1
type: array
uniqueItems: true
total:
type: integer
required:
- limit
- page
- results
- total
type: object
description: OK
SearchVar:
content:
application/json:
examples:
Example:
value:
end: 1693952979
limit: 10
results:
- created_time: 1618457655.384858
modified_time: 1693610886.477805
org_id: 0c160b7f-1027-4cd1-923b-744534c4b070
site_id: 1519f016-4e41-47c0-a396-cce4d04bac0b
src: site
var: mvp
start: 1693949379
total: 1
schema:
properties:
end:
type: integer
limit:
type: integer
results:
items:
properties:
created_time:
type: number
modified_time:
type: number
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
src:
type: string
var:
type: string
title: org_var_search_result
type: object
type: array
start:
type: integer
total:
type: integer
type: object
description: OK
SecpoliciesArray:
content:
application/json:
examples:
Example:
value:
- name: corporate only
wlans:
- auth:
pairwise:
- wpa1-tkip
- wpa2-tkip
type: psk
band: both
ssid: office
- auth:
type: open
band: '5'
ssid: office-guest
schema:
items:
$ref: '#/components/schemas/secpolicy'
type: array
description: OK
Secpolicy:
content:
application/json:
examples:
Example:
value:
name: corporate only
wlans:
- auth:
pairwise:
- wpa1-tkip
- wpa2-tkip
type: psk
band: both
ssid: office
- auth:
type: open
band: '5'
ssid: office-guest
schema:
$ref: '#/components/schemas/secpolicy'
description: OK
SelfAuditLogs:
content:
application/json:
examples:
example-1:
value:
end: 1428954000
limit: 100
page: 1
results:
- admin_id: 72bfa2bd-e58a-4670-9d20-a1468f7a6f58
admin_name: test@mistsys.com
after:
auth:
type: open
before:
auth:
type: psk
id: c6f9347b-b0a4-4a23-b927-fa9249f2ffb2
message: Update WLAN "Corporate"
org_id: 423f6eca-6276-4994-bfeb-53cbbbba6f04
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
timestamp: 1431382121
start: 1428939600
total: 135
schema:
properties:
end:
type: integer
limit:
type: integer
page:
type: integer
results:
items:
properties:
admin_id:
format: uuid
type: string
admin_name:
type: string
after:
description: field values after the change
properties:
auth:
properties:
type:
type: string
required:
- type
type: object
required:
- auth
type: object
before:
description: field values prior to the change
properties:
auth:
properties:
type:
type: string
required:
- type
type: object
required:
- auth
type: object
for_site:
readOnly: true
type: boolean
id:
format: uuid
type: string
message:
type: string
org_id:
format: uuid
type: string
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: number
required:
- admin_id
- admin_name
- id
- message
- org_id
- site_id
- timestamp
title: self_log_search_result
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- page
- results
- start
- total
type: object
description: OK
SelfOauthLinkFailure:
content:
application/json:
examples:
example-1:
value:
error: access_denied
error_description: The resource owner or authorization server denied
the request.
schema:
properties:
error:
type: string
error_description:
type: string
required:
- error
- error_description
type: object
description: Authorization Error
SelfOauthLinkSuccess:
content:
application/json:
examples:
example-1:
value:
action: oauth account linked
id: google-user-id
schema:
properties:
action:
type: string
id:
type: string
required:
- action
- id
type: object
description: OK
SelfOauthUrl:
content:
application/json:
examples:
example-1:
value:
authorization_url: https://accounts.google.com/o/oauth2/v2/auth?.....
linked: false
schema:
properties:
authorization_url:
type: string
linked:
type: boolean
required:
- linked
- authorization_url
type: object
description: OK
SelfSubscriptions:
content:
application/json:
schema:
items:
properties:
org_id:
format: uuid
type: string
required:
- org_id
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
SelfVerifyEmailFailed:
content:
application/json:
examples:
invalid-or-expired-token:
value:
detail: invalid token
new-email-address-already-exists:
value:
detail: email already existed
request-comes-from-authenticated-users-other-than-admin:
value:
detail: invalid token
schema:
properties:
detail:
type: string
required:
- detail
type: object
description: Bad Request
SelfVerifyEmailSuccess:
content:
application/json:
schema:
properties: {}
type: object
description: With correct verification, the email address of the user will be
updated
Service:
content:
application/json:
examples:
example-1:
value:
addresses:
- string
app_caetgories:
- string
apps:
- string
created_time: 0
dscp: 0
failover_policy: revertable
hostnames:
- string
id: 497f6eca-6276-5004-bfeb-53cbbbba6f16
max_jitter: 0
max_latency: string
max_loss: 0
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
sle_enabled: false
specs:
- port_range: '0'
protocol: any
traffic_class: best_effort
traffic_type: data_best_effort
type: custom
vpn_name: addresses
schema:
$ref: '#/components/schemas/service'
description: OK
ServicePathEventsSearch:
content:
application/json:
examples:
Example:
value:
end: 1697096379
limit: 10
results:
- mac: 90ec7734b374
model: SSR120
org_id: a3c6718f-2823-4e48-bf5e-b841768a4c9b
policy: INTERNET
port_id: ge-1/0/6
site_id: 4279edbd-1d24-41ea-9505-2eb26c8590fa
text: Peer Path Down
timestamp: 1697037328.651775
type: GW_SERVICE_PATH_REMOVE
version: 6.1.5-14.lts
vpn_name: Syracuse_HUB
vpn_path: Syracuse_HUB-Wan0
start: 1697009979
total: 2
schema:
properties:
end:
example: 1697096379
type: integer
limit:
example: 10
type: integer
results:
items:
$ref: '#/components/schemas/service_path_event'
type: array
start:
example: 1697009979
type: integer
total:
example: 2
type: integer
type: object
description: Example response
ServicePoliciesArray:
content:
application/json:
examples:
Example:
value:
- action: allow
created_time: 0
id: string
modified_time: 0
name: string
org_id: string
services:
- string
tenants:
- string
schema:
items:
$ref: '#/components/schemas/service_policy'
type: array
description: Example response
ServicePolicy:
content:
application/json:
schema:
$ref: '#/components/schemas/service_policy'
description: Example response
ServicesArray:
content:
application/json:
examples:
example-1:
value:
- addresses:
- string
apps:
- string
dscp_class: string
hostnames:
- string
max_jitter: 0
max_latency: string
max_loss: 0
name: string
specs:
- port_range: '0'
protocol: any
traffic_class: best_effort
traffic_type: default
type: custom
vpn_name: addresses
schema:
items:
$ref: '#/components/schemas/service'
type: array
description: OK
SetDevicesMap:
content:
application/json:
examples:
Example:
value:
locked:
- 5c5b35584a6f
moved:
- 5c5b35000001
schema:
properties:
locked:
items:
example: 5c5b35584a6f
type: string
type: array
moved:
items:
example: 5c5b35000001
type: string
type: array
type: object
description: OK
Site:
content:
application/json:
examples:
example-1:
value:
address: 1601 S. Deanza Blvd., Cupertino, CA, 95014
alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
apporttemplate_id: string
aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b
country_code: US
created_time: 0
gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f
id: 497f6eca-6276-5005-bfeb-53cbbbba6f17
latlng:
lat: 37.295833
lng: -122.032946
modified_time: 0
name: Mist Office
networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2
notes: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2
secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef
sitegroup_ids:
- 497f6eca-6276-5006-bfeb-53cbbbba6f18
timezone: America/Los_Angeles
schema:
$ref: '#/components/schemas/site'
description: OK
SiteApps:
content:
application/json:
examples:
example-1:
value:
- group: string
key: string
name: string
schema:
items:
properties:
group:
minLength: 1
type: string
key:
minLength: 1
type: string
name:
minLength: 1
type: string
required:
- key
- name
- group
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
SiteSettings:
content:
application/json:
examples:
Example:
value:
additional_config_cmds:
- set snmp community public
analytic:
enabled: false
ap_matching:
enabled: true
rules:
- eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
ap_port_config:
model_specific:
AP32:
eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
auto_placement:
orientation: 45
x: 30
y: 60
auto_preemption:
day_of_week: any
enabled: false
time_of_day: any
auto_upgrade:
custom_versions:
AP21: stable
AP41: 0.1.5135
AP61: 0.1.7215
day_of_week: sun
enabled: false
time_of_day: '12:00'
version: beta
blacklist_url: https://papi.s3.amazonaws.com/blacklist/xxx...
ble_config:
beacon_enabled: false
beacon_rate: 3
beacon_rate_mode: custom
beam_disabled:
- 1
- 3
- 6
custom_ble_packet_enabled: false
custom_ble_packet_frame: 0x........
custom_ble_packet_freq_msec: 300
eddystone_uid_adv_power: -65
eddystone_uid_beams: 2-4,7
eddystone_uid_enabled: false
eddystone_uid_freq_msec: 200
eddystone_uid_instance: 5c5b35000001
eddystone_uid_namespace: 2818e3868dec25629ede
eddystone_url_adv_power: -65
eddystone_url_beams: 2-4,7
eddystone_url_enabled: true
eddystone_url_freq_msec: 1000
eddystone_url_url: https://www.abc.com
ibeacon_adv_power: -65
ibeacon_beams: 2-4,7
ibeacon_enabled: false
ibeacon_freq_msec: 0
ibeacon_major: 13
ibeacon_minor: 138
ibeacon_uuid: f3f17139-704a-f03a-2786-0400279e37c3
power: 10
power_mode: custom
config_auto_revert: false
created_time: 0
device_updown_threshold: 0
dns_servers:
- string
dns_suffix:
- string
engagement:
dwell_tag_names:
bounce: Bounce
engaged: Engaged
passerby: Passer By
stationed: Stationed
dwell_tags:
bounce: 'null'
engaged: 300-14400
passerby: 'null'
stationed: 14400-43200
hours:
fri: 09:00-17:00
mon: 09:00-17:00
sat: 09:00-12:00
sun: 09:00-12:00
thu: 09:00-17:00
tue: 09:00-17:00
wed: 09:00-17:00
max_dwell: 43200
min_dwell: 0
evpn_options:
auto_loopback_subnet: 100.101.0.0/16
auto_router_id_subnet: 100.100.0.0/24
core_as_border: false
overlay:
as: 65000
per_vlan_vga_v4_mac: false
routed_at: edge
underlay:
as_base: 65001
routed_id_prefix: /24
subnet: 10.255.240.0/20
flags:
property1: string
property2: string
for_site: true
gateway_additional_config_cmds:
- set snmp community public
gateway_mgmt:
admin_sshkeys:
- string
app_probing:
apps:
- string
custom_apps:
- app_type: string
hostname:
- string
name: string
protocol: http
enabled: true
app_usage: true
auto_signature_update:
day_of_week: mon
enable: true
time_of_day: string
config_revert_timer: 10
probe_hosts:
- string
root_password: string
security_log_source_address: string
security_log_source_interface: string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f09
led:
brightness: 255
enabled: true
modified_time: 0
mxedge:
mist_das:
coa_servers:
- disable_event_timestamp_check: false
enabled: true
host: string
port: 3799
secret: string
enabled: false
radsec:
acct_servers:
- host: string
port: 1813
secret: string
ssids:
- string
auth_servers:
- host: string
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: string
keywrap_mack: string
port: 1812
secret: string
ssids:
- string
enabled: true
match_ssid: true
proxy_hosts:
- string
server_selection: ordered
source: any
mxedge_mgmt:
mist_password: MIST_PASSWORD
root_password: ROOT_PASSWORD
mxtunnels:
additional_mxtunnels:
property1:
clusters:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
hello_interval: 60
hello_retries: 3
protocol: udp
vlan_ids:
- 300
- 310
- 320
property2:
clusters:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
hello_interval: 60
hello_retries: 3
protocol: udp
vlan_ids:
- 300
- 310
- 320
ap_subnets:
- 0.0.0.0/0
auto_preemption:
day_of_week: mon
enabled: false
time_of_day: '12:00'
clusters:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
created_time: 0
enabled: true
for_site: true
hello_interval: 60
hello_retries: 3
hosts:
- string
id: 497f6eca-6276-4993-bfeb-53cbbbba6f28
modified_time: 0
mtu: 1100
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
protocol: udp
radsec:
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
enabled: false
use_mxedge: true
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
vlan_ids:
- 3
- 5
- 6
- 7-9
networks:
property1:
dns:
- string
dns_suffix:
- string
gateway: string
ospf_interface_type: string
subnet: string
vlan_id: 0
zone: string
property2:
dns:
- string
dns_suffix:
- string
gateway: string
ospf_interface_type: string
subnet: string
vlan_id: 0
zone: string
ntp_servers:
- string
occupancy:
assets_enabled: false
clients_enabled: true
min_duration: 3000
sdkclients_enabled: false
unconnected_clients_enabled: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
ospf_areas:
property1:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
property2:
include_loopback: false
networks:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: default
persist_config_on_device: false
port_mirroring:
property1:
egress_port_ids:
- ge-0/0/3
ingress_networks:
- corp
ingress_port_ids:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
property2:
egress_port_ids:
- ge-0/0/3
ingress_networks:
- corp
ingress_port_ids:
- ge-0/0/3
output_network: analyze
output_port_id: ge-0/0/5
port_usages:
dynamic:
mode: dynamic
reset_default_when: link_down
rules:
- equals: string
equals_any:
- string
expression: string
src: lldp_chassis_id
usage: string
property1:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
property2:
all_networks: false
allow_dhcpd: true
authentication_protocol: pap
bypass_auth_when_server_down: true
description: string
disable_autoneg: false
disabled: false
duplex: auto
enable_mac_auth: true
enable_qos: true
guest_network: string
mac_auth_only: true
mac_limit: 0
mode: access
mtu: 0
networks:
- string
persist_mac: false
poe_disabled: false
port_auth: string
port_network: string
rejected_network: null
speed: string
storm_control:
no_broadcast: false
no_multicast: false
no_registered_multicast: false
no_unknown_unicast: false
percentage: 80
stp_edge: true
voip_network: string
proxy:
url: http://proxy.internal:8080/
radio_config:
allow_rrm_disable: false
ant_gain_24: 4
ant_gain_5: 5
ant_gain_6: 5
antenna_mode: default
band_24:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_24_usage: '5'
band_5:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_5_on_24_radio:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
band_6:
allow_rrm_disable: true
ant_gain: 0
antenna_mode: default
bandwidth: 20
channel: 0
channels:
- 0
disabled: true
power: 0
power_max: 0
power_min: 0
preamble: short
usage: '24'
indoor_use: false
scanning_enabled: true
radius_config:
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_retries: 3
auth_servers_timeout: 5
coa_enabled: false
coa_port: 3799
network: string
source_ip: string
remote_syslog:
archive:
files: 20
size: 5m
console:
contents:
- facility: config
severity: warning
enabled: false
files:
- archive:
files: 10
size: 5m
contents:
- facility: config
severity: warning
explicit_priority: true
file: file-name
match: '!alarm|ntp|errors.crc_error[chan]'
structured_data: true
network: default
send_to_all_servers: false
servers:
- facility: config
host: syslogd.internal
port: 514
protocol: udp
severity: info
tag: ''
time_format: millisecond
users:
- contents:
- facility: config
severity: warning
match: '"!alarm|ntp|errors.crc_error[chan]"'
user: '*'
report_gatt: false
rogue:
enabled: false
honeypot_enabled: false
min_duration: 10
min_rssi: -80
whitelisted_bssids:
- NeighborSSID
whitelisted_ssids:
- cc:8e:6f:d4:bf:16
- cc-8e-6f-d4-bf-16
- cc-73-*
- cc:82:*
rtsa:
app_waking: false
disable_dead_reckoning: true
disable_pressure_sensor: false
enabled: true
track_asset: false
simple_alert:
arp_failure:
client_count: 10
duration: 20
incident_count: 10
dhcp_failure:
client_count: 10
duration: 10
incident_count: 20
dns_failure:
client_count: 20
duration: 10
incident_count: 30
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
skyatp:
enabled: true
send_ip_mac_mapping: true
srx_app:
enabled: false
ssh_keys:
- ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host
ssr:
conductor_hosts:
- '"1.1.1.1", "2.2.2.2"'
disable_stats: true
status_portal:
enabled: false
hostnames:
- my.misty.com
switch_matching:
additional_config_cmds:
- set snmp community public
enabled: false
rules:
- property1:
match_model: string
name: string
port_config:
property1:
usage: string
property2:
usage: string
property2:
match_model: string
name: string
port_config:
property1:
usage: string
property2:
usage: string
switch_mgmt:
ap_affinity_threshold: 10
config_revert_timer: 10
dhcp_option_fqdn: false
mxedge_proxy_host: string
mxedge_proxy_port: 2222
protect_re:
allowed_services:
- '["snmp", "icmp"]'
custom:
- port_range: string
protocol: any
subnets:
- string
enabled: true
trusted_hosts:
- '["10.242.3.0/24"]'
root_password: string
tacacs:
acct_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
enabled: true
network: string
tacplus_servers:
- host: 198.51.100.1
port: '49'
secret: string
timeout: 10
use_mxedge_proxy: true
track_anonymous_devices: false
tunterm_monitoring:
- host: 10.2.8.15
port: 80
protocol: tcp
timeout: 300
tunterm_monitoring_disabled: false
vars:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
vna:
enabled: false
vrf_instances:
guest:
extra_routes:
0.0.0.0/0:
via: 192.168.31.1
networks:
- guest
vrrp_groups:
property1:
auth_key: auth-key-1
auth_password: string
auth_type: md5
networks:
data:
ip: 10.182.96.1
mgmt:
ip: 10.182.104.1
v10:
ip: 10.182.104.129
wap:
ip: 10.182.102.1
property2:
auth_key: auth-key-1
auth_password: string
auth_type: md5
networks:
data:
ip: 10.182.96.1
mgmt:
ip: 10.182.104.1
v10:
ip: 10.182.104.129
wap:
ip: 10.182.102.1
vs_instances:
property1:
networks:
- guest
property2:
networks:
- guest
wan_vna:
enabled: false
watched_station_url: https://papi.s3.amazonaws.com/watched_station/xxx...
whitelist_url: https://papi.s3.amazonaws.com/whitelist/xxx...
wids:
repeated_auth_failures:
duration: 60
threshold: 0
wifi:
cisco_enabled: true
disable_11k: false
disable_radios_when_power_constrained: false
enable_arp_spoof_check: false
enable_shared_radio_scanning: true
enabled: true
locate_connected: true
locate_unconnected: false
mesh_allow_dfs: false
mesh_enable_crm: false
mesh_enabled: false
mesh_psk: string
mesh_ssid: string
proxy_arp: default
wired_vna:
enabled: false
zone_occupancy_alert:
email_notifiers:
- foo@juniper.net
- bar@juniper.net
enabled: false
threshold: 5
schema:
$ref: '#/components/schemas/site_setting'
description: OK
SiteSleMetrics:
content:
application/json:
examples:
example-1:
value:
enabled:
- coverage
- capacity
- time-to-connect
- failed-to-connect
- roaming
- roaming-v2
- throughput
- switch-health
- switch-throughput
- switch-stc
- gateway-health
- application-health
- wan-link-health
- ap-availability
supported:
- coverage
- capacity
- time-to-connect
- failed-to-connect
- roaming
- roaming-v2
- location-jitter
- location-latency
- throughput
- location-dropped-requests
- switch-health
- switch-throughput
- switch-stc
- gateway-health
- application-health
- wan-link-health
- ap-availability
- location-sdk-connect-time
- location-ble-hung
schema:
properties:
enabled:
items:
type: string
type: array
supported:
items:
type: string
type: array
required:
- supported
- enabled
type: object
description: OK
SiteTemplate:
content:
application/json:
examples:
example-1:
value:
auto_upgrade:
day_of_week: mon
enabled: true
time_of_day: string
version: string
name: string
vars:
SSID_STR: string
VLAN_ID: string
schema:
$ref: '#/components/schemas/site_template'
description: Example response
SiteTemplatesArray:
content:
application/json:
examples:
example-1:
value:
- auto_upgrade:
day_of_week: mon
enabled: true
time_of_day: string
version: string
name: string
vars:
SSID_STR: string
VLAN_ID: string
schema:
items:
$ref: '#/components/schemas/site_template'
type: array
description: Example response
SiteWebhookUpdateFailed:
content:
application/json:
examples:
RawDataWebhook-already-created:
value:
detail: Webhook already configured for special location topic
webhook_id: f1ff49e8-9f77-420a-9854-c7de46d7cf80
RawDataWebhook-multiple-topics:
value:
detail: Only one location topic can be configured per URL
schema:
properties:
detail:
type: string
webhook_id:
type: string
type: object
description: Bad request
Sitegroup:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/sitegroup'
description: OK
SitegroupsArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
items:
$ref: '#/components/schemas/sitegroup'
minItems: 1
type: array
uniqueItems: true
description: OK
SitesArray:
content:
application/json:
examples:
example-1:
value:
- address: 1601 S. Deanza Blvd., Cupertino, CA, 95014
alarmtemplate_id: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
apporttemplate_id: string
aptemplate_id: 16bdf952-ade2-4491-80b0-85ce506c760b
country_code: US
created_time: 0
gatewaytemplate_id: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f
id: 497f6eca-6276-5007-bfeb-53cbbbba6f19
latlng:
lat: 37.295833
lng: -122.032946
modified_time: 0
name: Mist Office
networktemplate_id: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2
notes: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
rftemplate_id: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2
secpolicy_id: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef
sitegroup_ids:
- 497f6eca-6276-5008-bfeb-53cbbbba6f1a
timezone: America/Los_Angeles
schema:
items:
$ref: '#/components/schemas/site'
type: array
description: OK
SitesSearch:
content:
application/json:
examples:
example-1:
value:
end: 0
limit: 0
next: string
results:
- auto_upgrade_enabled: true
auto_upgrade_version: string
country_code: string
honeypot_enabled: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
timestamp: 0
timezone: string
vna_enabled: true
wifi_enabled: true
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
properties:
auto_upgrade_enabled:
type: boolean
auto_upgrade_version:
readOnly: true
type: string
country_code:
nullable: true
readOnly: true
type: string
honeypot_enabled:
type: boolean
id:
format: uuid
readOnly: true
type: string
name:
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
readOnly: true
type: number
timezone:
readOnly: true
type: string
vna_enabled:
type: boolean
wifi_enabled:
type: boolean
required:
- honeypot_enabled
- wifi_enabled
- vna_enabled
- timezone
- country_code
- timestamp
- org_id
- site_id
- name
- id
- auto_upgrade_version
- auto_upgrade_enabled
title: site_search_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- results
- start
- end
- limit
- total
type: object
description: OK
SkyAtpEventsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1513176951
limit: 10
results:
- device_mac: 658279bb1fa4
ip: 172.16.0.11
mac: b019c66c8348
org_id: 3139f2c2-fac6-11e5-8156-0242ac110006
site_id: 70e0f468-fc13-11e5-85ad-0242ac110008
threat_level: 7
timestamp: 1592524478
type: cc
start: 1512572151
total: 1
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/events_skyatp'
minItems: 1
type: array
uniqueItems: true
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
SleClassifierSummary:
content:
application/json:
examples:
example-1:
value:
classifier:
impact:
num_aps: 2
num_users: 17
interval: 3600
name: wifi-interference
samples:
degraded:
- 0
- 0
- 210.03334
- 3.1333334
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 102.5
- 108.03333
- 0
- 0
- 201.9
- 566.48334
- 135.63333
- 0
duration:
- 0
- 0
- 210.03334
- 3.1333334
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 102.5
- 108.03333
- 0
- 0
- 201.9
- 566.48334
- 135.63333
- 0
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 444.13333
x_label: seconds
y_label: user-minutes
end: 1627312871
failures: []
impact:
num_aps: 2
num_users: 21
total_aps: 3
total_users: 26
metric: capacity
start: 1627226471
schema:
$ref: '#/components/schemas/sle_classifier_summary'
description: Example response
SleHistogram:
content:
application/json:
examples:
example-1:
value:
data:
- range:
- null
- 0
value: 0
- range:
- 0
- 10
value: 0
- range:
- 10
- 20
value: 5105
- range:
- 20
- 30
value: 10616
- range:
- 30
- 40
value: 40051
- range:
- 40
- 50
value: 141201
- range:
- 50
- 60
value: 949823
- range:
- 60
- 70
value: 686308
- range:
- 70
- 80
value: 177670
- range:
- 80
- 90
value: 689
- range:
- 90
- 100
value: 0
- range:
- 100
- null
value: 0
end: 1627055181
metric: capacity
start: 1626968781
x_label: available-bandwidth(%)
y_label: seconds
schema:
$ref: '#/components/schemas/sle_histogram'
description: Example response
SleImpactSummary:
content:
application/json:
examples:
example-1:
value:
ap:
- ap_mac: 5c5b3550bd2e
degraded: 1486
duration: 0
name: ap43-off.lab
total: 27406
- ap_mac: d420b083e17a
degraded: 3
duration: 0
name: ap33-ent.lab
total: 1193
band:
- band: '24'
degraded: 1410
duration: 0
name: '24'
total: 28536
- band: '5'
degraded: 78
duration: 0
name: '5'
total: 4679
classifier: ''
device_os:
- degraded: 1329
device_os: ''
duration: 0
name: unknown
total: 27165
- degraded: 81
device_os: Linux
duration: 0
name: Linux
total: 1437
- degraded: 36
device_os: Android 11
duration: 0
name: Android 11
total: 761
- degraded: 39
device_os: '14.6'
duration: 0
name: '14.6'
total: 2413
- degraded: 2
device_os: Catalina
duration: 0
name: Catalina
total: 1438
device_type:
- degraded: 1410
device_type: ''
duration: 0
name: unknown
total: 28603
- degraded: 2
device_type: iPhone
duration: 0
name: iPhone
total: 1263
- degraded: 36
device_type: OnePlus
duration: 0
name: OnePlus
total: 761
- degraded: 37
device_type: iPad
duration: 0
name: iPad
total: 1150
- degraded: 2
device_type: Mac
duration: 0
name: Mac
total: 1438
end: 1627312734
failure: ''
metric: capacity
start: 1627226334
wlan:
- degraded: 37
duration: 0
name: MlN.ADM
total: 1150
wlan_id: ba3f85fc-ba48-4d8f-ad89-152e5c42db18
- degraded: 1410
duration: 0
name: MlN
total: 28603
wlan_id: 649a2336-b1e0-47bd-961c-f637dbe50e7b
- degraded: 41
duration: 0
name: MlN.1X
total: 3462
wlan_id: a937da77-fe3c-4784-86c4-f2134d7b1483
schema:
$ref: '#/components/schemas/sle_impact_summary'
description: Example response
SleImpactedApplications:
content:
application/json:
examples:
example-1:
value:
apps:
- app: ZOOM
degraded: 371103
duration: 0
name: ZOOM
threshold: 173
total: 1771274
classifier: ''
end: 1668760746
failure: ''
limit: '1000'
metric: application-health
page: 1
start: 1668121200
total_count: 1
schema:
$ref: '#/components/schemas/sle_impacted_applications'
description: Example response
SleImpactedAps:
content:
application/json:
examples:
example-1:
value:
aps:
- ap_mac: 5c5b35500000
degraded: 1486
duration: 0
name: ap43.lab
total: 27377
- ap_mac: d420b0830000
degraded: 3
duration: 0
name: ap33.lab
total: 1189
classifier: ''
end: 1627313016
failure: ''
limit: 1000
metric: capacity
page: 1
start: 1627226616
total_count: 2
schema:
$ref: '#/components/schemas/sle_impacted_aps'
description: Example response
SleImpactedChassis:
content:
application/json:
examples:
example-1:
value:
chassis:
- chassis: '1'
degraded: 12.283334
duration: 13655.167
role: master
switch_mac: d0dd49012345
switch_name: test-chassis
total: 13655.167
classifier: ''
end: 1668760643
failure: ''
limit: 1000
metric: switch-health
page: 1
start: 1668121200
total_count: 1
schema:
$ref: '#/components/schemas/sle_impacted_chassis'
description: Example response
SleImpactedClients:
content:
application/json:
examples:
example-1:
value:
classifier: ''
clients:
- degraded: 40
duration: 11014
mac: '001122334455'
name: test-device
switches:
- interfaces:
- ge-0/0/6
switch_mac: 2c2131001122
switch_name: test-ex
total: 11014
end: 1668760198
failure: ''
limit: 1000
metric: switch-throughput
page: 1
start: 1668726000
total_count: 1
schema:
$ref: '#/components/schemas/sle_impacted_clients'
description: Example response
SleImpactedGateways:
content:
application/json:
examples:
example-1:
value:
classifier: ''
end: 1668760746
failure: ''
gateways:
- degraded: 758573.1
duration: 2770997
gateway_mac: fc3342001122
gateway_model: SRX320
gateway_version: 20.4R1.12
name: test-SRX
total: 2770997
limit: 1000
metric: application-health
page: 1
start: 1668121200
total_count: 1
schema:
$ref: '#/components/schemas/sle_impacted_gateways'
description: Example response
SleImpactedInterfaces:
content:
application/json:
examples:
example-1:
value:
classifier: ''
end: 1668760198
failure: ''
interfaces:
- degraded: 11.583333
duration: 765.4667
interface_name: ge-0/0/10
switch_mac: 2c2131001122
switch_name: test-ex
total: 765.4667
- degraded: 191.08333
duration: 13775.35
interface_name: xe-0/1/0
switch_mac: 2c2131001122
switch_name: test-ex
total: 13775.35
limit: 1000
metric: switch-throughput
page: 1
start: 1668726000
total_count: 5
schema:
$ref: '#/components/schemas/sle_impacted_interfaces'
description: Example response
SleImpactedSwitches:
content:
application/json:
examples:
example-1:
value:
classifier: ''
end: 1668760198
failure: ''
limit: 1000
metric: switch-throughput
page: 1
start: 1668726000
switches:
- degraded: 109.88333
duration: 5753.75
interface:
- ge-0/0/11
- xe-0/1/0
name: test-ex
switch_mac: 2c2131001122
switch_model: EX2300-C-12P
switch_version: 20.4R3-S3.4
total: 5753.75
total_count: 1
schema:
$ref: '#/components/schemas/sle_impacted_switches'
description: Example response
SleImpactedUsers:
content:
application/json:
examples:
example-1:
value:
classifier: ''
end: 1627313103
failure: ''
limit: 1000
metric: capacity
page: 1
start: 1627226703
total_count: 21
users:
- ap_mac: d420b0830000
ap_name: ap33.lab
degraded: 2
device_os: '14.6'
device_type: iPhone
duration: 1270
mac: dc080f360000
name: aPhone-20973
ssid: lab.1X
total: 1270
wlan_id: a937da77-0000-0000-0000-f2134d7b1483
- ap_mac: 5c5b35500000
ap_name: ap43.lab
degraded: 36
device_os: Android 11
device_type: OnePlus
duration: 767
mac: 4c4feedc0000
name: OnePlus-8
ssid: lab.1X
total: 767
wlan_id: a937da77-0000-0000-0000-f2134d7b1483
- ap_mac: 5c5b35500000
ap_name: ap43.lab
degraded: 2
device_os: Catalina
device_type: Mac
duration: 1405
mac: a483e7390000
name: tmunzer-mbp
ssid: lab.1X
total: 1405
wlan_id: a937da77-0000-0000-0000-f2134d7b1483
- ap_mac: 5c5b35500000
ap_name: ap43.lab
degraded: 81
device_os: Linux
device_type: unknown
duration: 1403
mac: 5caafd0d0000
name: SonosZP
ssid: lab
total: 1403
wlan_id: 649a2336-0000-0000-0000-f637dbe50e7b
schema:
$ref: '#/components/schemas/sle_impacted_users'
description: Example response
SleSummary:
content:
application/json:
examples:
example-1:
value:
classifiers:
- impact:
num_aps: 1
num_users: 4
total_aps: 3
total_users: 26
interval: 3600
name: client-count
samples:
degraded:
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 5.8
- 0
- 0
- 0
- 4.65
- 0
- 7.55
- 47.55
- 13.266666
duration:
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 5.8
- 0
- 0
- 0
- 4.65
- 0
- 7.55
- 47.55
- 13.266666
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 289.83334
x_label: seconds
y_label: user-minutes
- impact:
num_aps: 2
num_users: 17
total_aps: 3
total_users: 26
interval: 3600
name: wifi-interference
samples:
degraded:
- 0
- 0
- 210.03334
- 3.1333334
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 102.5
- 108.03333
- 0
- 0
- 201.9
- 566.48334
- 135.63333
- 0
duration:
- 0
- 0
- 210.03334
- 3.1333334
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 102.5
- 108.03333
- 0
- 0
- 201.9
- 566.48334
- 135.63333
- 0
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 289.83334
x_label: seconds
y_label: user-minutes
- impact:
num_aps: 0
num_users: 0
total_aps: 3
total_users: 26
interval: 3600
name: client-usage
samples:
degraded:
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
duration:
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 289.83334
x_label: seconds
y_label: user-minutes
- impact:
num_aps: 1
num_users: 17
total_aps: 3
total_users: 26
interval: 3600
name: non-wifi-interference
samples:
degraded:
- 0
- 0
- 0
- 0
- 16.65
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 31.15
- 17.616667
- 17.85
- 0
- 0
- 0
- 0
duration:
- 0
- 0
- 0
- 0
- 16.65
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 31.15
- 17.616667
- 17.85
- 0
- 0
- 0
- 0
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 289.83334
x_label: seconds
y_label: user-minutes
end: 1627312606
events: []
impact:
num_aps: 2
num_users: 21
total_aps: 3
total_users: 26
sle:
interval: 3600
name: capacity
samples:
degraded:
- 0
- 0
- 210.03334
- 3.1333334
- 16.65
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 0
- 5.8
- 102.5
- 139.18333
- 17.616667
- 22.5
- 201.9
- 574.0333
- 183.18333
- 13.266666
total:
- 1302.3
- 1289.0167
- 1396.3167
- 1423.6666
- 1439.2167
- 1414.7
- 1361.0834
- 1371.5834
- 1372.0667
- 1339.1
- 1374.3667
- 1369.9
- 1352.4833
- 1382.8
- 1426.7167
- 1425.6333
- 1403.9333
- 1420.75
- 1416.8334
- 1437.3334
- 1425.1
- 1485.3667
- 1426.4333
- 289.83334
value:
- 0.6764934
- 0.6783766
- 0.641645
- 0.6934629
- 0.68676674
- 0.6834809
- 0.6961604
- 0.6979584
- 0.7033722
- 0.70410794
- 0.7025278
- 0.70305353
- 0.70292175
- 0.7009334
- 0.69344264
- 0.68596864
- 0.5952168
- 0.62183666
- 0.68161446
- 0.65352744
- 0.6183489
- 0.54178274
- 0.6044712
- 0.66845906
x_label: seconds
y_label: '%'
start: 1627226206
schema:
$ref: '#/components/schemas/sle_summary'
description: Example response
SleThreshold:
content:
application/json:
examples:
example-1:
value:
default: -72
direction: left
maximum: -60
metric: coverage
minimum: -90
threshold: '-66'
units: dBm
schema:
$ref: '#/components/schemas/sle_threshold'
description: Example response
Sso:
content:
application/json:
examples:
example-1:
value:
created_time: 0
custom_logout_url: string
default_role: string
domain: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
ignore_unmatched_roles: true
issuer: string
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nameid_format: email
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
type: string
schema:
$ref: '#/components/schemas/sso'
description: OK
SsoLatestFailures:
content:
application/json:
examples:
example-1:
value:
results:
- detail: string
saml_assertion_xml: string
timestamp: 0
schema:
properties:
results:
items:
properties:
detail:
type: string
saml_assertion_xml:
type: string
timestamp:
type: number
required:
- timestamp
- detail
- saml_assertion_xml
title: sso_failure_entry
minItems: 1
type: array
uniqueItems: true
required:
- results
type: object
description: OK
SsoRoleMsp:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
privileges:
- orggroup_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
role: read
scope: orggroup
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/sso_role_msp'
description: OK
SsoRoleOrg:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
privileges:
- role: admin
scope: sitegroup
sitegroup_id: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/sso_role_org'
description: OK
SsoRolesMspArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/sso_role_msp'
type: array
description: Example response
SsoRolesOrgArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/sso_role_org'
type: array
description: Example response
SsoSamlMetadata:
content:
application/json:
examples:
example-1:
value:
acs_url: https://api.mist.com/api/v1/saml/llDfa13f/login
entity_id: https://api.mist.com/api/v1/saml/llDfa13f/login
logout_url: https://api.mist.com/api/v1/saml/llDfa13f/logout
metadata_xml: urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
schema:
properties:
acs_url:
example: https://api.mist.com/api/v1/saml/llDfa13f/login
readOnly: true
type: string
entity_id:
example: https://api.mist.com/api/v1/saml/llDfa13f/login
readOnly: true
type: string
logout_url:
example: https://api.mist.com/api/v1/saml/llDfa13f/logout
readOnly: true
type: string
metadata_xml:
example: urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified
readOnly: true
type: string
required:
- acs_url
- logout_url
- metadata_xml
- entity_id
type: object
description: OK
SsosArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
custom_logout_url: string
default_role: string
domain: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
idp_cert: string
idp_sign_algo: string
idp_sso_url: string
ignore_unmatched_roles: true
issuer: string
modified_time: 0
msp_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
name: string
nameid_format: email
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
type: string
schema:
items:
$ref: '#/components/schemas/sso'
type: array
description: OK
SsrUpgrade:
content:
application/json:
examples:
example-1:
value:
channel: stable
counts:
failed: 0
queued: 1
success: 0
upgrading: 1
device_type: gateway
id: ceef2c8a-e2e6-447a-8b27-cb4f3ec1adae
status: upgrading
strategy: serial
versions: {}
schema:
$ref: '#/components/schemas/ssr_upgrade_response'
description: Example response
SsrUpgradeStatus:
content:
application/json:
examples:
example-1:
value:
channel: stable
device_type: gateway
id: 5cbcee0a-c620-4bb4-a25e-15000934e9d8
status: upgrading
targets:
failed: []
queued: []
success: []
upgrading:
- 8e525f1d-4178-4ae1-a988-2b0176855e55
versions: {}
schema:
properties:
channel:
minLength: 1
type: string
device_type:
type: string
id:
minLength: 1
type: string
status:
minLength: 1
type: string
targets:
properties:
failed:
items:
type: string
type: array
queued:
items:
type: string
type: array
success:
items:
type: string
type: array
upgrading:
items:
type: string
type: array
required:
- queued
- upgrading
- success
- failed
title: ssr_upgrade_targets
type: object
versions:
type: object
required:
- status
- versions
- channel
- id
- targets
type: object
description: OK
SsrUpgradesArray:
content:
application/json:
examples:
example-1:
value:
- channel: stable
counts:
failed: 0
queued: 1
success: 0
upgrading: 1
device_type: gateway
id: ceef2c8a-e2e6-447a-8b27-cb4f3ec1adae
status: upgrading
strategy: serial
versions: {}
schema:
items:
$ref: '#/components/schemas/ssr_upgrade_response'
type: array
description: Example response
SsrVersions:
content:
application/json:
examples:
example-1:
value:
- package: 128T-wheeljack
version: 128T-wheeljack-0.1.0-1212.x86_64
schema:
items:
properties:
default:
type: boolean
package:
minLength: 1
type: string
version:
minLength: 1
type: string
required:
- package
- version
title: ssr_version
type: object
minItems: 1
type: array
uniqueItems: true
description: OK
SwitchMetrics:
content:
application/json:
examples:
site-scoped:
value:
active_ports_summary:
details:
active_port_count: 4
total_port_count: 4
score: 100
total_switch_count: 2
config_success:
details:
config_success_count: 2
score: 100
total_switch_count: 2
version_compliance:
details:
major_versions:
- major_count: 1
major_version: 21.4R3.5
model: EX2300-C-12P
system_names: []
- major_count: 1
major_version: 6.0.4-11
model: SSR120
system_names: []
score: 100
total_switch_count: 2
switch-scoped:
value:
active_ports_summary:
details:
active_port_count: 1
total_port_count: 2
score: 50
switch_id: 67970e46-4e12-11e6-9188-0242ac110007_fc334262ef00
total_switch_count: 1
schema:
properties:
active_ports_summary:
properties:
details:
properties:
active_port_count:
type: integer
total_port_count:
type: integer
title: switch_metric_active_ports_summary_details
type: object
score:
type: integer
total_switch_count:
type: integer
type: object
config_success:
properties:
details:
properties:
config_success_count:
type: integer
title: switch_metric_config_success_details
type: object
score:
type: integer
total_switch_count:
type: integer
type: object
version_compliance:
properties:
details:
properties:
major_versions:
items:
properties:
major_count:
type: integer
major_version:
type: string
model:
type: string
system_names:
items:
properties: {}
type: object
type: array
title: switch_version_compliance_major_version
type: object
type: array
title: switch_version_compliance_details
type: object
score:
type: integer
total_switch_count:
type: integer
title: switch_version_compliance
type: object
type: object
description: OK
SwitchPortsSearch:
content:
application/json:
examples:
Example:
value:
end: 1513177200
limit: 10
results:
- active: true
auth_state: init
for_site: true
full_duplex: true
jitter: 0
latency: 0
loss: 0
lte_iccid: string
lte_imei: string
lte_imsi: string
mac: 5c4527a96580
mac_count: 0
mac_limit: 0
neighbor_mac: 64d814353400
neighbor_port_desc: GigabitEthernet1/0/21
neighbor_system_name: CORP-D-SW-2
org_id: c168ddee-c14c-11e5-8e81-1258369c38a9
poe_disabled: true
poe_mode: 802.3af
poe_on: true
port_id: ge-0/0/0
port_mac: 5c4527a96580
port_usage: lan
power_draw: 0
rx_bcast_pkts: 0
rx_bps: 0
rx_bytes: 4563443626
rx_errors: 0
rx_mcast_pkts: 0
rx_pkts: 0
site_id: c1698122-c14c-11e5-8e81-1258369c38a9
speed: 1000
stp_role: designated
stp_state: forwarding
tx_bcast_pkts: 0
tx_bps: 0
tx_bytes: 11299516780
tx_errors: 0
tx_mcast_pkts: 0
tx_pkts: 492176
type: gateway
up: true
xcvr_part_number: string
start: 1511967600
total: 100
schema:
properties:
end:
example: 1513177200
type: integer
limit:
example: 10
type: integer
results:
items:
$ref: '#/components/schemas/switch_port_stats'
type: array
start:
example: 1511967600
type: integer
total:
example: 100
type: integer
required:
- start
- end
- limit
- total
- results
type: object
description: List of Switch Ports Stats
SyntheticTest:
content:
application/json:
examples:
Example:
value:
id: a42775f6-edc8-69b5-f979-542fa1b43ff9
message: Successfully queued synthetic test for the site.
status: string
schema:
properties:
id:
example: a42775f6-edc8-69b5-f979-542fa1b43ff9
format: uuid
type: string
message:
example: Successfully queued synthetic test for the site.
type: string
status:
example: success
type: string
type: object
description: Synthetic Test Started
SynthetictestSearch:
content:
application/json:
examples:
Example:
value:
end: 0
limit: 0
next: string
results:
- by: user
device_type: gateway
failed: 'false'
latency: '40'
mac: '001122334455'
port_id: ge-0/0/2
rx_mbps: '322'
timestamp: '1706824045.059036'
tx_mbps: '199'
type: speedtest
vlan_id: '20'
- by: marvis
device_type: gateway
failed: 'true'
latency: '0'
mac: '001122334455'
port_id: ge-0/0/2
reason: interface not ready to perform test
rx_mbps: '0'
timestamp: '1706824045.059036'
tx_mbps: '0'
type: speedtest
vlan_id: '100'
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/synthetic_test_info'
type: array
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: Synthetic Test Search Result
SynthetictestStatus:
content:
application/json:
examples:
Example:
value:
device_type: gateway
mac: 5c5b35584a6f
port_id: ge-0/0/1.100
start_time: 1675718807
status: inprogress
type: speedtest
schema:
$ref: '#/components/schemas/synthetic_test_info'
description: Synthetic Test Status
Template:
content:
application/json:
examples:
example-1:
value:
applies:
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
created_time: 0
deviceprofile_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
exceptions:
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
filter_by_deviceprofile: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
$ref: '#/components/schemas/template'
description: OK
TemplatesArray:
content:
application/json:
examples:
example-1:
value:
- applies:
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
created_time: 0
deviceprofile_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
exceptions:
site_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
sitegroup_ids:
- b069b358-4c97-5319-1f8c-7c5ca64d6ab1
filter_by_deviceprofile: true
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
schema:
items:
$ref: '#/components/schemas/template'
type: array
description: OK
Ticket:
content:
application/json:
examples:
example-1:
value:
comments:
- attachments:
- content_type: string
content_url: string
size: 0
author: string
comment: string
created_at: 0
created_at: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
requester: string
status: open
subject: string
type: string
updated_at: 0
schema:
$ref: '#/components/schemas/ticket'
description: OK
TicketsArray:
content:
application/json:
examples:
example-1:
value:
- comments:
- attachments:
- content_type: string
content_url: string
size: 0
author: string
comment: string
created_at: 0
created_at: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
requester: string
status: open
subject: string
type: string
updated_at: 0
schema:
items:
$ref: '#/components/schemas/ticket'
type: array
description: OK
Troubleshoot:
content:
application/json:
examples:
Example:
value:
end: 1655151856
results:
- category: client
reason: slow association
recommendation: Ensure the IP helper-address is configured on the
VLAN interface.
text: Clients of the AP had slow association 8% of the time on Bhavabhi
and 5 GHz. ...
start: 1655065456
schema:
properties:
end:
example: 1655151856
type: integer
results:
items:
properties:
category:
example: client
type: string
reason:
example: slow association
type: string
recommendation:
example: Ensure the IP helper-address is configured on the VLAN
interface.
type: string
text:
example: Clients of the AP had slow association 8% of the time
on Bhavabhi and 5 GHz. ...
type: string
title: troubleshoot_item
type: object
type: array
start:
example: 1655065456
type: integer
type: object
description: Troubleshoot Response
TunnelsSearch:
content:
application/json:
examples:
type-wan:
value:
end: 1531862583
limit: 10
results:
- auth_algo: hmac-md5-96
encrypt_algo: aes-256-cbc
ike_version: '2'
ip: 192.168.233.0
last_event: down reason
mac: 020001ae9dd5
node: node0
org_id: 78c11da8-f984-4425-bedb-a7ddd7d0f6da
peer_host: sunnyvale1-vpn.zscalerbeta.net
peer_ip: 10.224.8.16
protocol: ipsec
rx_bytes: 150
rx_pkts: 75
site_id: e83e7928-eda1-4e93-82db-df3dd42ab726
tunnel_name: Device-ipsec-1
tx_bytes: 100
tx_pkts: 50
up: true
uptime: 10
wan_name: wan
start: 1531776183
total: 1
type-wxtunnel:
value:
end: 1531862583
limit: 10
results:
- ap: 5c5b35000010
last_seen: 1547437078
mxcluster_id: 572586b7-f97b-a22b-526c-8b97a3f609c4
mxedge_id: 387804a7-3474-85ce-15a2-f9a9684c9c90
mxtunnel_id: 7dae216d-7c98-a51b-e068-dd7d477b7216
org_id: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
peer_mxedge_id: 09320a5c-bc23-441e-80a0-b96c632d45f5
remote_ip: 172.16.1.2
remote_port: 13535
rx_control_pkts: 7571
sessions:
- local_sid: 31
remote_id: mxtunnel
remote_sid: 13
state: established
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
state: established_with_sessions
tx_control_pkts: 14862
uptime: 135
start: 1531776183
total: 1
schema:
properties:
end:
type: integer
limit:
type: integer
next:
type: string
results:
items:
anyOf:
- $ref: '#/components/schemas/mxtunnel_stats'
- $ref: '#/components/schemas/wantunnel_stats'
type: array
start:
type: integer
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
TwoFactor:
content:
application/json:
examples:
Example:
value:
two_factor_secret: NRMTSTRWNBVECY3GJVYEY3DDJFRGSNCZGJUDO4RVN5FDM3DUMJSA
schema:
properties:
two_factor_secret:
example: NRMTSTRWNBVECY3GJVYEY3DDJFRGSNCZGJUDO4RVN5FDM3DUMJSA
type: string
type: object
application/octet-stream:
schema:
description: if `by`==`qrcode`, returns the secret as a qrcode image
type: string
description: Two Factor configuration Token
UiSettings:
content:
application/json:
examples:
Example:
value:
created_time: 1508823803
defaultScopeId: 67970e46-4e12-11e6-9188-0242ad112847
defaultScopeType: site
defaultTimeRange:
end: 1508828400
endDate: 10/23/2017
interval: 1d
name: This Week
shortName: thisWeek
start: 1508655600
usePreset: true
description: Description of the databoard
for_site: true
id: 3bdcc7e8-c04d-4512-b4fc-093da9057eb0
isCustomDataboard: true
isScopeLinked: true
isTimeRangeLinked: true
modified_time: 0
name: New Databoard
org_id: cc079380-5029-4d4a-9125-858de85731ff
purpose: databoard
site_id: 67970e46-4e12-11e6-9188-0242ad112847
tiles:
- chartBand: 2.4 ghz
chartColor: '#00B4AD'
chartDirection: tx + rx
chartRankBy: string
chartType: timeSeries
colspan: 5
column: 1
hideEmptyRows: true
id: 7a9ab38c-cfc3-483d-b51a-0aec571fadc0
metric:
apiName: client-dhcp-latency
name: New Analysis
row: 1
rowspan: 2
scopeId: e0c767834b4c
scopeType: client
sortedColumns: null
timeRange:
end: 1508823743
endDate: 10/23/2017
interval: 1d
name: Past 7 Days
shortName: 7d
start: 1508223600
usePreset: true
trendType: line
vizType: averageTimeSeriesChart
schema:
$ref: '#/components/schemas/ui_settings'
description: Example response
UiSettingsArray:
content:
application/json:
examples:
Example:
value:
- created_time: 1508823803
defaultScopeId: 67970e46-4e12-11e6-9188-0242ad112847
defaultScopeType: site
defaultTimeRange:
end: 1508828400
endDate: 10/23/2017
interval: 1d
name: This Week
shortName: thisWeek
start: 1508655600
usePreset: true
description: Description of the databoard
for_site: true
id: 3bdcc7e8-c04d-4512-b4fc-093da9057eb0
isCustomDataboard: true
isScopeLinked: true
isTimeRangeLinked: true
modified_time: 0
name: New Databoard
org_id: cc079380-5029-4d4a-9125-858de85731ff
purpose: databoard
site_id: 67970e46-4e12-11e6-9188-0242ad112847
tiles:
- chartBand: 2.4 ghz
chartColor: '#00B4AD'
chartDirection: tx + rx
chartRankBy: string
chartType: timeSeries
colspan: 5
column: 1
hideEmptyRows: true
id: 7a9ab38c-cfc3-483d-b51a-0aec571fadc0
metric:
apiName: client-dhcp-latency
name: New Analysis
row: 1
rowspan: 2
scopeId: e0c767834b4c
scopeType: client
sortedColumns: null
timeRange:
end: 1508823743
endDate: 10/23/2017
interval: 1d
name: Past 7 Days
shortName: 7d
start: 1508223600
usePreset: true
trendType: line
vizType: averageTimeSeriesChart
schema:
items:
$ref: '#/components/schemas/ui_settings'
type: array
description: List of UI Setting
UpdateSelfFailed:
content:
application/json:
examples:
invalid-email-address:
value: {}
new-email-address-already-exists:
value:
detail: email already existed
schema:
properties:
detail:
type: string
type: object
description: invalid email address or new email address already exists
UpgradeInfo:
content:
application/json:
examples:
example-1:
value:
status: inprogress
status_id: 5
timestamp: 1428949501
schema:
properties:
status:
enum:
- starting
- inprogress
- success
- error
- scheduled
title: upgrade_info_status
type: string
status_id:
description: the internal status id
type: integer
timestamp:
description: timestamp
type: number
required:
- timestamp
- status
- status_id
type: object
description: OK
UserMac:
content:
application/json:
examples:
Blacklist:
value:
blacklisted: true
labels:
- ddos
mac: 5684dae9ac8b
Guest:
value:
cross_site: false
email: john@example.com
expire_time: 1709336127
for_guest_wifi: true
labels:
- byod
mac: 5684dae9ac8b
name: john's phone
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
vlan_id: 30
schema:
$ref: '#/components/schemas/user_mac'
UserMacArray:
content:
application/json:
examples:
Example:
value:
- blacklisted: true
labels:
- ddos
mac: 5684dae9ac8b
- cross_site: false
email: john@example.com
expire_time: 1709336127
for_guest_wifi: true
labels:
- byod
mac: 5684dae9ac8b
name: john's phone
site_id: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
vlan_id: 30
schema:
$ref: '#/components/schemas/user_mac_array'
Uuid:
content:
application/json:
examples:
example-1:
value:
id: 470f6eca-6276-4993-bfeb-53cbbbba6f48
schema:
properties:
id:
format: uuid
readOnly: true
type: string
type: object
description: OK
VBeacon:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
major: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
message: string
minor: 0
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 4
power_mode: default
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
url: string
uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
wayfinding_nodename: string
x: 0
y: 0
schema:
$ref: '#/components/schemas/vbeacon'
description: OK
VBeaconsArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
major: 0
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
message: string
minor: 0
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
power: 4
power_mode: default
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
url: string
uuid: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
wayfinding_nodename: string
x: 0
y: 0
schema:
items:
$ref: '#/components/schemas/vbeacon'
type: array
description: OK
VerifyRegisterTokenAlreadyRegistered:
content:
application/json:
examples:
already-registered:
value:
detail: already registered
verification-expired:
value:
detail: expired
schema:
properties:
detail:
type: string
required:
- detail
type: object
description: Response if verification expired or already registered
VerifyRegisterTokenInvalid:
content:
application/json:
examples:
not-found:
value:
detail: Not found.
schema:
properties:
detail:
type: string
required:
- detail
type: object
description: Response if secret is invalid
VerifyRegisterTokenSuccess:
content:
application/json:
examples:
success:
value:
return_to: http://mist.zendesk.com/hc/quickstart.pdf
success-but-failed-to-apply-the-invitation-automatically:
value:
detail: password policy not met
invite_not_applied: true
min_length: 8
schema:
properties:
detail:
type: string
invite_not_applied:
type: boolean
min_length:
type: integer
return_to:
type: string
type: object
description: OK
headers:
Set-Cookie:
schema:
example: csrftoken=vwvBuq9qkqaKh7lu8tNc0gkvBfEaLAmx; expires=Tue, 15-Mar-2016
19:47:20 GMT; Max-Age=31449600; Path=/
type: string
VirtualChassis:
content:
application/json:
examples:
example-1:
value:
id:
members:
- mac: string
member: 0
vc_ports:
- string
vc_role: master
op: add
schema:
properties:
id:
$ref: '#/components/schemas/virtual_chassis_config'
type: object
description: Example response
Vpn:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: 497f6eca-6276-5009-bfeb-53cbbbba6f1b
modified_time: 0
name: string
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
paths:
property1:
bfd_profile: broadband
ip: string
property2:
bfd_profile: broadband
ip: string
schema:
$ref: '#/components/schemas/vpn'
description: Example response
VpnPeersStats:
content:
application/json:
examples:
example-1:
value:
end: 1619518989.4989712
limit: 10
results:
- auth_algo: hmac-sha1-96
enc_algo: aes-cbc-128
ike_version: '1'
is_active: true
last_seen: 1619518709.222
mac: 020001c04668
org_id: 0c160b7f-1027-4cd1-923b-744534c4b070
peer_mac: 020001367edd
peer_port_id: DC_Internet
peer_site_id: 725a8d34-a126-4f2c-b990-d1219421cb75
port_id: Lte
site_id: 725a8d34-a126-4f2c-b990-d1219421cb75
type: svr
up: true
uptime: 1527128046
- is_active: true
last_seen: 1619518709.222
latency: 91
mac: 020001c04668
mos: 436
mtu: 1500
org_id: 0c160b7f-1027-4cd1-923b-744534c4b070
peer_mac: 020001367edd
peer_port_id: DC_Internet
peer_router_name: RIDCBBP1
peer_site_id: 725a8d34-a126-4f2c-b990-d1219421cb75
port_id: Lte
router_name: RIST01544AP1
site_id: 725a8d34-a126-4f2c-b990-d1219421cb75
type: svr
up: true
uptime: 1527128046
start: 1619518689.4989705
total: 2
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
items:
properties:
is_active:
description: Redundancy status of the associated interface
type: boolean
last_seen:
type: number
latency:
type: number
mac:
description: router mac address
minLength: 1
type: string
mos:
type: number
mtu:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
peer_mac:
description: peer router mac address
minLength: 1
type: string
peer_port_id:
description: peer router device interface
minLength: 1
type: string
peer_router_name:
minLength: 1
type: string
peer_site_id:
$ref: '#/components/schemas/site_id'
port_id:
description: router device interface
minLength: 1
type: string
router_name:
minLength: 1
type: string
site_id:
$ref: '#/components/schemas/site_id'
type:
description: '`ipsec`for SRX, `svr` for 128T'
minLength: 1
type: string
up:
type: boolean
uptime:
type: integer
title: vpn_peer_stat
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
VpnsArray:
content:
application/json:
examples:
example-1:
value:
- name: string
paths:
property1:
bfd_profile: broadband
ip: string
property2:
bfd_profile: lte
ip: string
schema:
items:
$ref: '#/components/schemas/vpn'
type: array
description: Example response
WanClientEventsSearch:
content:
application/json:
examples:
Example:
value:
end: 0
limit: 0
results:
When: '2022-12-31T23:59:59.293Z'
ev_type: CLIENT_IP_ASSIGNED
metadata: {}
org_id: b0b9f142-aaba-11e6-aafc-0242ac110002
random_mac: true
site_id: fc656275-b157-43fd-b922-5f4f341c19bf
text: DHCP Ack IP 192.168.88.216
wcid: 62bbfb75-10d8-49d1-dec7-d2df91624287
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
results:
$ref: '#/components/schemas/events_client_wan'
start:
type: integer
total:
type: integer
type: object
description: Example response
WanClientsSearch:
content:
application/json:
examples:
Example:
value:
end: 0
limit: 0
results:
When: 2022-12-31T23:59:43.497+0000
hostname:
- sonoszp
ip:
- 192.168.1.139
last_hostname: sonoszp
last_ip: 192.168.1.139
mfg: Sonos
org_id: b4e16c72-d50e-4c03-a952-a3217e231e2c
site_id: f688779c-e335-4f88-8d7c-9c5e9964528b
wcid: 8bbe7389-212b-c65d-2208-00fab2017936
start: 0
total: 0
schema:
properties:
end:
type: integer
limit:
type: integer
results:
$ref: '#/components/schemas/clients_wan_stats'
start:
type: integer
total:
type: integer
type: object
description: Example response
Webhook:
content:
application/json:
examples:
example-1:
value:
created_time: 0
enabled: true
headers: {}
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
secret: string
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
splunk_token: string
topics:
- location
type: http-post
url: string
verify_cert: true
schema:
$ref: '#/components/schemas/webhook'
description: OK
WebhookDeliverySearch:
content:
application/json:
examples:
webhook_deliveries:
value:
end: 1688035193
limit: 10
results:
- error: string
id: 55b0f02f-ebf6-4ad2-8b10-200508a97581
org_id: fc7e2967-e7ef-41e6-b007-1217713de05a
req_headers: '{"Content-Type":["application/json"],"User-Agent":["Mist-webhook"]}'
req_payload: '{"topic":"audits","events":[{"admin_name":"John Doe
john.doe@juniper.net","after":"{\"radio_config\": {\"band_24\":
{\"disabled\": false, \"allow_rrm_disable\": false, \"power_min\":
null, \"power_max\": null, \"power\": 10, \"preamble\": \"short\",
\"channels\": [1, 10], \"bandwidth\": 20}}}","before":"{\"radio_config\":
{\"band_24\": {\"disabled\": false, \"allow_rrm_disable\": false,
\"power_min\": 8, \"power_max\": 18, \"power\": null, \"preamble\":
\"long\", \"channels\": [1, 10], \"bandwidth\": 20}}}","id":"737909a2-04ff-4aeb-b9da-cc924e74a4dd","message":"Update
Site Settings","org_id":"fc7e2967-e7ef-41e6-b007-1217713de05a","site_id":"256c3a35-9cb7-436e-bc6d-314972645d95","site_name":"Test
Site","src_ip":"1.2.3.4","timestamp":1685956576.923601,"user_agent":"Mozilla/5.0
(Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML,
like Gecko) Chrome/112.0.0.0 Safari/537.36"}]}'
req_url: http://example.com
resp_body: Ok
resp_headers: string
site_id: 256c3a35-9cb7-436e-bc6d-314972645d95
status: success
status_code: 200
timestamp: 1687962508.583656
topic: audits
webhook_id: 7a11b901-f719-4c91-8aef-deb8699a6364
start: 1687948793
total: 0
schema:
properties:
end:
example: 1688035193
type: integer
limit:
example: 10
type: integer
results:
items:
$ref: '#/components/schemas/webhook_delivery'
type: array
start:
example: 1687948793
type: integer
total:
type: integer
type: object
description: Example response
WebhooksArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
enabled: true
headers: {}
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
secret: string
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
splunk_token: string
topics:
- location
type: http-post
url: string
verify_cert: true
schema:
items:
$ref: '#/components/schemas/webhook'
type: array
description: OK
WebsocketSession:
content:
application/json:
examples:
example-1:
value:
session: session_id
schema:
properties:
session:
type: string
required:
- session
type: object
description: OK
WiredClientsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1648529800.8221116
limit: 1000
results:
- device_mac:
- '001122334455'
device_mac_port:
- device_mac: '001122334455'
ip: ''
port_id: et-0/0/1
port_parent: ''
start: 2020-12-10T00:07:36.262+0000
vlan: 1
when: 2022-03-29T04:56:05.172+0000
ip:
- 11.216.202.61
mac: '112233445566'
org_id: c168ddee-c14c-11e5-8e81-1258369c38a9
port_id:
- et-0/0/1
site_id: c168ddee-c14c-11e5-8e81-1258369c38a9
timestamp: 1571174567.807
vlan:
- 0
- 1001
start: 1648443400.8221116
total: 1
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
items:
$ref: '#/components/schemas/wired_client.response'
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
WirelessClientSessionsSearch:
content:
application/json:
examples:
example-1:
value:
end: 1513177200
limit: 10
results:
- ap: 5c5b350e0262
band: '5'
client_manufacture: Apple
connect: 1565208388
disconnect: 1565208448
duration: 60.09423865
mac: b019c66c8348
org_id: 3139f2c2-fac6-11e5-8156-0242ac110006
site_id: 70e0f468-fc13-11e5-85ad-0242ac110008
ssid: Dummy WLAN 2
tags:
- disassociate
timestamp: 1565208448.662
wlan_id: 99bb4c74-f954-4f36-b844-6b030faffabc
start: 1511967600
total: 100
schema:
properties:
end:
type: number
limit:
type: integer
next:
type: string
results:
items:
properties:
ap:
readOnly: true
type: string
band:
readOnly: true
type: string
client_manufacture:
nullable: true
readOnly: true
type: string
connect:
readOnly: true
type: integer
disconnect:
readOnly: true
type: integer
duration:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
mac:
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
ssid:
readOnly: true
type: string
tags:
items:
type: string
readOnly: true
type: array
timestamp:
readOnly: true
type: number
wlan_id:
format: uuid
readOnly: true
type: string
required:
- ap
- band
- client_manufacture
- connect
- disconnect
- duration
- mac
- org_id
- site_id
- ssid
- timestamp
- wlan_id
title: wireless_client_session_search_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- end
- limit
- results
- start
- total
type: object
description: OK
Wlan:
content:
application/json:
examples:
Example:
value:
acct_immediate_update: false
acct_interim_interval: 0
acct_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1813
secret: testing123
airwatch:
api_key: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
console_url: https://hs1.airwatchportals.com
enabled: true
password: user1
username: test123
allow_ipv6_ndp: true
allow_mdns: false
allow_ssdp: false
ap_ids:
- 497f6eca-6276-4993-bfeb-53cbbbba6908
app_limit:
apps:
dropbox: 300
netflix: 60
enabled: false
wxtag_ids:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
app_qos:
apps:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
enabled: true
others:
- dscp: 32
dst_subnet: 10.2.0.0/16
port_ranges: 80,1024-6553
protocol: udp
src_subnet: 10.2.0.0/16
apply_to: site
arp_filter: false
auth:
anticlog_threshold: 16
eap_reauth: false
enable_mac_auth: false
key_idx: 1
keys:
- string
multi_psk_only: false
owe: string
pairwise:
- wpa2-ccmp
private_wlan: true
psk: foryoureyesonly
type: psk
wep_as_secondary_auth: true
auth_server_selection: ordered
auth_servers:
- host: 1.2.3.4
keywrap_enabled: true
keywrap_format: hex
keywrap_kek: '1122334455'
keywrap_mack: '1122334455'
port: 1812
secret: testing123
auth_servers_nas_id: 5c5b350e0101-nas
auth_servers_nas_ip: 15.3.1.5
auth_servers_retries: 5
auth_servers_timeout: 5
band: string
band_steer: false
band_steer_force_band5: false
bands:
- '24'
- '5'
block_blacklist_clients: false
bonjour:
additional_vlan_ids:
- 0
enabled: false
services:
airplay:
radius_groups:
- teachers
scope: same_ap
cisco_cwa:
allowed_hostnames:
- snapchat.com
allowed_subnets:
- 63.5.3.0/24
blocked_subnets:
- 192.168.0.0/16
enabled: false
client_limit_down: 0
client_limit_down_enabled: false
client_limit_up: 0
client_limit_up_enabled: false
coa_servers:
- disable_event_timestamp_check: false
enabled: false
ip: 1.2.3.4
port: 3799
secret: testing456
created_time: 0
disable_11ax: false
disable_ht_vht_rates: false
disable_uapsd: false
disable_v1_roam_notify: false
disable_v2_roam_notify: false
disable_wmm: false
dns_server_rewrite:
enabled: false
radius_groups:
contractor: 172.1.1.1
guest: 8.8.8.8
dtim: 2
dynamic_psk:
default_psk: foryoureyesonly
default_vlan_id: 999
enabled: false
source: cloud_psks
vlan_ids:
- 1
dynamic_vlan:
default_vlan_id: 999
enabled: false
local_vlan_ids:
- 1
type: airespace-interface-name
vlans:
'131': default
'322': fast,video
enable_local_keycaching: false
enable_wireless_bridging: false
enabled: true
fast_dot1x_timers: false
for_site: true
hide_ssid: false
hostname_ie: false
hotspot20:
domain_name:
- mist.com
enabled: true
nai_realms:
- string
operators:
- google
- att
rcoi:
- 5A03BA0000
venue_name: some_name
id: 497f6eca-6276-4993-bfeb-53cbbbba6a08
interface: all
isolation: false
l2_isolation: false
legacy_overds: false
limit_bcast: false
limit_probe_response: true
max_idletime: 1800
mist_nac:
enabled: false
modified_time: 0
msp_id: c0cf23fc-d82f-4219-988c-82fb61d8c875
mxtunnel: {}
mxtunnel_ids:
- 08cd7499-5841-51c8-e663-fb16b6f3b45e
mxtunnel_name:
- default
no_static_dns: false
no_static_ip: false
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
portal:
amazon_client_id: string
amazon_client_secret: string
amazon_email_domains:
- string
amazon_enabled: false
auth: none
azure_client_id: string
azure_client_secret: string
azure_enabled: false
azure_tenant_id: string
broadnet_password: password
broadnet_sid: MIST
broadnet_user_id: juniper
bypass_when_cloud_down: false
clickatell_api_key: string
cross_site: false
email_enabled: true
enabled: false
expire: 1440
external_portal_url: string
facebook_client_id: string
facebook_client_secret: string
facebook_email_domains:
- string
facebook_enabled: false
forward: false
forward_url: http://abc.com/promotions
google_client_id: string
google_client_secret: string
google_email_domains:
- mydomain.edu
- mydomain.org
google_enabled: false
gupshup_password: string
gupshup_userid: string
microsoft_client_id: string
microsoft_client_secret: string
microsoft_email_domains:
- string
microsoft_enabled: false
passphrase_enabled: false
password: let me in
portal_allowed_hostnames: string
portal_allowed_subnets: string
portal_api_secret: string
portal_denied_hostnames: string
portal_image: https://url/to/image.png
portal_sso_url: string
predefined_sponsors_enabled: true
privacy: true
puzzel_password: string
puzzel_service_id: string
puzzel_username: string
smsMessageFormat: string
sms_enabled: false
sms_provider: twilio
sponsor_auto_approve: false
sponsor_email_domains:
- reserved.net
- reserved.org
sponsor_enabled: false
sponsor_link_validity_duration: 30
sponsor_notify_all: false
sponsor_status_notify: false
sponsors:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
sso_default_role: string
sso_forced_role: string
sso_idp_cert: string
sso_idp_sign_algo: string
sso_idp_sso_url: string
sso_issuer: string
sso_nameid_format: email
telstra_client_id: string
telstra_client_secret: string
thumbnail: string
twilio_auth_token: af9dac44c344a875ab5d31cb7abcdefg
twilio_phone_number: '+18548888888'
twilio_sid: AC72ec6ba0ec5af30e6731c5e47abcdefgh
portal_allowed_hostnames:
- snapchat.com
- ibm.com
portal_allowed_subnets:
- 63.5.3.0/24
portal_api_secret: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
portal_denied_hostnames:
- msg.snapchat.com
portal_image: http://example.com
portal_sso_url: string
portal_template_url: string
qos:
class: best_effort
overwrite: false
radsec:
enabled: true
idle_timeout: 60
mxcluster_ids:
- 572586b7-f97b-a22b-526c-8b97a3f609c4
proxy_hosts:
- mxedge1.local
server_name: radsec.abc.com
servers:
- host: 1.1.1.1
port: 1812
use_mxedge: true
use_site_mxedge: false
rateset:
'24':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
'5':
ht: 00ff00ff00ff
legacy:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
min_rssi: -70
template: string
vht: 03ff03ff03ff01ff
roam_mode: none
schedule:
enabled: false
hours:
fri: 09:00-17:00
mon: 09:00-17:00
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
sle_excluded: false
ssid: corporate
template_id: c6d67e98-83ea-49f0-8812-e4abae2b68bc
thumbnail: http://example.com
use_eapol_v1: false
vlan_enabled: false
vlan_id: 1
vlan_ids:
- 3
- 4
- 5
vlan_pooling: false
wlan_limit_down: 0
wlan_limit_down_enabled: false
wlan_limit_up: 0
wlan_limit_up_enabled: false
wxtag_ids:
- 497f6eca-6276-4993-bfeb-53cbbbba6b08
wxtunnel_id: string
wxtunnel_remote_id: string
schema:
$ref: '#/components/schemas/wlan'
description: OK
WlansArray:
content:
application/json:
schema:
items:
$ref: '#/components/schemas/wlan'
type: array
description: OK
WxTagsAppsArray:
content:
application/json:
examples:
Example:
value:
- group: Emails
key: gmail
name: Gmail - web/app
schema:
items:
properties:
group:
example: Emails
type: string
key:
example: gmail
type: string
name:
example: Gmail - web/app
type: string
required:
- key
- name
- group
type: object
type: array
description: List of Applications
WxTagsMatchingArray:
content:
application/json:
examples:
Example:
value:
- mac: 5684dae9ac8b
since: 1428939600
schema:
items:
properties:
mac:
example: 5684dae9ac8b
type: string
since:
example: 1428939600
type: integer
required:
- mac
- since
type: object
type: array
description: List of Current Matching Clients of a WXLAN Tag
Wxrule:
content:
application/json:
examples:
Example:
value:
action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-9feb-53cbbbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
$ref: '#/components/schemas/wxlan_rule'
description: Wrule
WxruleArray:
content:
application/json:
examples:
Example:
value:
- action: allow
apply_tags:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
blocked_apps:
- mist
- all-videos
created_time: 0
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
enabled: true
for_site: true
id: 497f6eca-6276-4993-bfeb-53ebbbba6f08
modified_time: 0
order: 1
org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
site_id: 72771e6a-6f5e-4de4-a5b9-1266c4197811
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
schema:
items:
$ref: '#/components/schemas/wxlan_rule'
type: array
description: List of WxRules
WxruleStatsArray:
content:
application/json:
examples:
Example:
value:
- action: allow
client_mac:
- 3bbbf819bb6f
- bd96cbc4910f
dst_allow_wxtags:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_deny_wxtags:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
dst_wxtags:
- d4134466-eec0-3756-6765-381c728a6037
- 1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3
name: Guest
order: 1
src_wxtags:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
usage:
1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3:
num_flows: 60
d4134466-eec0-3756-6765-381c728a6037:
num_flows: 60
schema:
items:
$ref: '#/components/schemas/wxrule_stats'
type: array
description: WxRule Stats
Wxtag:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
last_ips:
- string
mac: string
match: wlan_id
modified_time: 0
name: string
op: in
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
resource_mac: string
services:
- string
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
specs:
- port_range: string
protocol: tcp
subnet:
- string
subnet: string
type: match
values:
- string
schema:
$ref: '#/components/schemas/wxlan_tag'
description: OK
WxtagArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
last_ips:
- string
mac: string
match: wlan_id
modified_time: 0
name: string
op: in
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
resource_mac: string
services:
- string
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
specs:
- port_range: string
protocol: tcp
subnet:
- string
subnet: string
type: match
values:
- string
schema:
items:
$ref: '#/components/schemas/wxlan_tag'
type: array
description: OK
WxtagClients:
content:
application/json:
schema:
$ref: '#/components/schemas/wxtag_clients'
description: OK
Wxtunnel:
content:
application/json:
examples:
example-1:
value:
created_time: 0
dmvpn:
enabled: true
holding_time: 0
host_routes:
- string
for_mgmt: true
hello_interval: 1
hello_retries: 3
hostname: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ipsec:
enabled: true
psk: string123
is_static: true
modified_time: 0
mtu: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
peers:
- string
router_id: string
secret: string
sessions:
- ap_as_session_id: string
comment: string
enable_cookie: true
ethertype: ethernet
local_session_id: 1
pseudo_802.1ad_enabled: true
remote_id: string
remote_session_id: 1
use_ap_as_session_ids: true
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
udp_port: 0
use_udp: true
schema:
$ref: '#/components/schemas/wxlan_tunnel'
description: OK
WxtunnelArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
dmvpn:
enabled: true
holding_time: 0
host_routes:
- string
for_mgmt: true
hello_interval: 1
hello_retries: 3
hostname: string
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
ipsec:
enabled: true
psk: string123
is_static: true
modified_time: 0
mtu: 1500
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
peers:
- string
router_id: string
secret: string
sessions:
- ap_as_session_id: string
comment: string
enable_cookie: true
ethertype: ethernet
local_session_id: 1
pseudo_802.1ad_enabled: true
remote_id: string
remote_session_id: 1
use_ap_as_session_ids: true
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
udp_port: 0
use_udp: true
schema:
items:
$ref: '#/components/schemas/wxlan_tunnel'
minItems: 0
type: array
description: OK
Zone:
content:
application/json:
examples:
example-1:
value:
created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vertices:
- x: 0
y: 0
schema:
$ref: '#/components/schemas/zone'
description: OK
ZoneSessionsSearch:
content:
application/json:
examples:
Example:
value:
end: 1541705289.769911
limit: 1
next: /api/v1/sites/67970e46-4e12-11e6-9188-0242ac110007/zones/visits/search?limit=2&end=1541705247.000&scope_id=85fbba9e-4e12-11e6-9188-0242ac110007&user_type=asset&start=1541618889.77
results:
- enter: 1541705254
scope: map
timestamp: 1541705254
user: c4b301c81166
start: 1541618889.769886
total: 5892
schema:
properties:
end:
example: 1541705289.769911
type: number
limit:
example: 1
type: integer
next:
example: /api/v1/sites/67970e46-4e12-11e6-9188-0242ac110007/zones/visits/search?limit=2&end=1541705247.000&scope_id=85fbba9e-4e12-11e6-9188-0242ac110007&user_type=asset&start=1541618889.77
type: string
results:
items:
properties:
enter:
example: 1541705254
type: integer
scope:
example: map
type: string
timestamp:
example: 1541705254
type: integer
user:
example: c4b301c81166
type: string
title: zone_session_search_item
type: object
type: array
start:
example: 1541618889.769886
type: number
total:
example: 5892
type: integer
type: object
description: Result of Search Zone Sessions
ZoneStats:
content:
application/json:
examples:
Example:
value:
assets:
- df8dff06ae90
client_waits:
avg: 1200
max: 3610
min: 600
p95: 2800
clients:
- 5684dae9ac8b
id: 8ac84899-32db-6327-334c-9b6d58544cfe
map_id: 63eda950-c6da-11e4-a628-60f81dd250cc
name: Board Room
num_clients: 80
num_sdkclients: 0
sdkclients:
- 7e2b463d-c91c-ff7d-f3c0-6eccc6949ff8
schema:
$ref: '#/components/schemas/zone_stats_details'
description: Zone Stats
ZoneStatsArray:
content:
application/json:
examples:
with-map_id-query-param:
value:
- assets_waits:
avg: 0
max: 0
min: 0
p95: 0
clients_waits:
avg: 1200
max: 3610
min: 600
p95: 2800
created_time: 1616625211
id: 123470c7-5d9d-424a-8475-8b344c621234
map_id: 123449d4-d12f-4feb-b40f-5be0e2ae1234
modified_time: 1616625211
name: Zone A
num_assets: 0
num_clients: 80
num_sdkclients: 10
occupancy_limit: 4
org_id: 1234c1a0-6ef6-11e6-8bbf-02e208b21234
sdkclients_waits:
avg: 1200
max: 3610
min: 600
p95: 2800
site_id: 123448e6-6ef6-11e6-8bbf-02e208b21234
vertices:
- x: 732
y: 1821
- x: 732.5
y: 1731
- x: 837.5
y: 1731.5
- x: 839
y: 1821
vertices_m:
- x: 24.1983341951072
y: 60.198314985369144
- x: 24.21486311190714
y: 57.22310996138056
- x: 27.685935639893827
y: 57.23963887818049
- x: 27.73552239029364
y: 60.198314985369144
without-map_id-query-param:
value:
- created_time: 1616625211
id: 123470c7-5d9d-424a-8475-8b344c621234
map_id: 123449d4-d12f-4feb-b40f-5be0e2ae1234
modified_time: 1616625211
name: Zone A
occupancy_limit: 4
org_id: 1234c1a0-6ef6-11e6-8bbf-02e208b21234
site_id: 123448e6-6ef6-11e6-8bbf-02e208b21234
vertices:
- x: 732
y: 1821
- x: 732.5
y: 1731
- x: 837.5
y: 1731.5
- x: 839
y: 1821
vertices_m:
- x: 24.1983341951072
y: 60.198314985369144
- x: 24.21486311190714
y: 57.22310996138056
- x: 27.685935639893827
y: 57.23963887818049
- x: 27.73552239029364
y: 60.198314985369144
schema:
items:
$ref: '#/components/schemas/zone_stats'
type: array
description: Example response
ZonesArray:
content:
application/json:
examples:
example-1:
value:
- created_time: 0
id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
map_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
modified_time: 0
name: string
org_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
site_id: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
vertices:
- x: 0
y: 0
schema:
items:
$ref: '#/components/schemas/zone'
type: array
description: OK
ZscalerAccount:
content:
application/json:
examples:
Example:
value:
cloud_name: zscalerbeta.net
parnter_key: K35vrZcK3JvrZc
username: john@nmo.com
schema:
$ref: '#/components/schemas/account_zscaler_info'
description: Example response
schemas:
account_cradlepoint_config:
properties:
cp_api_id:
example: 84446d61-2206-4ea5-855a-0043f980be54
type: string
cp_api_key:
example: 79c329da9893e34099c7d8ad5cb9c941
type: string
ecm_api_id:
example: 73446d61-2206-4ea5-855a-0043f980be62
type: string
ecm_api_key:
example: 68b329da9893e34099c7d8ad5cb9c9405
type: string
type: object
account_jamf_config:
description: OAuth linked Jamf apps account details
properties:
instance_url:
description: customer account Jamf instance URL
example: junipertest.jamfcloud.com
type: string
password:
description: customer account password
example: password
type: string
smartgroup_name:
description: smart group membership for determining compliance status
example: CompliantGroup1
type: string
username:
description: customer account user name
example: john@nmo.com
type: string
required:
- instance_url
- username
- password
- smartgroup_name
type: object
account_jamf_info:
description: OAuth linked Jamf apps account details
properties:
error:
description: This error is provided when the Jamf account fails to fetch
token/data
example: OAuth token refresh failed, please re-link your account
readOnly: true
type: string
instance_url:
description: customer account Jamf instance URL
example: junipertest.jamfcloud.com
type: string
last_status:
description: Is the last data pull for Jamf account is successful or not
example: failed
readOnly: true
type: string
last_sync:
description: Last data pull timestamp, background jobs that pull Jamf account
data
example: 1665465339000
readOnly: true
type: integer
linked_by:
description: First name of the user who linked the Jamf account
example: Testname1
readOnly: true
type: string
name:
description: Name of the company whose Jamf account mist has subscribed
to
example: Test Compay1 Ltd
readOnly: true
type: string
smartgroup_name:
description: smart group membership for determining compliance status
example: CompliantGroup1
type: string
username:
description: customer account user name
example: john@nmo.com
type: string
type: object
account_jse_config:
properties:
cloud_name:
example: devcentral.juniperclouds.net
type: string
password:
example: foryoureyesonly
type: string
username:
example: john@abc.com
type: string
required:
- username
- password
type: object
account_jse_info:
properties:
cloud_name:
example: devcentral.juniperclouds.net
type: string
username:
example: john@abc.com
type: string
type: object
account_juniper_config:
properties:
password:
description: customer account password
example: password
type: string
username:
description: customer account user name
example: john@nmo.com
type: string
required:
- username
- password
type: object
account_juniper_info:
properties:
accounts:
items:
properties:
linked_by:
example: John Smith (john@abccorp.com)
type: string
name:
example: ABC Corp
type: string
title: account_juniper
type: object
type: array
type: object
account_oauth_add:
oneOf:
- $ref: '#/components/schemas/account_jamf_config'
- $ref: '#/components/schemas/account_vmware_config'
account_oauth_config:
description: OAuth linked apps (zoom/teams/intune) account details
properties:
account_id:
description: Linked app(zoom/teams/intune) account id
example: iojzXIJWEuiD73ZvydOfg
type: string
max_daily_api_requests:
description: Zoom daily api request quota, https://developers.zoom.us/docs/api/rest/rate-limits/
example: 5000
type: integer
required:
- account_id
type: object
account_oauth_info:
description: OAuth linked apps (zoom/teams/intune) account details
properties:
account_id:
description: Linked app(zoom/teams/intune) account id
example: iojzXIJWEuiD73ZvydOfg
type: string
company:
description: Name of the company whose account mist has subscribed to
example: Test Compay1 Ltd
readOnly: true
type: string
error:
description: This error is provided when the account fails to fetch token/data
example: OAuth token refresh failed, please re-link your account
readOnly: true
type: string
errors:
example:
- OAuth token refresh failed, please re-link your account
- API daily rate limit reached for your account
items:
type: string
readOnly: true
type: array
last_status:
description: Is the last data pull for account is successful or not
example: failed
readOnly: true
type: string
last_sync:
description: Last data pull timestamp, background jobs that pull account
data
example: 1665465339000
readOnly: true
type: integer
linked_by:
description: First name of the user who linked the account
example: Testname1
readOnly: true
type: string
max_daily_api_requests:
description: Zoom daily api request quota, https://developers.zoom.us/docs/api/rest/rate-limits/
example: 5000
type: integer
type: object
account_vmware_config:
properties:
api_key:
description: api key to access workspace one uem REST APIs
type: string
instance_url:
description: customer account VMware instance URL
type: string
password:
description: customer account password
type: string
username:
description: customer account user name
type: string
type: object
account_vmware_info:
properties:
account_id:
type: string
instance_url:
description: Linked VMware Instance URL
type: string
last_status:
description: Is the last data pull for VMware account is successful or not
type: string
last_sync:
description: Last data pull timestamp, background jobs that pull VMware
account data
type: integer
linked_by:
description: First name of the user who linked the VMware account
type: string
linked_timestamp:
description: This error is provided when the VMware account fails to fetch
token/data
type: integer
name:
description: Name of the company whose VMware account mist has subscribed
to
type: string
type: object
account_zscaler_config:
description: OAuth linked Zscaler apps account details
properties:
cloud_name:
example: zscalerbeta.net
type: string
parnter_key:
example: K35vrZcK3JvrZc
type: string
password:
description: customer account password
example: password
type: string
username:
description: customer account user name
example: john@nmo.com
type: string
required:
- parnter_key
- username
- password
- cloud_name
type: object
account_zscaler_info:
description: OAuth linked Zscaler apps account details
properties:
cloud_name:
example: zscalerbeta.net
type: string
parnter_key:
example: K35vrZcK3JvrZc
type: string
username:
description: customer account user name
example: john@nmo.com
type: string
type: object
admin:
description: Admin
properties:
admin_id:
example: 456b7016-a916-a4b1-78dd-72b947c152b7
format: uuid
readOnly: true
type: string
email:
example: jsnow@abc.com
format: email
type: string
enable_two_factor:
readOnly: true
type: boolean
expire_time:
type: integer
first_name:
description: for an invite, this is the original first name used
example: John
type: string
hours:
default: 24
description: how long the invite should be valid
maximum: 168
minimum: 1
type: integer
last_name:
description: for an invite, this is the original last name used
example: Sno
type: string
oauth_google:
readOnly: true
type: boolean
phone:
description: phone number (numbers only, including country code)
type: string
phone2:
description: secondary phone number (numbers only, including country code)
type: string
privileges:
description: list of privileges the admin has
items:
$ref: '#/components/schemas/privilege_self'
minItems: 1
type: array
uniqueItems: true
session_expiry:
example: 1440
readOnly: true
type: integer
tags:
items:
type: string
readOnly: true
type: array
two_factor_verified:
description: two factor status
readOnly: true
type: boolean
via_sso:
description: an admin alogin via_sso is more restircted. (password and email
cannot be changed)
readOnly: true
type: boolean
required:
- email
- first_name
- last_name
type: object
admin_array:
items:
$ref: '#/components/schemas/admin'
type: array
uniqueItems: true
alarm:
description: additional information per alarm type
properties:
ack_admin_id:
description: UUID of the admin who acked the alarm
example: 6603c94c-eaf9-4014-9edf-b9f8eed6b183
format: uuid
type: string
ack_admin_name:
description: Name & Email ID of the admin who acked the alarm
example: Joe
type: string
acked:
description: Whether the alarm is acked or not
example: true
type: boolean
acked_time:
description: Epoch (seconds) when the alarm was acked
example: 1711031352
readOnly: true
type: integer
aps:
description: 'additional information: List of MACs of the APs'
example:
- ffeeddccbbaa
- ffeeddccbbab
items:
type: string
type: array
bssids:
description: List of BSSIDs
items:
example: Corp SSID
type: string
type: array
count:
description: Number of incident within an alarm window
example: 2
readOnly: true
type: integer
gateways:
description: 'additional information: List of MACs of the gateways'
example:
- ffeeddccbbaa
- ffeeddccbbab
items:
type: string
type: array
group:
description: Group of the alarm
example: security
type: string
hostnames:
description: 'additional information: List of Hostnames of the devices (AP/Switch/Gateway)'
example:
- MC_DavidL
- MCM_AP_33_Nishant
items:
type: string
type: array
id:
description: UUID of the alarm
example: 483f6eca-6276-4993-bfeb-56cbbbba7f08
format: uuid
readOnly: true
type: string
last_seen:
description: Epoch (seconds) of the last incident/alarm within an alarm
window
example: 1711031774
type: integer
note:
description: Text describing the alarm
type: string
org_id:
$ref: '#/components/schemas/org_id'
severity:
description: Severity of the alarm
example: critical
type: string
site_id:
$ref: '#/components/schemas/site_id'
ssids:
description: List of SSIDs
items:
type: string
type: array
switches:
description: 'additional information: List of MACs of the switches'
example:
- ffeeddccbbaa
- ffeeddccbbab
items:
type: string
type: array
timestamp:
description: Epoch (seconds) of the first incident/alarm
example: 1711031774
readOnly: true
type: integer
type:
description: Key-name of the alarm type
example: rogue_client
readOnly: true
type: string
required:
- id
- timestamp
- last_seen
- type
- group
- severity
- count
type: object
alarm_ack:
properties:
alarm_ids:
example:
- ccb8c94d-ca56-4075-932f-1f2ab444ff2c
- 98ff4a3d-ec9b-4138-a42e-54fc3335179d
items:
format: uuid
type: string
type: array
note:
description: Some text note describing the intent
example: maintenance window
type: string
required:
- alarm_ids
type: object
alarm_ids:
properties:
alarm_ids:
items:
format: uuid
type: string
type: array
note:
description: Some text note describing the intent
type: string
required:
- alarm_ids
type: object
alarm_search_result:
properties:
end:
example: 1711035686
type: integer
limit:
example: 10
type: integer
next:
example: /api/v1/orgs/b3b9f5e6-67b1-4112-9b4c-6824c565eaeb/alarms/search?end=1711035686&limit=10&search_after=%5B1711031354000%2C+%2256bfa7af-b2db-43ee-a4c8-9b820bbba0e1%22%5D&start=1710949286
type: string
page:
example: 1
type: integer
results:
items:
$ref: '#/components/schemas/alarm'
type: array
start:
example: 1710949286
type: integer
total:
example: 232
type: integer
required:
- start
- end
- limit
- total
- results
type: object
alarm_template:
description: Alarm Template
properties:
created_time:
example: 1711001253
readOnly: true
type: number
delivery:
$ref: '#/components/schemas/delivery'
id:
example: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
format: uuid
readOnly: true
type: string
modified_time:
example: 1711038102
readOnly: true
type: number
name:
description: Some string to name the alarm template
example: default
type: string
org_id:
$ref: '#/components/schemas/org_id'
rules:
additionalProperties:
$ref: '#/components/schemas/alarm_template_rule'
description: Alarm Rules object to configure the individual alarm keys/types.
Property key is the alarm name.
example:
ap_offline:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
bad_cable:
delivery:
additional_emails:
- string
enabled: true
to_org_admins: true
to_site_admins: true
enabled: true
type: object
required:
- delivery
- rules
type: object
alarm_template_array:
items:
$ref: '#/components/schemas/alarm_template'
type: array
alarm_template_rule:
properties:
delivery:
$ref: '#/components/schemas/delivery'
enabled:
type: boolean
type: object
allow_deny:
default: allow
enum:
- allow
- deny
type: string
anomaly:
description: Anomaly
properties:
events:
items:
readOnly: true
type: object
readOnly: true
type: array
since:
readOnly: true
type: number
sle_baseline:
readOnly: true
type: number
sle_deviation:
readOnly: true
type: number
timestamp:
readOnly: true
type: number
required:
- timestamp
- sle_baseline
- sle_deviation
- events
type: object
anomaly_search_result:
properties:
end:
example: 1711035686
type: integer
limit:
example: 10
type: integer
page:
example: 1
type: integer
results:
items:
$ref: '#/components/schemas/anomaly'
minItems: 1
type: array
uniqueItems: true
start:
example: 1710949286
type: integer
total:
example: 232
type: integer
required:
- start
- end
- limit
- page
- results
type: object
ap:
description: AP
properties:
aeroscout:
$ref: '#/components/schemas/ap_aeroscout'
ble_config:
$ref: '#/components/schemas/ap_ble'
centrak:
properties:
enabled:
default: false
type: boolean
type: object
client_bridge:
$ref: '#/components/schemas/ap_client_bridge'
created_time:
readOnly: true
type: number
deviceprofile_id:
example: 6f4bf402-45f9-2a56-6c8b-7f83d3bc98e9
format: uuid
nullable: true
type: string
disable_eth1:
default: false
description: whether to disable eth1 port
type: boolean
disable_eth2:
default: false
description: whether to disable eth2 port
type: boolean
disable_eth3:
default: false
description: whether to disable eth3 port
type: boolean
disable_module:
default: false
description: whether to disable module port
type: boolean
esl_config:
$ref: '#/components/schemas/ap_esl_config'
for_site:
readOnly: true
type: boolean
height:
description: height, in meters, optional
example: 2.75
type: number
id:
format: uuid
readOnly: true
type: string
image1_url:
nullable: true
type: string
image2_url:
nullable: true
type: string
image3_url:
nullable: true
type: string
iot_config:
$ref: '#/components/schemas/ap_iot'
ip_config:
$ref: '#/components/schemas/ap_ip_config'
led:
$ref: '#/components/schemas/ap_led'
locked:
description: whether this map is considered locked down
type: boolean
map_id:
description: map where the device belongs to
example: 63eda950-c6da-11e4-a628-60f81dd250cc
format: uuid
type: string
mesh:
$ref: '#/components/schemas/ap_mesh'
modified_time:
readOnly: true
type: number
name:
example: conference room
type: string
notes:
description: any notes about this AP
example: slightly off center
type: string
ntp_servers:
items:
type: string
type: array
org_id:
$ref: '#/components/schemas/org_id'
orientation:
description: orientation, 0-359, in degrees, up is 0, right is 90.
example: 45
type: integer
poe_passthrough:
default: false
description: whether to enable power out through module port (for APH) or
eth1 (for APL/BT11)
type: boolean
port_config:
additionalProperties:
$ref: '#/components/schemas/ap_port_config'
description: "eth0 is allowed in mesh relay mode, otherwise eth0 is not\
\ allowed here. \nProperty key is the interface(s) name (e.g. \"eth1\"\
\ or\"eth1,eth2\")"
type: object
pwr_config:
$ref: '#/components/schemas/ap_pwr_config'
radio_config:
$ref: '#/components/schemas/ap_radio'
site_id:
$ref: '#/components/schemas/site_id'
uplink_port_config:
$ref: '#/components/schemas/ap_uplink_port_config'
usb_config:
$ref: '#/components/schemas/ap_usb'
vars:
$ref: '#/components/schemas/vars'
x:
description: x in pixel
example: 53.5
type: number
y:
description: y in pixel
example: 173.1
type: number
type: object
ap_aeroscout:
description: Aeroscout AP settings
properties:
enabled:
default: false
description: whether to enable aeroscout config
type: boolean
host:
description: required if enabled, aeroscout server host
example: aero.pvt.net
nullable: true
type: string
locate_connected:
default: true
description: whether to enable the feature to allow wireless clients data
received and sent to AES server for location calculation
type: boolean
type: object
ap_ble:
description: BLE AP settings
properties:
beacon_enabled:
default: false
description: whether Mist beacons is enabled
type: boolean
beacon_rate:
description: required if `beacon_rate_mode`==`custom`, 1-10, in number-beacons-per-second
example: 3
type: integer
beacon_rate_mode:
default: default
enum:
- default
- custom
example: custom
type: string
beam_disabled:
description: list of AP BLE location beam numbers (1-8) which should be
disabled at the AP and not transmit location information (where beam 1
is oriented at the top the AP, growing counter-clock-wise, with 9 being
the omni BLE beam)
example:
- 1
- 3
- 6
items:
type: integer
type: array
custom_ble_packet_enabled:
default: false
description: can be enabled if `beacon_enabled`==`true`, whether to send
custom packet
type: boolean
custom_ble_packet_frame:
description: The custom frame to be sent out in this beacon. The frame must
be a hexstring
example: 0x........
type: string
custom_ble_packet_freq_msec:
description: Frequency (msec) of data emitted by custom ble beacon
example: 300
minimum: 0
type: integer
eddystone_uid_adv_power:
description: advertised TX Power, -100 to 20 (dBm), omit this attribute
to use default
example: -65
maximum: 20
minimum: -100
type: integer
eddystone_uid_beams:
example: 2-4,7
type: string
eddystone_uid_enabled:
default: false
description: only if `beacon_enabled`==`false`, Whether Eddystone-UID beacon
is enabled
type: boolean
eddystone_uid_freq_msec:
description: Frequency (msec) of data emmit by Eddystone-UID beacon
example: 200
type: integer
eddystone_uid_instance:
description: Eddystone-UID instance for the device
example: 5c5b35000001
type: string
eddystone_uid_namespace:
description: Eddystone-UID namespace
example: 2818e3868dec25629ede
type: string
eddystone_url_adv_power:
description: advertised TX Power, -100 to 20 (dBm), omit this attribute
to use default
example: -65
maximum: 20
minimum: -100
type: integer
eddystone_url_beams:
example: 2-4,7
type: string
eddystone_url_enabled:
description: only if `beacon_enabled`==`false`, Whether Eddystone-URL beacon
is enabled
type: boolean
eddystone_url_freq_msec:
description: Frequency (msec) of data emit by Eddystone-UID beacon
example: 1000
type: integer
eddystone_url_url:
description: URL pointed by Eddystone-URL beacon
example: https://www.abc.com
type: string
ibeacon_adv_power:
description: advertised TX Power, -100 to 20 (dBm), omit this attribute
to use default
example: -65
maximum: 20
minimum: -100
type: integer
ibeacon_beams:
example: 2-4,7
type: string
ibeacon_enabled:
default: false
description: can be enabled if `beacon_enabled`==`true`, whether to send
iBeacon
type: boolean
ibeacon_freq_msec:
description: Frequency (msec) of data emmit for iBeacon
type: integer
ibeacon_major:
description: Major number for iBeacon
example: 13
maximum: 65535
minimum: 1
type: integer
ibeacon_minor:
description: Minor number for iBeacon
example: 138
maximum: 65535
minimum: 1
type: integer
ibeacon_uuid:
description: optional, if not specified, the same UUID as the beacon will
be used
example: f3f17139-704a-f03a-2786-0400279e37c3
format: uuid
type: string
power:
default: 9
description: required if `power_mode`==`custom`
example: 10
maximum: 10
minimum: 1
type: integer
power_mode:
$ref: '#/components/schemas/ap_ble_power_mode'
type: object
ap_ble_power_mode:
default: default
enum:
- default
- custom
example: custom
type: string
ap_client_bridge:
properties:
auth:
properties:
psk:
example: foryoureyesonly
minLength: 1
type: string
type:
default: psk
description: wpa2-AES/CCMPp is assumed when `type`==`psk`
enum:
- open
- psk
example: psk
minLength: 1
title: ap_client_bridge_auth_type
type: string
type: object
enabled:
default: false
description: 'when acted as client bridge:
* only 5G radio can be used
* will not serve as AP on any radios'
type: boolean
ssid:
example: Uplink-SSID
minLength: 1
type: string
type: object
ap_esl_config:
properties:
cacert:
description: Only if `type`==`imagotag` or `type`==`native`
type: string
channel:
description: Only if `type`==`imagotag` or `type`==`native`
example: 3
type: integer
enabled:
default: false
description: usb_config is ignored if esl_config enabled
type: boolean
host:
description: Only if `type`==`imagotag` or `type`==`native`
example: 1.1.1.1
type: string
port:
description: Only if `type`==`imagotag` or `type`==`native`
example: 0
type: integer
type:
$ref: '#/components/schemas/ap_esl_type'
verify_cert:
description: Only if `type`==`imagotag` or `type`==`native`
type: boolean
vlan_id:
default: 1
description: Only if `type`==`solum` or `type`==`hansho`
type: integer
type: object
ap_esl_type:
description: 'note: ble_config will be ingored if esl_config is enabled and
with native mode.'
enum:
- imagotag
- hanshow
- solum
- native
example: imagotag
type: string
ap_import_json:
items:
$ref: '#/components/schemas/ap'
type: array
ap_iot:
description: IoT AP settings
properties:
A1:
$ref: '#/components/schemas/ap_iot_output'
A2:
$ref: '#/components/schemas/ap_iot_output'
A3:
$ref: '#/components/schemas/ap_iot_output'
A4:
$ref: '#/components/schemas/ap_iot_output'
DI1:
$ref: '#/components/schemas/ap_iot_input'
DI2:
$ref: '#/components/schemas/ap_iot_input'
DO:
$ref: '#/components/schemas/ap_iot_output'
type: object
ap_iot_input:
description: IoT Input AP settings
properties:
enabled:
default: false
description: whether to enable a pin
type: boolean
name:
description: optional; descriptive pin name
type: string
pullup:
description: the type of pull-up the pin uses (internal, external, none),
default none
enum:
- internal
- external
- none
type: string
type: object
ap_iot_output:
description: IoT output AP settings
properties:
enabled:
default: false
description: whether to enable a pin
type: boolean
name:
description: optional; descriptive pin name
example: motion
type: string
output:
description: whether the pin is configured as an output. DO and A1-A4 can
be repurposed by changing
type: boolean
pullup:
description: the type of pull-up the pin uses (internal, external, none),
default none
enum:
- internal
- external
- non
type: string
value:
description: output pin signal level, default 0
type: integer
type: object
ap_ip_config:
description: IP AP settings
properties:
dns:
description: if `type`==`static`
example:
- 8.8.8.8
- 4.4.4.4
items:
type: string
type: array
dns_suffix:
description: required if `type`==`static`
example:
- .mist.local
- .mist.com
items:
type: string
type: array
gateway:
description: required if `type`==`static`
example: 10.2.1.254
format: ipv4
type: string
gateway6:
example: 2607:f8b0:4005:808::1
format: ipv6
type: string
ip:
description: required if `type`==`static`
example: 10.2.1.1
format: ipv4
type: string
ip6:
example: 2607:f8b0:4005:808::2004
format: ipv6
type: string
mtu:
example: 0
type: integer
netmask:
description: required if `type`==`static`
example: 255.255.255.0
type: string
netmask6:
example: /32
type: string
type:
$ref: '#/components/schemas/ip_type'
type6:
$ref: '#/components/schemas/ip_type'
vlan_id:
default: 1
description: management vlan id, default is 1 (untagged)
example: 1
type: integer
type: object
ap_led:
description: LED AP settings
properties:
brightness:
default: 255
example: 255
type: integer
enabled:
default: true
type: boolean
type: object
ap_mesh:
description: Mesh AP settings
properties:
enabled:
default: false
description: whether mesh is enabled on this AP
type: boolean
group:
description: mesh group, base AP(s) will only allow remote AP(s) in the
same mesh group to join, 1-9, optional
example: 1
maximum: 9
minimum: 1
nullable: true
type: integer
role:
$ref: '#/components/schemas/ap_mesh_role'
type: object
ap_mesh_role:
enum:
- base
- remote
example: base
type: string
ap_port_config:
properties:
additional_vlan_ids:
description: additional VLAN IDs, only valid in mesh base mode
example:
- 55
- 66
items:
minimum: 1
type: integer
type: array
disabled:
type: boolean
dynamic_vlan:
description: optional dynamic vlan
properties:
default_vlan_id:
example: 999
maximum: 4094
minimum: 1
type: integer
enabled:
type: boolean
type:
type: string
vlans:
additionalProperties:
nullable: true
type: string
example:
1-10: null
user: null
type: object
type: object
enable_mac_auth:
default: false
type: boolean
forwarding:
default: all
enum:
- all
- limited
- wxtunnel
- mxtunnel
- site_mxedge
example: all
title: ap_port_config_forwarding
type: string
mac_auth_protocol:
default: pap
description: if `enable_mac_auth`==`true`, allows user to select an authentication
protocol
enum:
- pap
- eap-peap
- eap-md5
title: ap_port_config_mac_auth_protocol
type: string
mist_nac:
$ref: '#/components/schemas/wlan_mist_nac'
mx_tunnel_id:
description: if `forwarding`==`mxtunnel`, vlan_ids comes from mxtunnel
example: 08cd7499-5841-51c8-e663-fb16b6f3b45e
format: uuid
type: string
mxtunnel_name:
description: if `forwarding`==`site_mxedge`, vlan_ids comes from site_mxedge
(`mxtunnels` under site setting)
type: string
port_auth:
default: none
description: When doing port auth
enum:
- none
- dot1x
example: none
title: ap_port_config_port_auth
type: string
port_vlan_id:
description: if `forwrding`==`limited`
example: 1
maximum: 4094
minimum: 1
type: integer
radius_config:
$ref: '#/components/schemas/junos_radius_config'
radsec:
$ref: '#/components/schemas/radsec'
vlan_id:
description: 'optional to specify the vlan id for a tunnel if forwarding
is for `wxtunnel`, `mxtunnel` or `site_mxedge`.
* if vlan_id is not specified then it will use first one in vlan_ids[]
of the mxtunnel.
* if forwarding == site_mxedge, vlan_ids comes from site_mxedge (`mxtunnels`
under site setting)'
example: 9
maximum: 4094
minimum: 1
type: integer
vland_ids:
description: if `forwrding`==`limited`
example:
- 1
- 10
- 50
items:
maximum: 4094
minimum: 1
type: integer
type: array
wxtunnel_id:
description: if `forwarding`==`wxtunnel`, the port is bridged to the vlan
of the session
example: 7dae216d-7c98-a51b-e068-dd7d477b7216
format: uuid
type: string
wxtunnel_remote_id:
description: if `forwarding`==`wxtunnel`, the port is bridged to the vlan
of the session
example: wifiguest
type: string
title: ap_port_config
type: object
ap_pwr_config:
description: power related configs
properties:
base:
default: 0
description: additional power to request during negotiating with PSE over
PoE, in mW
example: 2000
type: number
prefer_usb_over_wifi:
default: false
description: whether to enable power out to peripheral, meanwhile will reduce
power to wifi (only for AP45 at power mode)
type: boolean
type: object
ap_radio:
description: Radio AP settings
properties:
allow_rrm_disable:
default: false
type: boolean
ant_gain_24:
description: antenna gain for 2.4G - for models with external antenna only
example: 4
minimum: 0
type: integer
ant_gain_5:
description: antenna gain for 5G - for models with external antenna only
example: 5
minimum: 0
type: integer
ant_gain_6:
description: antenna gain for 6G - for models with external antenna only
example: 5
minimum: 0
type: integer
antenna_mode:
default: default
enum:
- default
- 1x1
- 2x2
- 3x3
- 4x4
type: string
band_24:
$ref: '#/components/schemas/ap_radio_band'
band_24_usage:
default: '24'
description: if `band_24_usage`==`5`, by default, band_5 properties is used,
if specific channel/bandwidth/power/... is desired, use the "band_5_on_24_radio"
enum:
- '24'
- '5'
- auto
example: '5'
type: string
band_5:
$ref: '#/components/schemas/ap_radio_band'
band_5_on_24_radio:
$ref: '#/components/schemas/ap_radio_band'
band_6:
$ref: '#/components/schemas/ap_radio_band'
indoor_use:
default: false
description: 'to make an outdoor operate indoor.
for an outdoor-ap, some channels are disallowed by default, this allows
the user to use it as an indoor-ap'
type: boolean
scanning_enabled:
description: whether scanning radio is enabled
type: boolean
type: object
ap_radio_band:
description: Radio Band AP settings
properties:
allow_rrm_disable:
type: boolean
ant_gain:
nullable: true
type: integer
antenna_mode:
default: default
enum:
- default
- 1x1
- 2x2
- 3x3
- 4x4
example: default
type: string
bandwidth:
$ref: '#/components/schemas/dot11_bandwidth'
channel:
description: For Device. (primary) channel for the band, 0 means using the
Site Setting
example: 0
nullable: true
type: integer
channels:
description: For RFTemplates. List of channels, null or empty array means
auto
items:
type: integer
nullable: true
type: array
disabled:
description: whether to disable the radio
type: boolean
power:
description: "TX power of the radio. For Devices, 0 means auto. -1 / -2\
\ / -3 / \u2026: treated as 0 / -1 / -2 / \u2026"
example: 0
nullable: true
type: integer
power_max:
description: when power=0, max tx power to use, HW-specific values will
be used if not set
nullable: true
type: integer
power_min:
description: when power=0, min tx power to use, HW-specific values will
be used if not set
nullable: true
type: integer
preamble:
default: short
enum:
- short
- long
- auto
type: string
standard_power:
default: false
description: for 6GHz Only, standard-power operation, AFC (Automatic Frequency
Coordination) will be performed and we'll fallback to Low Power Indoor
if AFC failed
type: boolean
usage:
default: '24'
description: for band_24 radio
enum:
- '24'
- '5'
- rrm
title: ap_radio_usage
type: string
type: object
ap_radio_macs:
items:
properties:
mac:
minLength: 1
type: string
radio_macs:
items:
properties: {}
type: array
required:
- mac
- radio_macs
type: object
minItems: 1
type: array
uniqueItems: true
ap_radio_stats:
description: radio stat
properties:
bandwidth:
$ref: '#/components/schemas/dot11_bandwidth'
channel:
description: current channel the radio is running on
type: integer
dynamic_chaining_enalbed:
description: Use dynamic chaining for downlink
type: boolean
mac:
description: radio (base) mac, it can have 16 bssids (e.g. 5c5b350001a0-5c5b350001af)
type: string
num_clients:
type: integer
power:
description: transmit power (in dBm)
type: integer
rx_bytes:
type: number
rx_pkts:
type: number
tx_bytes:
type: number
tx_pkts:
type: number
util_all:
description: all utilization in percentage
type: integer
util_non_wifi:
description: "reception of \u201CNo Packets\u201D utilization in percentage,\
\ received frames with invalid PLCPs and CRS glitches as noise"
type: integer
util_rx_in_bss:
description: "reception of \u201CIn BSS\u201D utilization in percentage,\
\ only frames that are received from AP/STAs within the BSS"
type: integer
util_rx_other_bss:
description: "reception of \u201COther BSS\u201D utilization in percentage,\
\ all frames received from AP/STAs that are outside the BSS"
type: integer
util_tx:
description: transmission utilization in percentage
type: integer
util_unknown_wifi:
description: "reception of \u201CNo Category\u201D utilization in percentage,\
\ all 802.11 frames that are corrupted at the receiver"
type: integer
type: object
ap_search:
properties:
band_24_bandwith:
description: Bandwith of band_24
type: string
band_24_channel:
description: Channel of band_24
type: integer
band_24_power:
type: integer
band_5_bandwith:
description: Bandwith of band_5
type: string
band_5_channel:
description: Channel of band_5
type: integer
band_5_power:
type: integer
band_6_bandwith:
type: string
band_6_channel:
description: Channel of band_6
type: integer
band_6_power:
type: integer
eth0_port_speed:
description: Port speed of eth0
type: integer
ext_ip:
type: string
hostname:
description: partial / full hostname
items:
type: string
type: array
ip:
description: ip address
type: string
lldp_mgmt_addr:
description: LLDP management ip address
type: string
lldp_port_desc:
type: string
lldp_port_id:
description: LLDP port id
type: string
lldp_power_allocated:
type: integer
lldp_power_draw:
type: integer
lldp_system_desc:
description: LLDP system description
type: string
lldp_system_name:
description: LLDP system name
type: string
mac:
description: device model
type: string
model:
type: string
mxedge_id:
description: Mist Edge id, if AP is connecting to a Mist Edge
type: string
mxtunnel_status:
description: MxTunnel status
type: string
org_id:
$ref: '#/components/schemas/org_id'
power_constrained:
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
sku:
type: string
timestamp:
type: number
uptime:
type: integer
version:
description: version
type: string
type: object
ap_stat_mesh_downlink:
properties:
band:
example: '5'
type: string
channel:
example: 36
type: integer
idle_time:
example: 3
type: integer
last_seen:
example: 1470417522
type: integer
proto:
example: n
type: string
rssi:
example: -65
type: integer
rx_bps:
example: 12
type: integer
rx_bytes:
example: 217416
type: integer
rx_packets:
example: 2337
type: integer
rx_rate:
example: 65
type: integer
rx_retries:
example: 5
type: integer
site_id:
$ref: '#/components/schemas/site_id'
snr:
example: 31
type: integer
tx_bps:
example: 6
type: integer
tx_bytes:
example: 175132
type: integer
tx_packets:
example: 1566
type: integer
tx_rate:
example: 65
type: integer
tx_retries:
example: 500
type: integer
type: object
ap_stat_mesh_uplink:
properties:
band:
example: '5'
type: string
channel:
example: 36
type: integer
idle_time:
example: 3
type: integer
last_seen:
example: 1470417522
type: integer
proto:
example: n
type: string
rssi:
example: -65
type: integer
rx_bps:
example: 12
type: integer
rx_bytes:
example: 217416
type: integer
rx_packets:
example: 2337
type: integer
rx_rate:
example: 65
type: integer
rx_retries:
example: 5
type: integer
site_id:
$ref: '#/components/schemas/site_id'
snr:
example: 31
type: integer
tx_bps:
example: 6
type: integer
tx_bytes:
example: 175132
type: integer
tx_packets:
example: 1566
type: integer
tx_rate:
example: 65
type: integer
tx_retries:
example: 500
type: integer
uplink_ap_id:
example: 00000000-0000-0000-1000-5c5b35000010
format: uuid
type: string
type: object
ap_stats:
description: AP statistics
properties:
auto_placement:
properties:
_id:
example: 5c5b35000010
type: string
info:
description: Additional information about auto placements AP data
properties:
cluster_number:
description: All APs sharing a given cluster number can be placed
relative to each other
example: 0
type: integer
orientation_stats:
description: The orientation of an AP
example: 0
type: integer
probability_surface:
description: Coordinates representing a circle where the AP is most
likely exists in the event of an inaccurate placement result
properties:
radius:
description: The radius representing placement uncertainty,
measured in pixels
example: 2.1
type: number
radius_m:
description: The radius representing placement uncertainty,
measured in meters
type: number
x:
description: "X-coordinate of the potential placement\u2019\
s center, measured in pixels"
example: 5.65
type: number
y:
description: "Y-coordinate of the potential placement\u2019\
s center, measured in pixels"
example: 17
type: number
type: object
type: object
recommended_anchor:
description: Flag to represent if AP is recommended as an anchor by
auto placement service
type: boolean
status:
description: Basic Placement Status
example: localized
type: string
status_detail:
description: Additional info about placement status
example: localized
type: string
use_auto_placement:
description: Flag to represent if auto_placement values are currently
utilized
type: boolean
x:
description: X Autoplaced Position in pixels
example: 53.5
type: number
x_m:
description: X Autoplaced Position in meters
example: 5.35
type: number
y:
description: Y Autoplaced Position in pixels
example: 173.1
type: number
y_m:
description: X Autoplaced Position in meters
example: 17.31
type: number
type: object
ble_config:
properties:
beacon_rate:
type: integer
beacon_rate_model:
example: custom
type: string
beam_disabled:
items:
type: integer
type: array
power:
type: integer
power_mode:
example: custom
type: string
type: object
ble_stat:
properties:
beacon_rate:
example: 3
type: integer
eddystone_uid_enabled:
example: false
type: boolean
eddystone_uid_freq_msec:
example: 200
type: integer
eddystone_uid_instance:
example: 5c5b35000001
type: string
eddystone_uid_namespace:
example: 2818e3868dec25629ede
type: string
eddystone_url_enabled:
example: true
type: boolean
eddystone_url_freq_msec:
description: Frequency (msec) of data emmit by Eddystone-UID beacon
example: 100
type: integer
eddystone_url_url:
example: https://www.abc.com
type: string
ibeacon_enabled:
example: true
type: boolean
ibeacon_major:
example: 13
type: integer
ibeacon_minor:
example: 138
type: integer
ibeacon_uuid:
example: f3f17139-704a-f03a-2786-0400279e37c3
format: uuid
type: string
major:
example: 12345
type: integer
minors:
$ref: '#/components/schemas/integers'
power:
example: 10
type: integer
rx_bytes:
example: 135
type: integer
rx_pkts:
example: 135
type: integer
tx_bytes:
example: 5231513353
type: integer
tx_pkts:
example: 135135135
type: integer
tx_resets:
description: resets due to tx hung
example: 0
type: integer
uuid:
example: ada72f8f-1643-e5c6-94db-f2a5636f1a64
format: uuid
type: string
type: object
cert_expiry:
example: 1534534392
type: number
env_stat:
description: device environment, including CPU temperature, Ambient temperature,
Humidity, Attitude, Pressure, Accelerometers, Magnetometers and vCore
Voltage
properties:
accel_x:
type: number
accel_y:
type: number
accel_z:
type: number
ambient_temp:
type: integer
attitude:
type: integer
cpu_temp:
type: integer
humidity:
type: integer
magne_x:
type: number
magne_y:
type: number
magne_z:
type: number
pressure:
type: integer
vcore_voltage:
type: number
type: object
esl_stat:
properties:
channel:
type: integer
connected:
type: boolean
type:
type: string
up:
type: boolean
type: object
ext_ip:
example: 73.92.124.103
type: string
fwupdate:
properties:
progress:
example: 10
type: integer
status:
example: inprogress
type: string
status_id:
example: 5
type: integer
timestamp:
example: 1428949501
type: integer
type: object
iot_stat:
additionalProperties:
properties:
value:
type: integer
type: object
example:
DI2:
value: 0
type: object
ip:
example: 10.2.9.159
type: string
ip_config:
$ref: '#/components/schemas/ap_ip_config'
ip_stat:
$ref: '#/components/schemas/ip_stat'
l2tp_stat:
additionalProperties:
$ref: '#/components/schemas/ap_stats_l2tp_stat'
description: l2tp tunnel status (key is the wxtunnel_id)
type: object
last_seen:
description: last seen timestamp
example: 1470417522
type: number
last_trouble:
$ref: '#/components/schemas/last_trouble'
led:
$ref: '#/components/schemas/ap_led'
lldp_stat:
$ref: '#/components/schemas/ap_stats_lldp_stat'
locating:
example: false
type: boolean
locked:
description: whether this AP is considered locked (placement / orientation
has been vetted)
example: true
type: boolean
mac:
description: device mac
example: 5c5b35000010
type: string
map_id:
example: 63eda950-c6da-11e4-a628-60f81dd250cc
format: uuid
type: string
mesh_downlinks:
additionalProperties:
$ref: '#/components/schemas/ap_stat_mesh_downlink'
description: Property key is the mesh downlink id (e.g `00000000-0000-0000-1000-5c5b35000010`)
type: object
mesh_uplink:
$ref: '#/components/schemas/ap_stat_mesh_uplink'
model:
description: device model
example: AP200
type: string
mount:
example: faceup
type: string
name:
example: conference room
type: string
num_clients:
description: how many wireless clients are currently connected
type: integer
port_stat:
additionalProperties:
$ref: '#/components/schemas/ap_stats_port_stat'
description: Property key is the port name (e.g. `eth0`)
type: object
power_budget:
description: in mW, surplus if positive or deficit if negative
example: 1000
type: number
power_constrained:
description: whether insufficient power
example: false
type: boolean
power_opmode:
description: constrained mode
example: '[20] 6GHz(2x2) 5GHz(4x4) 2.4GHz(2x2).'
type: string
power_src:
description: DC Input / PoE 802.3at / PoE 802.3af / LLDP / ? (unknown)
example: PoE 802.3af
type: string
radio_config:
$ref: '#/components/schemas/ap_stats_radio_config'
radio_stat:
properties:
band_24:
$ref: '#/components/schemas/ap_radio_stats'
band_5:
$ref: '#/components/schemas/ap_radio_stats'
band_6:
$ref: '#/components/schemas/ap_radio_stats'
type: object
rx_bps:
example: 60003
type: number
rx_bytes:
example: 8515104416
type: integer
rx_pkts:
example: 57770567
type: integer
serial:
description: serial
example: FXLH2015170017
type: string
status:
$ref: '#/components/schemas/ap_stats_status'
switch_redundancy:
$ref: '#/components/schemas/ap_stats_switch_redundancy'
tx_bps:
example: 634301
type: number
tx_bytes:
example: 211217389682
type: number
tx_pkts:
example: 812204062
type: number
type:
description: device type, ap / ble
example: ap
type: string
uptime:
description: how long, in seconds, has the device been up (or rebooted)
example: 13500
type: number
usb_stat:
$ref: '#/components/schemas/ap_stats_usb_stat'
version:
example: 0.14.12345
type: string
x:
example: 53.5
type: number
y:
example: 173.1
type: number
required:
- mac
- model
type: object
ap_stats_l2tp_stat:
properties:
sessions:
description: list of sessions
items:
properties:
local_sid:
description: remote sessions id (dynamically unless Tunnel is said
to be static)
example: 31
type: integer
remote_id:
description: WxlanTunnel Remote ID (user-configured)
example: vpn1
type: string
remote_sid:
description: remote sessions id (dynamically unless Tunnel is said
to be static)
example: 13
type: integer
state:
$ref: '#/components/schemas/l2tp_state'
title: device_stats_ap_session
type: object
minItems: 1
type: array
uniqueItems: true
state:
$ref: '#/components/schemas/l2tp_state'
uptime:
description: uptime
example: 135
type: integer
wxtunnel_id:
description: WxlanTunnel ID
example: 7dae216d-7c98-a51b-e068-dd7d477b7216
format: uuid
type: string
type: object
ap_stats_lldp_stat:
description: LLDP Stat (neighbor information, power negotiations)
properties:
chassis_id:
type: string
lldp_med_supported:
description: whether it support LLDP-MED
type: boolean
mgmt_addr:
description: "switch\u2019s management address (if advertised), can be IPv4,\
\ IPv6, or MAC"
type: string
port_desc:
description: "port description, e.g. \u201C2/20\u201D, \u201CPort 2 on Switch0\u201D"
type: string
power_allocated:
description: in mW, provided/allocated by PSE
type: number
power_draw:
description: in mW, total power needed by PD
type: number
power_request_count:
description: "number of negotiations, if it keeps increasing, we don\u2019\
t have a stable power"
type: integer
power_requested:
description: in mW, the current power requested by PD
type: number
system_desc:
description: "description provided by switch, e.g. \u201CHP J9729A 2920-48G-POE+\
\ Switch\u201D"
type: string
system_name:
description: "name of the switch, e.g. \u201CTC2-OWL-Stack-01\u201D"
type: string
type: object
ap_stats_port_stat:
properties:
full_duplex:
example: true
type: boolean
rx_bytes:
example: 2056
type: number
rx_errors:
example: 0
type: number
rx_pkts:
example: 670
type: number
speed:
example: 1000
type: integer
tx_bytes:
example: 2056
type: number
tx_pkts:
example: 670
type: number
up:
example: true
type: boolean
type: object
ap_stats_radio_config:
properties:
band_24:
$ref: '#/components/schemas/ap_stats_radio_config_band'
band_5:
$ref: '#/components/schemas/ap_stats_radio_config_band'
band_6:
$ref: '#/components/schemas/ap_stats_radio_config_band'
scanning_enabled:
type: boolean
type: object
ap_stats_radio_config_band:
properties:
bandwidth:
example: 20
type: number
channel:
example: 1
type: integer
dynamic_chaining_enabled:
example: false
type: boolean
power:
example: 10
type: number
rx_chain:
example: 4
type: integer
tx_chain:
example: 4
type: integer
type: object
ap_stats_status:
enum:
- connected
- disconnected
- restarting
- upgrading
example: connected
type: string
ap_stats_switch_redundancy:
properties:
redundant:
description: if there are neighbor APs on different switch
example: true
type: boolean
type: object
ap_stats_usb_stat:
properties:
channel:
example: 3
type: integer
connected:
example: true
type: boolean
last_activity:
example: 1586873254
type: integer
type:
example: imagotag
type: string
up:
example: true
type: boolean
type: object
ap_switch:
deprecated: true
description: for people who want to fully control the vlans (advanced)
properties:
enabled:
default: false
type: boolean
eth0:
$ref: '#/components/schemas/ap_switch_setting'
eth1:
$ref: '#/components/schemas/ap_switch_setting'
eth2:
$ref: '#/components/schemas/ap_switch_setting'
eth3:
$ref: '#/components/schemas/ap_switch_setting'
module:
$ref: '#/components/schemas/ap_switch_setting'
wds:
$ref: '#/components/schemas/ap_switch_setting'
type: object
ap_switch_setting:
properties:
additional_vlan_ids:
description: additional VLAN IDs, only valid in mesh base mode
items:
type: integer
type: array
enable_vlan:
type: boolean
port_vlan_id:
description: native VLAN id, optional
oneOf:
- type: integer
- type: string
vlan_ids:
description: list of VLAN ids this
items:
type: integer
type: array
title: ap_switch_setting
type: object
ap_template:
properties:
ap_matching:
properties:
enabled:
type: boolean
rules:
items:
properties:
match_model:
minLength: 1
type: string
name:
minLength: 1
type: string
port_config:
additionalProperties:
$ref: '#/components/schemas/ap_port_config'
description: Property key is the interface(s) name (e.g. "eth1,eth2")
type: object
title: ap_template_matching_rule
type: object
minItems: 1
type: array
uniqueItems: true
title: ap_template_matching
type: object
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
org_id:
format: uuid
readOnly: true
type: string
site_id:
$ref: '#/components/schemas/site_id'
wifi:
properties:
cisco_enabled:
type: boolean
disable_11k:
default: false
type: boolean
disable_radios_when_power_constrained:
type: boolean
enable_arp_spoof:
type: boolean
enable_shared_radio_scanning:
default: false
type: boolean
enabled:
default: true
type: boolean
locate_connected:
default: false
type: boolean
locate_unconnected:
default: false
type: boolean
mesh_allow_dfs:
default: false
type: boolean
mesh_enable_crm:
type: boolean
mesh_enabled:
type: boolean
proxy_arp:
default: false
type: boolean
type: object
required:
- ap_matching
type: object
ap_uplink_port_config:
properties:
dot1x:
default: false
description: Whether to do 802.1x against uplink switch. When enaled, AP
cert will be used to do EAP-TLS and the Org's CA Cert has to be provisioned
at the switch
type: boolean
keep_wlans_up_if_down:
default: false
description: by default, WLANs are disabled when uplink is down. In some
scenario, like SiteSurvey, one would want the AP to keep sending beacons.
type: boolean
type: object
ap_usb:
description: 'USB AP settings
Note: if native imagotag is enabled, BLE will be disabled automatically
Note: legacy, new config moved to ESL Config.'
properties:
cacert:
description: only if `type`==`imagotag`
nullable: true
type: string
channel:
description: 'only if `type`==`imagotag`
channel selection, not needed by default, required for manual channel
override only'
example: 3
type: integer
enabled:
description: whether to enable any usb config
type: boolean
host:
description: only if `type`==`imagotag`
example: 1.1.1.1
type: string
port:
default: 0
description: only if `type`==`imagotag`
example: 0
type: integer
type:
description: usb config type
enum:
- imagotag
- solum
- hanshow
example: imagotag
title: ap_usb_type
type: string
verify_cert:
description: only if `type`==`imagotag`, whether to turn on SSL verification
type: boolean
vlan_id:
default: 1
description: only if `type`==`solum` or `type`==`hanshow`
type: integer
type: object
asset:
description: Asset
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
mac:
description: bluetooth MAC
type: string
map_id:
format: uuid
type: string
modified_time:
readOnly: true
type: number
name:
description: name / label of the device
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
tag_id:
format: uuid
type: string
required:
- name
- mac
type: object
asset_array:
items:
$ref: '#/components/schemas/asset'
type: array
asset_filter:
description: Asset Filter
properties:
ap_mac:
type: string
beam:
type: integer
created_time:
readOnly: true
type: number
disabled:
default: false
type: boolean
disasbled:
description: whether the asset filter is disabled
type: boolean
eddystone_uid_namespace:
description: eddystone uid namespace used to filter assets
example: 2818e3868dec25629ede
type: string
eddystone_url:
description: eddystone url used to filter assets
example: https://www.abc.com
type: string
for_site:
readOnly: true
type: boolean
ibeacon_major:
description: ibeacon major value used to filter assets
example: 13
type: integer
ibeacon_uuid:
description: ibeacon uuid used to filter assets
example: f3f17139-704a-f03a-2786-0400279e37c3
format: uuid
type: string
id:
format: uuid
readOnly: true
type: string
mfg_company_id:
description: ble manufacturing-specific company-id used to filter assets
example: 935
type: integer
modified_time:
readOnly: true
type: number
name:
example: Visitor Tags
type: string
org_id:
$ref: '#/components/schemas/org_id'
rssi:
type: integer
service_uuid:
description: ble service data uuid used to filter assets
example: 0000fe6a-0000-1000-8000-0030459b3cfb
format: uuid
type: string
site_id:
$ref: '#/components/schemas/site_id'
required:
- name
type: object
asset_import:
properties:
mac:
minLength: 1
type: string
name:
minLength: 1
type: string
required:
- name
- mac
type: object
asset_of_interest:
properties:
_checkpoint_prep:
type: number
_checkpoint_preparer:
type: number
_checkpoint_scan:
type: number
_timestamp:
type: number
_ttl:
type: number
ap_mac:
minLength: 1
type: string
beam:
type: number
by:
minLength: 1
type: string
curr_site:
minLength: 1
type: string
device_name:
type: string
id:
minLength: 1
type: string
last_seen:
type: number
mac:
minLength: 1
type: string
manufacture:
minLength: 1
type: string
map_id:
minLength: 1
type: string
name:
minLength: 1
type: string
rssi:
type: number
type: object
asset_stats:
description: Asset statistics
properties:
battery_voltage:
description: battery voltage, in mV
example: 2970
type: number
beam:
example: 6
type: integer
device_name:
example: a
type: string
duration:
example: 120
type: integer
eddystone_uid_instance:
example: 5c5b35000001
type: string
eddystone_uid_namespace:
example: 2818e3868dec25629ede
type: string
eddystone_url_url:
example: ttps://www.abc.com
type: string
ibeacon_major:
example: 12
type: integer
ibeacon_minor:
example: 138
type: integer
ibeacon_uuid:
example: f3f17139-704a-f03a-2786-0400279e37c3
format: uuid
type: string
last_seen:
description: last seen timestamp
example: 1428939600
type: number
mac:
description: bluetooth MAC
example: 6fa474be7ae5
type: string
map_id:
description: map where the device belongs to
example: c45be59f-854d-4ef7-b782-dcd6309c84a9
format: uuid
type: string
name:
description: name / label of the device
example: 6fa474be7ae5
type: string
rssi:
example: -60
type: integer
rssizones:
description: only send this for individual asset stat
items:
properties:
id:
format: uuid
type: string
since:
type: number
title: asset_rssi_zone
type: object
title: asset_rssi_zones
type: array
temperatur:
example: 23.0
type: number
x:
description: x in pixel
example: 280.19918140310193
type: number
y:
description: y in pixel
example: 420.2987721046529
type: number
zones:
description: only send this for individual asset stat
items:
properties:
id:
format: uuid
type: string
since:
type: number
title: asset_zone
type: object
title: asset_zones
type: array
required:
- mac
type: object
asset_stats_array:
items:
$ref: '#/components/schemas/asset_stats'
type: array
assets_import_file:
properties:
file:
description: CSV file
format: binary
type: string
type: object
assets_import_json:
example:
- mac: a31eb04e1c38
name: Expensive Instrument
- mac: a31eb04e1c37
name: Cheap Instrument
items:
$ref: '#/components/schemas/asset_import'
minItems: 1
type: array
uniqueItems: true
auto_orient:
properties:
force_collection:
default: false
description: "If `force_collection`==`false`, the API attempts to start\
\ auto orientation with existing BLE data. \nIf `force_collection`==`true`,\
\ the API attempts to start BLE orchestration."
type: boolean
macs:
description: list of device macs
items:
type: string
type: array
type: object
auto_placement:
properties:
force_collection:
default: false
description: "* If `force_collection`==`false`: the API Iattempts to start\
\ localization with existing data. \n* If `force_collection`==`true`:\
\ maintenance the API attempts to start orchestration."
type: boolean
macs:
description: list of device macs
items:
type: string
type: array
type: object
auto_preemption:
description: "schedule to preempt ap\u2019s which are not connected to preferred\
\ peer"
properties:
day_of_week:
$ref: '#/components/schemas/day_of_week'
enabled:
default: false
description: whether auto preemption should happen
type: boolean
time_of_day:
$ref: '#/components/schemas/time_of_day'
type: object
beacon:
description: Beacon
properties:
created_time:
readOnly: true
type: number
eddystone_instance:
description: Eddystone-UID instance (6 bytes) in hexstring format
type: string
eddystone_namespace:
description: Eddystone-UID namespace (10 bytes) in hexstring format
type: string
eddystone_url:
description: Eddystone-URL url
type: string
for_site:
readOnly: true
type: boolean
ibeacon_major:
description: bluetooth tag major
type: integer
ibeacon_minor:
description: bluetooth tag minor
type: integer
ibeacon_uuid:
description: bluetooth tag UUID
format: uuid
type: string
id:
format: uuid
readOnly: true
type: string
mac:
description: optiona, MAC of the beacon, currently used only to identify
battery voltage
type: string
map_id:
description: map where the device belongs to
format: uuid
type: string
modified_time:
readOnly: true
type: number
name:
description: name / label of the device
type: string
org_id:
$ref: '#/components/schemas/org_id'
power:
default: -12
description: in dBm
maximum: 100
minimum: -12
type: integer
site_id:
$ref: '#/components/schemas/site_id'
type:
default: eddystone-uid
enum:
- ibeacon
- eddystone-uid
- eddystone-url
title: beacon_type
type: string
x:
description: x in pixel
type: number
y:
description: y in pixel
type: number
type: object
beacon_stats:
description: Beacon statistics
items:
properties:
battery_voltage:
description: battery voltage, in mV
type: number
eddystone_instance:
type: string
eddystone_namespace:
type: string
last_seen:
type: number
mac:
type: string
map_id:
format: uuid
type: string
name:
type: string
power:
type: integer
type:
type: string
x:
type: number
y:
type: number
required:
- mac
- name
- type
- power
- map_id
- x
- y
- last_seen
type: object
minItems: 1
type: array
uniqueItems: true
bgp_stats:
properties:
evpn_overlay:
description: if this is created for evpn overlay
type: boolean
for_overlay:
description: if this is created for overlay
type: boolean
local_as:
description: AS
example: 65000
type: integer
mac:
description: router mac address
example: 020001c04668
type: string
neighbor:
example: 15.8.3.5
type: string
neighbor_as:
example: 65000
type: integer
neighbor_mac:
description: if it's another device in the same org
example: 020001c04600
type: string
node:
description: node0/node1
example: node0
type: string
org_id:
$ref: '#/components/schemas/org_id'
rx_pkts:
example: 63366
type: integer
rx_routes:
description: number of received routes
example: 60
type: integer
site_id:
$ref: '#/components/schemas/site_id'
state:
enum:
- idle
- connect
- active
- open_sent
- open_config
- established
example: established
title: bgp_stats_state
type: string
timestamp:
example: 1666251056.07
type: number
tx_pkts:
example: 1735
type: integer
tx_routes:
example: 60
type: integer
up:
type: boolean
uptime:
example: 31355
type: integer
vrf_name:
example: default
type: string
title: bgp_stats
type: object
binary_stream:
format: binary
type: string
call_stats:
properties:
app:
type: string
audio_quality:
type: integer
end_time:
type: integer
mac:
type: string
meeting_id:
type: string
org_id:
$ref: '#/components/schemas/org_id'
rating:
type: integer
screen_share_quality:
type: integer
site_id:
$ref: '#/components/schemas/site_id'
start_time:
type: integer
video_quality:
type: integer
type: object
call_troubleshoot:
properties:
mac:
example: 983a78ea4a44
type: string
meeting_id:
example: b784d744-9a7c-4fad-9af0-f78858a319b1
format: uuid
type: string
results:
items:
properties:
audio_in:
$ref: '#/components/schemas/call_troubleshoot_data'
audio_out:
$ref: '#/components/schemas/call_troubleshoot_data'
timestamp:
example: 1695425115
type: integer
video_in:
$ref: '#/components/schemas/call_troubleshoot_data'
video_out:
$ref: '#/components/schemas/call_troubleshoot_data'
title: troubleshoot_call_item
type: object
type: array
title: ''
type: object
call_troubleshoot_data:
properties:
ap_num_clients:
example: -0.6565111
type: number
ap_rtt:
example: 0.16559607
type: number
client_cpu:
example: 3.7028809
type: number
client_n_streams:
example: 0.15803306
type: number
client_radio_band:
example: 0.5576923
type: number
client_rssi:
example: -1.0839354
type: number
client_rx_bytes:
example: 2.2622051
type: number
client_rx_rates:
example: 0.62357205
type: number
client_rx_retries:
example: 0.26726437
type: number
client_tx_bytes:
example: 0.15803306
type: number
client_tx_rates:
example: 0.62357205
type: number
client_tx_retries:
example: 0.77553505
type: number
client_vpn_distaince:
example: 1.6474955
type: number
client_wifi_version:
example: 0.18267937
type: number
expected:
example: 30.941595
type: number
radio_bandwidth:
example: -0.06538621
type: number
radio_channel:
example: -0.73391086
type: number
radio_tx_power:
example: 0.10027129
type: number
radio_util:
example: 12.770318
type: number
radio_util_interference:
example: -3.079999
type: number
site_num_clients:
example: 0.017364305
type: number
wan_avg_download_mbps:
example: 1.4803165
type: number
wan_avg_upload_mbps:
example: -0.038184267
type: number
wan_jitter:
example: 5.9680853
type: number
wan_max_download_mbps:
example: 1.4803165
type: number
wan_max_upload_mbps:
example: -0.038184267
type: number
wan_rtt:
example: 46.77899
type: number
type: object
call_troubleshoot_summary:
properties:
mac:
example: 983a78ea4a44
type: string
meeting_id:
example: b784d744-9a7c-4fad-9af0-f78858a319b1
format: uuid
type: string
results:
items:
properties:
audio_in:
$ref: '#/components/schemas/call_troubleshoot_summary_data'
audio_out:
$ref: '#/components/schemas/call_troubleshoot_summary_data'
timestamp:
example: 1695425115
type: integer
video_in:
$ref: '#/components/schemas/call_troubleshoot_summary_data'
video_out:
$ref: '#/components/schemas/call_troubleshoot_summary_data'
title: troubleshoot_call_item
type: object
type: array
title: ''
type: object
call_troubleshoot_summary_data:
properties:
ap_num_clients:
example: -0.6565111
type: integer
ap_rtt:
example: 0.16559607
type: integer
client_cpu:
example: 3.7028809
type: integer
client_n_streams:
example: 0.15803306
type: integer
client_radio_band:
example: 0.5576923
type: integer
client_rssi:
example: -1.0839354
type: integer
client_rx_bytes:
example: 2.2622051
type: integer
client_rx_rates:
example: 0.26726437
type: integer
client_tx_bytes:
example: 6.6164713
type: integer
client_tx_rates:
example: 0.62357205
type: integer
client_tx_retries:
example: 1.702031
type: integer
client_vpn_distaince:
example: 1.6474955
type: integer
client_wifi_version:
example: 0.18267937
type: integer
expected:
example: 30.941595
type: integer
radio_bandwidth:
example: -0.06538621
type: integer
radio_channel:
example: -0.73391086
type: integer
radio_tx_power:
example: 0.10027129
type: integer
radio_util:
example: 12.770318
type: integer
radio_util_interference:
example: -3.079999
type: integer
site_num_clients:
example: 0.017364305
type: integer
wan_avg_download_mbps:
example: 1.4803165
type: integer
wan_avg_upload_mbps:
example: -0.038184267
type: integer
wan_jitter:
example: 5.9680853
type: integer
wan_max_download_mbps:
example: 1.4803165
type: integer
wan_max_upload_mbps:
example: -0.038184267
type: integer
wan_rtt:
example: 46.77899
type: integer
type: object
capture_client:
description: Initiate a Client Packet Capture
properties:
ap_mac:
example: 'null'
nullable: true
type: string
client_mac:
description: client mac, required if `type`==`client`; optional otherwise
example: 60a10a773412
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 300
maximum: 86400
nullable: true
type: integer
includes_mcast:
default: false
type: boolean
max_pkt_len:
default: 128
example: 128
maximum: 2048
nullable: true
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited, default is 1024
for client-capture
example: 1000
nullable: true
type: integer
ssid:
description: optional filter by ssid
example: 'null'
nullable: true
type: string
type:
description: client
enum:
- client
example: client
type: string
required:
- type
title: capture_client
type: object
capture_gateway:
description: Initiate a Gateway (SSR) Packet Capture
properties:
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
minimum: 0
type: integer
format:
default: stream
enum:
- stream
example: stream
type: string
gateways:
additionalProperties:
properties:
ports:
additionalProperties:
properties:
tcpdump_expression:
description: tcpdump expression per port
type: string
title: capture_gateway_port
type: object
description: Property key is the port ID
type: object
type: object
description: List of SSRs. Property key is the SSR MAC
type: object
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 1500
maximum: 2048
minimum: 0
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
minimum: 0
type: integer
ports:
description: dict of port which uses port id as the key
items:
type: string
type: array
type:
enum:
- gateway
example: gateway
type: string
required:
- type
title: capture_gateway
type: object
capture_mxedge:
description: Initiate a Wireless Packet Capture
properties:
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
format:
default: stream
description: pcap format
enum:
- stream
type: string
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 68
maximum: 2048
type: integer
mxedges:
additionalProperties:
description: Property key is the Mx Edge ID
properties:
interfaces:
additionalProperties:
description: Property key is the Port name (e.g. "port1")
properties:
tcpdump_expression:
description: tcpdump expression common for wired,radiotap
type: string
type: object
type: object
type: object
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
maximum: 10000
type: integer
type:
description: mxedge
enum:
- mxedge
example: mxedge
type: string
required:
- type
title: capture_mxedge
type: object
capture_new_assoc:
description: Initiate a packet Capture for New Wireless Client Associations
properties:
ap_mac:
example: 'null'
nullable: true
type: string
client_mac:
description: client mac, required if `type`==`client`; optional otherwise
example: 60a10a773412
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
includes_mcast:
default: false
type: boolean
max_pkt_len:
default: 128
example: 128
maximum: 2048
type: integer
num_packets:
default: 100
description: number of packets to capture, 0 for unlimited
example: 100
type: integer
ssid:
description: optional filter by ssid
example: 'null'
nullable: true
type: string
type:
description: new-assoc
enum:
- new_assoc
example: new_assoc
type: string
required:
- type
title: capture_new_assoc
type: object
capture_org:
oneOf:
- $ref: '#/components/schemas/capture_mxedge'
capture_radiotap:
description: Initiate a Radiotap Packet Capture
properties:
ap_mac:
example: 'null'
nullable: true
type: string
band:
default: '24'
enum:
- '24'
- '5'
- '6'
- 24,5,6
example: '24'
nullable: true
type: string
client_mac:
example: 38f9d3972ff1
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
format:
default: pcap
enum:
- pcap
- stream
example: stream
type: string
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 68
maximum: 2048
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
minimum: 0
type: integer
ssid:
example: atest
nullable: true
type: string
tcpdump_expression:
description: tcpdump expression specific to radiotap
example: tcp port 80
nullable: true
type: string
type:
default: radiotap
type: string
wlan_id:
description: wlan id associated with the respective ssid.
example: fac8e973-feb9-421a-b381-aabbc4b61f5a
nullable: true
type: string
required:
- type
title: capture_radiotap
type: object
capture_radiotapwired:
description: Initiate a Radiotap Packet Capture and Wired Packet Capture
properties:
ap_mac:
example: 'null'
nullable: true
type: string
band:
default: '24'
description: only used for radiotap
enum:
- '24'
- '5'
- '6'
- 24,5,6
example: '24'
type: string
client_mac:
example: 38f9d3972ff1
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
format:
default: pcap
enum:
- pcap
- stream
example: stream
type: string
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 68
maximum: 2048
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
minimum: 0
type: integer
radiotap_tcpdump_expression:
description: tcpdump expression for radiotap interface (802.11 + radio headers)
example: type
type: string
ssid:
example: atest
nullable: true
type: string
tcpdump_expression:
description: tcpdump expression common for wired,radiotap
type: string
type:
default: radiotap,wired
type: string
wired_tcpdump_expression:
description: tcpdump expression for wired
example: tcp port 80
type: string
wireless_tcpdump_expression:
description: tcpdump expression for radiotap interface (802.11)
type: string
wlan_id:
description: wlan id associated with the respective ssid.
example: fac8e973-feb9-421a-b381-aabbc4b61f5a
nullable: true
type: string
required:
- type
title: capture_radiotapwired
type: object
capture_scan:
description: Initiate a Scan Radio Packet Capture
properties:
ap_mac:
description: filter by ap_mac
example: 'null'
nullable: true
type: string
aps:
additionalProperties:
description: Property key is the AP MAC address (e.g. "5c5b35000001").
All optionals, parent parameters will be used if not defined
properties:
band:
default: '24'
description: Only Single value allowed
enum:
- '24'
- '5'
- '6'
type: string
channel:
description: specify the channel value where scan PCAP has to be started
type: string
tcpdump_expression:
description: tcpdump expression, port specific if specified under
ports dict, otherwise applicable across ports if specified at top
level of payload. Port specific value overrides top level value
when both exist.
type: string
width:
description: specify the bandwidth value with respect to the channel.
type: string
type: object
description: "dictionary key is AP mac and value is a dictionary which contains\
\ key \u201Cband\u201D, \u201Cbandwidth\u201D, \u201Cchannel\u201D and\
\ \u201Ctcpdump_expression\u201D. In case keys are missed we will take\
\ parent value if parent values are not set we will use default value"
type: object
band:
default: '5'
description: Only Single value allowed, default value gets applied when
user provides wrong values
enum:
- '24'
- '5'
- '6'
example: '24'
nullable: true
type: string
bandwidth:
$ref: '#/components/schemas/dot11_bandwidth'
channel:
default: 1
description: specify the channel value where scan PCAP has to be started,
default value gets applied when user provides wrong values
example: 1
type: integer
client_mac:
description: filter by client mac
example: 38f9d3972ff1
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
minimum: 0
type: integer
format:
default: pcap
enum:
- pcap
- stream
example: stream
type: string
max_pkt_len:
default: 512
description: max_len of each packet to capture
example: 68
maximum: 2048
minimum: 0
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
type: integer
tcpdump_expression:
description: tcpdump expression, port specific if specified under ports
dict, otherwise applicable across ports if specified at top level of payload.
Port specific value overrides top level value when both exist.
example: tcp port 80
type: string
type:
enum:
- scan
example: scan
type: string
width:
description: specify the bandwidth value with respect to the channel.
type: string
required:
- type
title: capture_scan
type: object
capture_site:
oneOf:
- $ref: '#/components/schemas/capture_client'
- $ref: '#/components/schemas/capture_gateway'
- $ref: '#/components/schemas/capture_new_assoc'
- $ref: '#/components/schemas/capture_radiotap'
- $ref: '#/components/schemas/capture_radiotapwired'
- $ref: '#/components/schemas/capture_scan'
- $ref: '#/components/schemas/capture_switch'
- $ref: '#/components/schemas/capture_wired'
- $ref: '#/components/schemas/capture_wireless'
capture_switch:
description: Initiate a Switch (Junos) Packet Capture
properties:
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
minimum: 0
type: integer
format:
default: stream
enum:
- stream
type: string
max_pkt_len:
default: 512
description: max_len of each packet to capture
example: 1500
maximum: 2048
minimum: 128
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
type: integer
ports:
description: dict of port which uses port id as the key
items:
type: string
maxItems: 6
type: array
switches:
additionalProperties:
properties:
ports:
additionalProperties:
nullable: true
type: object
description: Property key is the interface name
type: object
type: object
description: Property key is the switch mac
type: object
tcpdump_expression:
description: tcpdump expression, port specific if specified under ports
dict, otherwise applicable across ports if specified at top level of payload.
Port specific value overrides top level value when both exist.
example: port 443
type: string
type:
enum:
- switch
example: switch
type: string
required:
- type
title: capture_switch
type: object
capture_wired:
description: Initiate a Wired Packet Capture
properties:
ap_mac:
example: 'null'
nullable: true
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
format:
default: pcap
description: pcap format
enum:
- pcap
- stream
type: string
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 68
maximum: 2048
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
type: integer
tcpdump_expression:
description: tcpdump expression
example: tcp port 80
nullable: true
type: string
type:
description: wired
enum:
- wired
example: wired
type: string
required:
- type
title: capture_wired
type: object
capture_wireless:
description: Initiate a Wireless Packet Capture
properties:
ap_mac:
example: 'null'
nullable: true
type: string
band:
default: '24'
enum:
- '24'
- '5'
- '6'
- 24,5,6
example: '24'
type: string
duration:
default: 600
description: duration of the capture, in seconds
example: 600
maximum: 86400
type: integer
format:
default: pcap
description: pcap format
enum:
- pcap
- stream
type: string
max_pkt_len:
default: 128
description: max_len of each packet to capture
example: 68
maximum: 2048
type: integer
num_packets:
default: 1024
description: number of packets to capture, 0 for unlimited
example: 100
type: integer
ssid:
type: string
type:
description: wireless
enum:
- wireless
example: wireless
type: string
wlan_id:
description: WLAN ID
format: uuid
type: string
required:
- type
title: capture_wireless
type: object
claim_activation:
properties:
code:
description: activation code
type: string
device_type:
description: if only intended to claim certain device type
enum:
- ap
- switch
- gateway
title: claim_device_type
type: string
type:
default: all
description: what to claim
enum:
- all
- license
- inventory
title: claim_type
type: string
required:
- code
- type
type: object
claim_codes:
description: List of Claim Codes
example:
- 6JG8E-PTFV2-A9Z2N
- DVH4V-SNMSZ-PDXBR
items:
description: claim code
type: string
title: claimcodes
type: array
uniqueItems: true
client_stats:
oneOf:
- $ref: '#/components/schemas/client_wireless_stats'
- $ref: '#/components/schemas/client_wired_stats'
client_stats_array:
items:
$ref: '#/components/schemas/client_stats'
type: array
client_wired_stats:
minItems: 1
properties:
_id:
minLength: 1
type: string
_ttl:
description: TTL of the validity of the stat
type: number
auth_state:
description: client authorization status
minLength: 1
type: string
device_id:
description: Device ID the client is connected to
minLength: 1
type: string
eth_port:
description: port on AP where the wired client is connected
minLength: 1
type: string
last_seen:
description: time when last Tx/Rx observed
type: number
mac:
description: client mac
minLength: 1
type: string
rx_bytes:
description: amount of traffic sent to client since client connects
type: number
rx_pkts:
description: amount of traffic sent to client since client connects
type: number
site_id:
$ref: '#/components/schemas/site_id'
tx_bytes:
description: "\tamount of traffic received from client since client connects"
type: number
tx_pkts:
description: amount of traffic received from client since client connects
type: number
uptime:
description: how long, in seconds, has the client been connected
type: number
vlan_id:
description: vlan id, could be empty
type: number
required:
- mac
type: object
uniqueItems: true
client_wireless_stats:
description: Client statistics
items:
properties:
_ttl:
description: TTL of the validity of the stat
type: number
accuracy:
description: estimated client location accuracy, in meter
type: integer
airespace_ifname:
type: string
airwatch:
description: information if airwatch enabled
properties:
authorized:
type: boolean
required:
- authorized
type: object
ap_id:
description: AP ID the client is connected to
format: uuid
type: string
ap_mac:
description: AP the client is connected to
type: string
band:
$ref: '#/components/schemas/dot11_band'
channel:
description: current channel
type: integer
dual_band:
description: "whether the client is dual-band capable (determined by whether\
\ we\u2019ve seen probe requests from both bands)"
type: boolean
family:
description: "device family, through fingerprinting. iPod / Nexus Galaxy\
\ / Windows Mobile or CE \u2026"
type: string
guest:
description: information about this portal
properties:
authorized:
default: false
description: whether this guest is authorized
type: boolean
authorized_expiring_time:
description: when the guest authorization will expire
type: number
authorized_time:
description: when the guest is authorized
type: number
company:
type: string
email:
type: string
field1:
type: string
name:
type: string
required:
- authorized
- authorized_expiring_time
- authorized_time
- company
- email
- field1
- name
title: client_wireless_stats_guest
type: object
hostname:
description: hostname that we learned from sniffing DHCP
type: string
idle_time:
description: how long, in seconds, has the client been idle (since the
last RX packet)
type: number
ip:
type: string
is_guest:
default: false
description: whether this is a guest
type: boolean
key_mgmt:
description: e.g. WPA2-PSK/CCMP
type: string
last_seen:
description: last seen timestamp
type: number
mac:
description: client mac
type: string
manufacture:
description: device manufacture, through fingerprinting or OUI
type: string
map_id:
description: estimated client location - map_id
format: uuid
type: string
model:
description: device model, may be available if we can identify them
type: string
num_locating_aps:
description: number of APs used to locate this client
type: integer
os:
description: device os, through fingerprinting
type: string
power_saving:
description: "if it\u2019s currently in power-save mode"
type: boolean
proto:
$ref: '#/components/schemas/dot11_proto'
psk_id:
description: PSK id (if multi-psk is used)
format: uuid
type: string
rssi:
description: signal strength
type: number
rssizones:
description: "list of rssizone_id\u2019s where client is in and since\
\ when (if known)"
items:
properties:
id:
format: uuid
type: string
since:
type: integer
type: object
title: client_wireless_stats_rssi_zones
type: array
rx_bps:
description: rate of receiving traffic from the clients, bits/seconds,
last known
type: number
rx_bytes:
description: amount of traffic received from client since client connects
type: number
rx_packets:
description: amount of traffic received from client since client connects
type: number
rx_rate:
description: RX Rate, Mbps
type: number
rx_retries:
description: amount of rx retries
type: number
snr:
description: signal over noise
type: number
ssid:
description: SSID the client is connected to
type: string
tx_bps:
description: rate of transmitting traffic to the clients, bits/seconds,
last known
type: number
tx_bytes:
description: amount of traffic sent to client since client connects
type: number
tx_packets:
description: amount of traffic sent to client since client connects
type: number
tx_rate:
description: TX Rate, Mbps
type: number
tx_retries:
description: amount of tx retries
type: number
type:
description: "client\u2019s type, regular / vip / resource / blocked (if\
\ client object is created)"
type: string
uptime:
description: how long, in seconds, has the client been connected
type: number
username:
description: username that we learned from 802.1X exchange or Per-user
PSK or User Portal
type: string
vbeacons:
description: "list of beacon_id\u2019s where the client is in and since\
\ when (if known)"
items:
properties:
id:
format: uuid
type: string
since:
type: integer
type: object
title: client_wireless_stats_vbeacons
type: array
vlan_id:
description: vlan id, could be empty (from older AP)
type: integer
wlan_id:
description: WLAN ID the client is connected to
format: uuid
type: string
wxrule_id:
description: current WxlanRule using for a Client or an authorized Guest
(portal user). null if default rule is matched.
format: uuid
type: string
wxrule_usage:
description: current WxlanRule usage per tag_id
items:
properties:
tag_id:
format: uuid
type: string
usage:
type: integer
type: object
title: client_wireless_stats_wxrule_usage
type: array
x:
description: estimated clinet location in pixels
type: number
x_m:
description: estimated client location in meter
type: number
y:
description: estimated clinet location in pixels
type: number
y_m:
description: estimated client location in meter
type: number
zones:
description: "list of zone_id\u2019s where client is in and since when\
\ (if known)"
items:
properties:
id:
format: uuid
type: string
since:
type: integer
type: object
title: client_wireless_stats_zones
type: array
required:
- _ttl
- ap_id
- ap_mac
- band
- channel
- dual_band
- family
- hostname
- idle_time
- ip
- is_guest
- key_mgmt
- last_seen
- mac
- manufacture
- model
- os
- power_saving
- proto
- rssi
- rx_bps
- rx_bytes
- rx_packets
- rx_rate
- rx_retries
- snr
- ssid
- tx_bps
- tx_bytes
- tx_packets
- tx_rate
- tx_retries
- uptime
- username
- wlan_id
type: object
minItems: 1
type: array
uniqueItems: true
client_wireless_stats_array:
items:
$ref: '#/components/schemas/client_wireless_stats'
type: array
clients_wan_stats:
properties:
When:
example: 2022-12-31T23:59:43.497+0000
type: string
hostname:
items:
example: sonoszp
type: string
type: array
ip:
items:
example: 192.168.1.139
type: string
type: array
last_hostname:
example: sonoszp
type: string
last_ip:
example: 192.168.1.139
type: string
mfg:
example: Sonos
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
wcid:
example: 8bbe7389-212b-c65d-2208-00fab2017936
type: string
type: object
coa_server:
description: CoA Server
properties:
disable_event_timestamp_check:
default: false
description: whether to disable Event-Timestamp Check
type: boolean
enabled:
default: false
type: boolean
ip:
example: 1.2.3.4
format: ipv4
type: string
port:
default: 3799
example: 3799
type: integer
secret:
example: testing456
type: string
required:
- ip
- secret
type: object
coa_servers:
description: list of COA (change of authorization) servers, optional
items:
$ref: '#/components/schemas/coa_server'
nullable: true
type: array
code:
properties:
code:
type: string
required:
- code
type: object
config_device:
anyOf:
- $ref: '#/components/schemas/ap'
- $ref: '#/components/schemas/switch'
- $ref: '#/components/schemas/gateway'
config_devices:
items:
$ref: '#/components/schemas/config_device'
type: array
config_switch:
description: Switch site settings
properties:
ap_affinity_threshold:
default: 10
description: ap_affinity_threshold ap_affinity_threshold can be added as
a field under site/setting. By default this value is set to 12. If the
field is set in both site/setting and org/setting, the value from site/setting
will be used.
type: integer
cli_banner:
description: Set Banners for switches. Allows markup formatting
example: \t\tWELCOME!
type: string
cli_idle_timeout:
description: Sets timeout for switches
maximum: 60
minimum: 1
type: integer
config_revert_timer:
default: 10
description: the rollback timer for commit confirmed
maximum: 30
minimum: 1
type: integer
dhcp_option_fqdn:
default: false
description: Enable to provide the FQDN with DHCP option 81
type: boolean
mxedge_proxy_host:
type: string
mxedge_proxy_port:
default: 2222
type: integer
protect_re:
$ref: '#/components/schemas/protect_re'
radius:
description: by default, `radius_config` will be used. if a different one
has to be used set `use_different_radius
properties:
enabled:
type: boolean
radius_config:
$ref: '#/components/schemas/junos_radius_config'
use_different_radius:
type: string
type: object
root_password:
type: string
tacacs:
$ref: '#/components/schemas/tacacs'
use_mxedge_proxy:
description: to use mxedge as proxy
type: boolean
type: object
const_alarm_definition:
properties:
display:
description: Description of the alarm type
example: Device offline
type: string
example:
example:
aps:
- d420b02000fa
count: 1
group: infrastructure
hostnames:
- Vendor_AP2
id: f70c308f-7007-4866-9ecd-0d01842979ea
last_seen: 1629753888
org_id: 09dac91f-6e73-4100-89f7-698e0fafbb1b
severity: warn
site_id: dcfb31a1-d615-4361-8c95-b9dde05aa704
timestamp: 1629753888
type: device_down
type: object
fields:
description: List of fields available in an alarm details payload (in REST
APIs & Webhooks); e.g. `aps`, `switches`, `gateways`, `hostnames`, `ssids`,
`bssids`
example:
- aps
- hostnames
items:
type: string
type: array
group:
description: Group to which the alarm belongs
example: infrastructure
type: string
key:
description: Key name of the alarm type
example: device_down
type: string
marvis_suggestion_category:
description: Marvis defined category to which the alarm belongs
type: string
severity:
description: Severity of the alarm
example: warn
type: string
required:
- key
- display
- group
- severity
- fields
title: ''
type: object
const_ap_channel:
properties:
band24_40mhz_allowed:
example: true
type: boolean
band24_channels:
additionalProperties:
items:
type: integer
type: array
description: Property key is the channel width
example:
'20':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
'40':
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
type: object
band24_enabled:
example: true
type: boolean
band5_channels:
additionalProperties:
items:
type: integer
type: array
description: Property key is the channel width
example:
'20':
- 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
'40':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
'80':
- 36
- 40
- 44
- 48
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
- 149
- 153
- 157
- 161
dfs:
- 52
- 56
- 60
- 64
- 100
- 104
- 108
- 112
- 116
- 120
- 124
- 128
- 132
- 136
- 140
- 144
outdoor:
- 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
type: object
band5_enabled:
example: true
type: boolean
band6_channels:
additionalProperties:
items:
type: integer
type: array
description: Property key is the channel width
example:
'160':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
'20':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
- 225
- 229
- 233
'40':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
- 225
- 229
'80':
- 1
- 5
- 9
- 13
- 17
- 21
- 25
- 29
- 33
- 37
- 41
- 45
- 49
- 53
- 57
- 61
- 65
- 69
- 73
- 77
- 81
- 85
- 89
- 93
- 97
- 101
- 105
- 109
- 113
- 117
- 121
- 125
- 129
- 133
- 137
- 141
- 145
- 149
- 153
- 157
- 161
- 165
- 169
- 173
- 177
- 181
- 185
- 189
- 193
- 197
- 201
- 205
- 209
- 213
- 217
- 221
psc:
- 5
- 21
- 37
- 53
- 69
- 85
- 101
- 117
- 133
- 149
- 165
- 181
- 197
- 213
- 229
type: object
band6_enabled:
example: true
type: boolean
certified:
example: true
type: boolean
code:
description: country code, ISO 3166-1 numeric
example: 840
type: integer
dfs_ok:
example: true
type: boolean
key:
description: country code, in two-character
example: US
type: string
name:
example: United States
type: string
uses:
example: US_FCC
type: string
type: object
const_ap_led:
properties:
code:
example: '01'
type: string
description:
example: LED not working
type: string
key:
example: LED_FAILURE
type: string
name:
example: LED Failure
type: string
required:
- code
- key
- name
- description
type: object
const_app_category_definition:
properties:
display:
description: Description of the app category
example: Images
type: string
filters:
example:
srx:
- Enhanced_Images_Media
- Enhanced_Web_Images
- Enhanced_Image_Servers
properties:
srx:
items:
type: string
type: array
ssr:
items:
type: string
type: array
type: object
includes:
description: List of other App Categories contained by this one
items:
type: string
type: array
key:
description: Key name of the app category
example: Images
type: string
required:
- key
- display
type: object
const_app_subcategory_definition:
properties:
display:
description: Description of the app subcategory
example: Office Document
type: string
key:
description: Key name of the app subcategory
example: Office_Documents
type: string
traffic_type:
description: Type of traffic (QoS) of the app subcategory
example: Images
type: string
required:
- key
- display
- traffic_type
type: object
const_country:
properties:
alpha2:
description: country code, in two-character
example: FR
type: string
certified:
example: true
type: boolean
name:
example: France
type: string
numeric:
description: country code, ISO 3166-1 numeric
example: 250
type: number
required:
- alpha2
- numeric
- name
- certified
type: object
const_device_ap:
properties:
ap_type:
example: jewel
type: string
band24:
properties:
band5_channels_op:
example: low
type: string
max_clients:
example: 128
type: integer
max_power:
example: 19
type: integer
min_power:
example: 8
type: integer
title: const_device_ap_band24
type: object
band24_usages:
example:
- '5'
items:
type: string
type: array
band5:
properties:
max_clients:
example: 128
type: integer
max_power:
example: 17
type: integer
min_power:
example: 8
type: integer
title: const_device_ap_band5
type: object
band6:
properties:
max_clients:
example: 128
type: integer
max_power:
example: 17
type: integer
min_power:
example: 8
type: integer
title: const_device_ap_band6
type: object
ce_dfs_ok:
example: true
type: boolean
cisco_pace:
type: boolean
description:
example: AP-45
type: string
disallowed_channels:
additionalProperties:
additionalProperties:
items:
type: integer
type: array
description: Property key is the RF band (e.g. "band5")
type: object
description: Property key is a list of country codes (e.g. "GB, DE")
title: const_device_ap_disallowed_channels
type: object
display:
example: AP45
type: string
extio:
additionalProperties:
properties:
default_dir:
enum:
- IN
- OUT
type: string
input:
type: boolean
output:
type: boolean
type: object
description: Property key is the GPIO port name (e.g. "D0", "A1")
title: const_device_ap_extio
type: object
fcc_dfs_ok:
example: true
type: boolean
has_11ax:
type: boolean
has_compass:
example: false
type: boolean
has_ext_ant:
type: boolean
has_extio:
example: false
type: boolean
has_height:
example: false
type: boolean
has_module_port:
type: boolean
has_poe_out:
example: true
type: boolean
has_scanning_radio:
example: true
type: boolean
has_selectable_radio:
example: true
type: boolean
has_usb:
type: boolean
has_vble:
example: true
type: boolean
has_wifi_band24:
example: true
type: boolean
has_wifi_band5:
example: true
type: boolean
has_wifi_band6:
example: true
type: boolean
max_poe_out:
example: 15400
type: integer
max_wlans:
type: integer
model:
example: AP45
type: string
other_dfs_ok:
example: true
type: boolean
outdoor:
type: boolean
radios:
additionalProperties:
type: string
description: Property key is the radio number (e.g. r0, r1, ...). Property
value is the RF band (e.g. "24", "5", ...)
example:
r0: '6'
r1: '5'
r2: '24'
title: const_device_ap_radios
type: object
shared_scanning_radio:
type: boolean
type:
default: ap
type: string
unmanaged:
type: boolean
vble:
properties:
beacon_rate:
example: 4
type: integer
beams:
example: 9
type: integer
power:
example: 8
type: integer
title: const_device_ap_vble
type: object
title: const_device_ap
type: object
const_device_gateway:
properties:
defaults:
additionalProperties:
description: list of interfaces names (e.g. "ge-0/0/3,ge-1/0/3")
type: string
description: Object Key is the interface type name (e.g. "lan_ports", "wan_ports",
...)
title: const_device_gateway_defaults
type: object
description:
type: string
experimental:
default: false
type: boolean
fans_pluggable:
default: true
type: boolean
ha_node0_fpc:
type: integer
ha_node1_fpc:
type: integer
has_bgp:
default: false
type: boolean
has_fxp0:
default: true
type: boolean
has_ha_control:
default: false
type: boolean
has_ha_data:
default: false
type: boolean
has_irb:
default: false
type: boolean
has_poe_out:
default: true
type: boolean
has_snapshot:
default: true
type: boolean
irb_disabled_by_default:
default: false
type: boolean
model:
type: string
number_fans:
type: integer
oc_device:
default: false
type: boolean
pic:
additionalProperties:
description: list of type and number of ports (e.g. "mge*8, ge*16")
type: string
description: Object Key is the PIC number
title: const_device_gateway_pic
type: object
ports:
description: Object Key is the interface name (e.g. "ge-0/0/1", ...)
properties:
display:
type: string
pci_address:
type: string
speed:
type: integer
title: const_device_gateway_ports
type: object
sub_required:
type: string
t128_device:
default: false
type: boolean
type:
default: gateway
type: string
title: const_device_gateway
type: object
const_device_switch:
properties:
alias:
example: EX4100-48P-CHAS
type: string
defaults:
properties:
_ports:
example: ge-0/0/0-47, et-0/1/0-3, xe-0/2/0-3, ge-0/2/0-3
type: string
title: const_device_switch_default
type: object
description:
example: Juniper EX4100 Series
type: string
display:
example: EX4100-48P
type: string
evolved_os:
default: false
type: boolean
evpn_ri_type:
example: mac-vrf
type: string
experimental:
default: false
type: boolean
fans_pluggable:
default: false
example: true
type: boolean
has_bgp:
default: false
example: true
type: boolean
has_ets:
default: false
type: boolean
has_evpn:
default: false
example: true
type: boolean
has_irb:
default: false
example: true
type: boolean
has_poe_out:
default: false
example: true
type: boolean
has_snapshot:
default: true
type: boolean
has_vc:
default: true
example: true
type: boolean
model:
example: EX4100-48P
type: string
modular:
default: false
type: boolean
no_shaping_rate:
default: false
type: boolean
number_fans:
example: 2
type: integer
oc_device:
default: false
example: true
type: boolean
oob_interface:
example: re0:mgmt-0, re1:mgmt-0
type: string
packet_action_drop_only:
default: false
type: boolean
pic:
additionalProperties:
description: list of type and number of ports (e.g. "mge*8, ge*16")
type: string
description: Object Key is the PIC number
example:
'0': ge*48
'1': qsfp+*4
'2': sfp+*4 (uplink)
title: const_device_switch_pic
type: object
sub_required:
type: string
type:
default: switch
type: string
title: const_device_switch
type: object
const_device_unknown:
properties:
ap_type:
type: string
description:
type: string
display:
type: string
has_extio:
type: boolean
has_vble:
type: boolean
has_wifi_band24:
type: boolean
has_wifi_band5:
type: boolean
model:
type: string
unmanaged:
type: boolean
type: object
const_event:
properties:
description:
type: string
display:
type: string
example:
additionalProperties: true
type: object
key:
type: string
required:
- key
- display
type: object
const_gateway_applications_definition:
items:
properties:
app_id:
example: true
type: boolean
key:
example: 4shared
type: string
name:
example: 4shared
type: string
ssr_app_id:
example: true
type: boolean
type: object
type: array
const_language:
properties:
display:
example: English (US)
type: string
display_native:
example: English (US)
type: string
key:
example: en-US
type: string
required:
- display
- display_native
- key
title: const_language
type: object
const_license_type:
properties:
description:
example: Wired Assurance 12
type: string
includes:
example:
- sub_ex12a
- sub_ex12p
items:
type: string
type: array
key:
example: sub_ex12
type: string
name:
example: SUB-EX12
type: string
title: const_license_type
type: object
const_mxedge_model:
properties:
custom_ports:
type: boolean
display:
example: X10
type: string
model:
example: ME-X10
type: string
ports:
additionalProperties:
properties:
display:
example: xe0
type: string
speed:
example: 10000
type: integer
title: const_mxedge_model_port
type: object
type: object
title: const_mxedge_model
type: object
const_nac_events:
properties:
ap:
example: 5c5b355008c0
type: string
bssid:
example: 5c5b35548892
type: string
cert_cn:
example: suriyas
type: string
cert_expiry:
example: 1711557441
type: integer
cert_issuer:
example: /DC=net/DC=jnpr/CN=Juniper Networks Issuing AWS1 CA
type: string
cert_san_upn:
example:
- suriyas@juniper.net
items:
type: string
type: array
cert_serial:
example: 1300103d29e56ef083797bedc2000100103d29
type: string
cert_subject:
example: /CN=suriyas/emailAddress=suriyas@juniper.net
type: string
eap_type:
example: EAP-TLS
type: string
nas_vendor:
example: Mist
type: string
org_id:
$ref: '#/components/schemas/org_id'
random_mac:
example: true
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
ssid:
example: Test_Suriya-SSID
type: string
timestamp:
example: 1685658478.438995
type: number
type:
example: NAC_CLIENT_CERT_CHECK_SUCCESS
type: string
username:
example: suriyas@juniper.net
type: string
wcid:
example: b43637b0-f0d9-0a1d-1ec2-73c394a9f679
format: uuid
type: string
type: object
const_traffic_type:
properties:
display:
example: VoIP Video
type: string
dscp:
example: 32
type: integer
failover_policy:
example: non_revertible
type: string
max_jitter:
example: 250
type: integer
max_latency:
example: 1500
type: integer
max_loss:
example: 35
type: integer
name:
example: voip_video
type: string
traffic_class:
example: medium
type: string
type: object
count_results:
items:
additionalProperties:
type: string
properties:
count:
type: integer
required:
- count
type: object
minItems: 1
type: array
uniqueItems: true
cpu_stat:
properties:
idle:
description: Percentage of CPU time that is idle
type: number
interrupt:
description: Percentage of CPU time being used by interrupts
type: number
load_avg:
description: Load averages for the last 1, 5, and 15 minutes
items:
title: cpu_stat_load_avg
type: object
type: array
system:
description: Percentage of CPU time being used by system processes
type: number
user:
description: Percentage of CPU time being used by user processe
type: number
type: object
day_of_week:
enum:
- any
- mon
- tue
- wed
- thu
- fri
- sat
- sun
type: string
days_number:
properties:
days:
default: 30
type: integer
type: object
delivery:
description: Delivery object to configure the alarm delivery
properties:
additional_emails:
description: List of additional email string to deliver the alarms via emails
items:
example: john@mycorp.com
type: string
type: array
enabled:
description: Whether to enable the alarm delivery via emails or not
example: true
type: boolean
to_org_admins:
description: Whether to deliver the alarms via emails to Org admins or not
example: true
type: boolean
to_site_admins:
description: Whether to deliver the alarms via emails to Site admins or
not
example: false
type: boolean
required:
- enabled
type: object
device_id:
properties:
device_id:
format: uuid
type: string
required:
- device_id
type: object
device_other:
properties:
created_time:
type: integer
device_mac:
type: string
id:
type: string
mac:
type: string
model:
type: string
modified_time:
type: integer
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
serial:
type: string
site_id:
$ref: '#/components/schemas/site_id'
vendor:
type: string
type: object
device_other_stats:
properties:
config_status:
example: synced
type: string
last_config:
example: 1675392788
type: integer
last_seen:
example: 1675843629
type: integer
mac:
example: 5c5b35000018
type: string
status:
example: online
type: string
uptime:
example: 20296
type: integer
vendor:
example: cradlepoint
type: string
vendor_specific:
description: when `vendor`==`cradlepoint`
properties:
ports:
additionalProperties:
properties:
bytes_in:
type: integer
bytes_out:
type: integer
health_category:
type: string
health_score:
type: integer
id:
type: string
mode:
type: string
model:
type: string
state:
type: string
type:
type: string
uptime:
type: number
type: object
example:
mdm-4d0e073b:
bytes_in: 33004879
bytes_out: 41103393
health_category: ''
health_score: 0
id: '101027967'
mode: wan
model: Internal 5GB (SIM1)
state: READY
type: 5G
uptime: 252371.34149021498
type: object
target_version:
example: 7.23.40
type: string
type: object
version:
example: 7.22.70
type: string
type: object
device_stats:
anyOf:
- $ref: '#/components/schemas/ap_stats'
- $ref: '#/components/schemas/switch_stats'
- $ref: '#/components/schemas/gateway_stats'
device_stats_array:
items:
$ref: '#/components/schemas/device_stats'
type: array
device_type:
default: ap
enum:
- ap
- switch
- gateway
type: string
device_type_with_all:
default: ap
enum:
- ap
- switch
- gateway
- all
type: string
device_upgrade:
properties:
reboot:
default: false
description: Reboot device immediately after upgrade is completed (Available
on Junos OS devices)
type: boolean
snapshot:
default: false
description: Perform recovery snapshot after device is rebooted (Available
on Junos OS devices)
type: boolean
version:
default: stable
description: specific version / `stable`, default is to use the latest
type: string
required:
- version
type: object
device_upgrade_info:
properties:
counts:
properties:
download_requested:
description: count of devices which cloud has requested to download
firmware
type: integer
downloaded:
description: "count of ap\u2019s which have the firmware downloaded"
type: integer
failed:
description: count of devices which have failed to upgrade
type: integer
reboot_in_progress:
description: count of devices which are rebooting
type: integer
rebooted:
description: count of devices which have rebooted successfully
type: integer
scheduled:
description: count of devices which cloud has scheduled an upgrade for
type: integer
skipped:
description: count of devices which skipped upgrade since requested
version was same as running version. Use force to always upgrade
type: integer
total:
description: count of devices part of this upgrade
type: integer
upgraded:
description: count of devices which have upgraded successfully
type: integer
readOnly: true
type: object
current_phase:
description: current canary or rrm phase in progress
type: integer
enable_p2p:
description: whether to allow local AP-to-AP FW upgrade
type: boolean
force:
description: whether to force upgrade when requested version is same as
running version
type: boolean
id:
description: unique id for the upgrade
format: uuid
minLength: 1
readOnly: true
type: string
max_failure_percentage:
description: percentage of failures allowed
type: integer
max_failures:
description: number of failures allowed within a canary phase or serial
rollout
items:
type: integer
type: array
reboot_at:
description: reboot start time in epoch
type: integer
start_time:
description: firmware download start time in epoch
type: number
status:
description: status upgrade is in
enum:
- created
- completed
- canceled
- downloading
title: device_upgrade_status
type: string
strategy:
$ref: '#/components/schemas/device_upgrade_strategy'
target_version:
description: version to upgrade to
minLength: 1
type: string
upgrade_plan:
description: a dictionary of rrm phase number to devices part of that phase
type: object
required:
- id
title: device_upgrade_info
type: object
device_upgrade_org_multi:
properties:
canary_phases:
default:
- 1
- 10
- 50
- 100
description: "phases for canary deployment. Each phase represents percentage\
\ of AP\u2019s that need to be upgraded. default is [1, 10, 50, 100]"
items:
type: integer
type: array
enable_p2p:
description: whether to allow local AP-to-AP FW upgrade
type: boolean
force:
default: false
description: true will force upgrade when requested version is same as running
version
type: boolean
max_failure_percentage:
default: 5
description: percentage of failures allowed across the entire upgrade(not
applicable for `big_bang`)
maximum: 100
minimum: 0
type: number
max_failures:
description: number of failures allowed within each phase(applicable for
`canary` or `rrm`). Will be used if provided, else max_failure_percentage
will be used
items:
type: integer
type: array
models:
items:
type: string
type: array
p2p_cluster_size:
default: 10
example: 0
minimum: 0
type: integer
p2p_parallelism:
description: number of parallel p2p download batches to creat
type: integer
reboot:
default: false
description: Reboot device immediately after upgrade is completed (Available
on Junos OS devices)
type: boolean
reboot_at:
description: reboot start time in epoch seconds, default is `start_time`
example: 1624399840
type: number
rrm_first_batch_percentage:
description: "percentage of AP\u2019s that need to be present in the first\
\ rrm batch"
example: 2
type: integer
rrm_max_batch_percentage:
description: "max percentage of AP\u2019s that need to be present in each\
\ rrm batch"
example: 10
type: integer
rrm_mesh_upgrade:
description: "sequential or parallel (default parallel). Whether to upgrade\
\ mesh AP\u2019s parallelly or sequentially at the end of the upgrade"
type: string
rrm_node_order:
default: fringe_to_center
description: "Used in rrm to determine whether to start upgrade from fringe\
\ or center AP\u2019s"
enum:
- fringe_to_center
- center_to_fringe
type: string
rrm_slow_ramp:
description: true will make rrm batch sizes slowly ramp up
type: boolean
site_ids:
items:
format: uuid
type: string
type: array
snapshot:
default: false
description: Perform recovery snapshot after device is rebooted (Available
on Junos OS devices)
type: boolean
start_time:
description: upgrade start time in epoch seconds, default is now
example: 1624399840
type: number
strategy:
$ref: '#/components/schemas/device_upgrade_strategy'
version:
default: latest
description: specific version / stable
example: 3.1.5
type: string
title: device_upgrade_org_multi
type: object
device_upgrade_site_multi:
properties:
canary_phases:
default:
- 1
- 10
- 50
- 100
description: "phases for canary deployment. Each phase represents percentage\
\ of AP\u2019s that need to be upgraded. default is [1, 10, 50, 100]"
items:
type: integer
type: array
device_ids:
items:
format: uuid
type: string
type: array
enable_p2p:
description: whether to allow local AP-to-AP FW upgrade
type: boolean
force:
default: false
description: true will force upgrade when requested version is same as running
version
type: boolean
max_failure_percentage:
default: 5
description: percentage of failures allowed across the entire upgrade(not
applicable for `big_bang`)
maximum: 100
minimum: 0
type: number
max_failures:
description: number of failures allowed within each phase(applicable for
`canary` or `rrm`). Will be used if provided, else max_failure_percentage
will be used
items:
type: integer
type: array
models:
items:
type: string
type: array
p2p_cluster_size:
default: 10
example: 0
minimum: 0
type: integer
p2p_parallelism:
description: number of parallel p2p download batches to creat
type: integer
reboot:
default: false
description: Reboot device immediately after upgrade is completed (Available
on Junos OS devices)
type: boolean
reboot_at:
description: reboot start time in epoch seconds, default is `start_time`
example: 1624399840
type: number
rrm_first_batch_percentage:
description: "percentage of AP\u2019s that need to be present in the first\
\ rrm batch"
example: 2
type: integer
rrm_max_batch_percentage:
description: "max percentage of AP\u2019s that need to be present in each\
\ rrm batch"
example: 10
type: integer
rrm_mesh_upgrade:
description: "sequential or parallel (default parallel). Whether to upgrade\
\ mesh AP\u2019s parallelly or sequentially at the end of the upgrade"
type: string
rrm_node_order:
default: fringe_to_center
description: "Used in rrm to determine whether to start upgrade from fringe\
\ or center AP\u2019s"
enum:
- fringe_to_center
- center_to_fringe
type: string
rrm_slow_ramp:
description: true will make rrm batch sizes slowly ramp up
type: boolean
snapshot:
default: false
description: Perform recovery snapshot after device is rebooted (Available
on Junos OS devices)
type: boolean
start_time:
description: upgrade start time in epoch seconds, default is now
example: 1624399840
type: number
strategy:
$ref: '#/components/schemas/device_upgrade_strategy'
version:
default: latest
description: specific version / stable
example: 3.1.5
type: string
title: device_upgrade_site_multi
type: object
device_upgrade_strategy:
default: big_bang
description: '`big_bang` (upgrade all at once), `serial` (one at a time), `canary`
or `rrm`'
enum:
- big_bang
- canary
- serial
- rrm
type: string
deviceprofile:
anyOf:
- $ref: '#/components/schemas/deviceprofile_ap'
- $ref: '#/components/schemas/gateway_template'
deviceprofile_ap:
description: Device Profile
minItems: 1
properties:
aeroscout:
$ref: '#/components/schemas/ap_aeroscout'
ble_config:
$ref: '#/components/schemas/ap_ble'
created_time:
readOnly: true
type: number
disable_eth1:
default: false
description: whether to disable eth1 port
type: boolean
disable_eth2:
default: false
description: whether to disable eth2 port
type: boolean
disable_eth3:
default: false
description: whether to disable eth3 port
type: boolean
disable_module:
default: false
description: whether to disable module port
type: boolean
esl_config:
$ref: '#/components/schemas/ap_esl_config'
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
iot_config:
$ref: '#/components/schemas/ap_iot'
ip_config:
$ref: '#/components/schemas/ap_ip_config'
led:
$ref: '#/components/schemas/ap_led'
mesh:
$ref: '#/components/schemas/ap_mesh'
modified_time:
readOnly: true
type: number
name:
nullable: true
type: string
ntp_servers:
items:
type: string
type: array
org_id:
$ref: '#/components/schemas/org_id'
poe_passthrough:
default: false
description: whether to enable power out through module port (for APH) or
eth1 (for APL/BT11)
type: boolean
port_config:
additionalProperties:
$ref: '#/components/schemas/ap_port_config'
description: Property key is the interface(s) name (e.g. "eth1,eth2")
type: object
pwr_config:
$ref: '#/components/schemas/ap_pwr_config'
radio_config:
$ref: '#/components/schemas/ap_radio'
site_id:
$ref: '#/components/schemas/site_id'
switch_config:
$ref: '#/components/schemas/ap_switch'
type:
default: ap
enum:
- ap
- switch
- gateway
title: device_profile_ap_type
type: string
uplink_port_config:
$ref: '#/components/schemas/ap_uplink_port_config'
usb_config:
$ref: '#/components/schemas/ap_usb'
vars:
$ref: '#/components/schemas/vars'
type: object
uniqueItems: true
discovered_switch_metric:
properties:
details:
type: object
org_id:
$ref: '#/components/schemas/org_id'
scope:
example: site
type: string
score:
example: 100
type: integer
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
example: 1675193400
type: integer
type:
example: inactive_wired_vlans
type: string
type: object
discovered_switch_metrics:
items:
$ref: '#/components/schemas/discovered_switch_metric'
type: array
dot11_band:
enum:
- '24'
- '5'
- '6'
type: string
dot11_bandwidth:
default: 20
description: 'channel width for the band, 20 / 40 / 80 / 160
`80` is only applicable for band_5 and band_6
`160` is only for band_6'
enum:
- 20
- 40
- 80
- 160
example: 20
type: integer
dot11_proto:
enum:
- a
- b
- g
- n
- ac
- ax
type: string
dynamic_port_usage:
description: This is a special mode where the actually usage is determined by
a set of rules the port will start with `access` mode and isolated depending
on the rules, if resolved, the port will have the resolved usage applied.
properties:
mode:
$ref: '#/components/schemas/ip_config_type'
reset_default_when:
default: link_down
description: 'Control when the DPC port should be changed to the default
port usage
Configuring to none will let the DPC port keep at the current port usage.'
enum:
- none
- link_down
example: link_down
type: string
rules:
items:
$ref: '#/components/schemas/dynamic_port_usage_rule'
type: array
required:
- mode
title: ''
type: object
dynamic_port_usage_rule:
properties:
equals:
type: string
equals_any:
description: use `equals_any` to match any item in a list
items:
type: string
type: array
expression:
description: '"[0:3]":"abcdef" -> "abc"
"split(.)[1]": "a.b.c" -> "b"
"split(-)[1][0:3]: "a1234-b5678-c90" -> "b56"'
type: string
src:
enum:
- lldp_chassis_id
- lldp_system_name
- lldp_serial_number
- lldp_hardware_revision
- lldp_manufacturer_name
- lldp_oui
- radius_username
- radius_usermac
- radius_dynamicfilter
- link_peermac
type: string
usage:
description: '`port_usage` name'
type: string
required:
- src
type: object
email:
properties:
email:
format: email
type: string
required:
- email
title: email
type: object
error_delete_failed:
properties:
detail:
example: inventory not empty
type: string
org_id:
example: 24f6eca-7276-4993-bfeb-53cbbbba6f05
format: uuid
type: string
required:
- detail
- org_id
type: object
event_nac_client:
properties:
ap:
example: 5c5b35513227
type: string
auth_type:
description: "authentication type, e.g. \u201Ceap-tls\u201D, \u201Ceap-ttls\u201D\
, \u201Ceap-teap\u201D, \u201Cmab\u201D, \u201Cpsk\u201D, \u201Cdevice-auth\u201D"
example: eap-tls
type: string
bssid:
example: 5c5b355fafcc
type: string
device_mac:
type: string
dryrun_nacrule_id:
description: NAC Policy Dry Run Rule ID, if present and matched
example: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264012
format: uuid
type: string
dryrun_nacrule_matched:
type: boolean
idp_id:
example: 912ef72e-2239-4996-b81e-469e87a27cd6
format: uuid
type: string
idp_role:
example:
- itsuperusers
- vip
items:
type: string
type: array
mac:
description: Client MAC address
example: ac3eb179e535
type: string
mxedge_id:
description: Mist Edge ID used to connect to cloud
type: string
nacrule_id:
description: NAC Policy Rule ID, if matched
example: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264c62
format: uuid
type: string
nacrule_matched:
example: true
type: boolean
nas_vendor:
example: juniper-mist
type: string
org_id:
$ref: '#/components/schemas/org_id'
port_id:
type: string
port_type:
description: Type of client i.e wired, wireless
type: string
random_mac:
example: false
type: boolean
resp_attrs:
example:
- Tunnel-Type=VLAN
- Tunnel-Medium-Type=IEEE-802
- Tunnel-Private-Group-Id=750
- User-Name=anonymous
items:
type: string
type: array
site_id:
$ref: '#/components/schemas/site_id'
ssid:
example: mist_nac
type: string
timestamp:
example: 1691512031.358188
type: number
type:
description: event type, e.g. NAC_CLIENT_PERMIT
example: NAC_CLIENT_PERMIT
type: string
username:
description: Username presented by the client
example: user@deaflyz.net
type: string
vlan:
description: Vlan ID
example: '750'
type: string
type: object
event_nac_clients:
items:
$ref: '#/components/schemas/event_nac_client'
type: array
event_otherdevice:
properties:
device_mac:
type: string
mac:
example: 5c5b351e13b5
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
text:
example: 'Plugged: The Internal 5GB (SIM1) has been inserted into Internal
1.'
type: string
timestamp:
example: 547235620.89
type: number
type:
example: CELLULAR_EDGE_MODEM_WAN_PLUGGED
type: string
vendor:
example: cradlepoint
type: string
type: object
events_client:
description: client events
properties:
ap:
type: string
band:
$ref: '#/components/schemas/dot11_band'
bssid:
type: string
channel:
type: integer
proto:
$ref: '#/components/schemas/dot11_proto'
ssid:
type: string
text:
type: string
timestamp:
type: number
type:
description: event type, e.g. MARVIS_EVENT_CLIENT_FBT_FAILURE
type: string
type_code:
description: for assoc/disassoc events
type: integer
wlan_id:
format: uuid
type: string
required:
- proto
- timestamp
- band
type: object
events_client_wan:
properties:
When:
example: '2022-12-31T23:59:59.293Z'
type: string
ev_type:
example: CLIENT_IP_ASSIGNED
type: string
metadata:
type: object
org_id:
$ref: '#/components/schemas/org_id'
random_mac:
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
text:
example: DHCP Ack IP 192.168.88.216
type: string
wcid:
example: 62bbfb75-10d8-49d1-dec7-d2df91624287
format: uuid
type: string
type: object
events_device_ap:
description: ap events
properties:
last_reboot_time:
type: number
text:
type: string
timestamp:
type: number
type:
type: string
type_code:
type: integer
required:
- timestamp
type: object
events_rogue:
description: rogue events
properties:
ap:
type: string
bssid:
type: string
channel:
type: integer
rssi:
type: integer
ssid:
type: string
timestamp:
type: number
required:
- ssid
- bssid
- timestamp
- ap
- rssi
- channel
type: object
events_skyatp:
description: SkyATP events
properties:
device_mac:
readOnly: true
type: string
for_site:
readOnly: true
type: boolean
ip:
readOnly: true
type: string
mac:
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
threat_level:
readOnly: true
type: integer
timestamp:
readOnly: true
type: number
type:
readOnly: true
type: string
required:
- mac
- threat_level
- device_mac
- timestamp
- org_id
- site_id
- type
- ip
type: object
gateway:
description: device gateway
properties:
additional_config_cmds:
items:
type: string
type: array
created_time:
readOnly: true
type: number
deviceprofile_id:
format: uuid
type: string
dhcpd_config:
$ref: '#/components/schemas/junos_dhcpd'
extra_routes:
$ref: '#/components/schemas/gateway_extra_route'
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
image1_url:
type: string
image2_url:
type: string
image3_url:
type: string
ip_config:
$ref: '#/components/schemas/gateway_ip_config'
managed:
type: boolean
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
name:
type: string
networks:
additionalProperties:
properties:
vlan_id:
type: integer
type: object
description: Property key is the network name or a CIDR
minProperties: 0
type: object
ntp_servers:
items:
type: string
type: array
oob_ip_config:
$ref: '#/components/schemas/junos_oob_ip_config'
org_id:
$ref: '#/components/schemas/org_id'
port_config:
additionalProperties:
$ref: '#/components/schemas/gateway_port_config'
description: Property key is the port name or range (e.g. "ge-0/0/0-10")
type: object
port_mirroring:
properties:
port_mirror:
properties:
family_type:
type: string
ingress_port_ids:
items:
example: ge-0/0/3
type: string
type: array
output_port_id:
example: ge-0/0/5
type: string
rate:
type: integer
run_length:
minimum: 0
type: integer
type: object
type: object
site_id:
$ref: '#/components/schemas/site_id'
vars:
$ref: '#/components/schemas/vars'
type: object
gateway_cluster_form:
properties:
nodes:
items:
properties:
mac:
description: when replacing a noce, either mac has to remain the same
as existing cluster
minLength: 1
type: string
required:
- mac
title: gateway_cluster_node
type: object
minItems: 1
type: array
uniqueItems: true
required:
- nodes
type: object
gateway_cluster_swap:
properties:
mac:
description: "when `op`\_==`replacement_nodeX`, new node1\n's MAC, the device\
\ has to be standalone and assigned to the same site"
type: string
op:
default: swap
enum:
- swap
- replace_node1
minLength: 1
title: gateway_cluster_swap_operation
type: string
required:
- op
type: object
gateway_extra_route:
additionalProperties:
description: Property key is the destination CIDR (e.g. "10.0.0.0/8")
properties:
via:
format: ipv4
type: string
type: object
example:
0.0.0.0/0:
via: 192.168.1.10
type: object
gateway_ip_config:
additionalProperties:
properties:
ip:
format: ipv4
type: string
netmask:
example: /24
type: string
secondary_ips:
description: optional list of secondary IPs in CIDR format
example:
- 192.168.50.1/24
- 192.168.60.1/26
items:
type: string
type: array
type: object
description: Property key is the network name
type: object
gateway_matching:
description: Gateway matching
properties:
enable:
type: boolean
rules:
items:
additionalProperties:
description: 'property key define the type of matchine. e.g: `match_name[0:3]`,
`match_model[0-6]` or `match_role`'
type: string
properties:
additional_config_cmds:
items:
type: string
type: array
name:
type: string
port_config:
additionalProperties:
$ref: '#/components/schemas/junos_port_config'
type: object
type: object
minItems: 1
type: array
uniqueItems: true
type: object
gateway_port_config:
description: Gateway port config
properties:
description:
type: string
disable_autoneg:
default: false
type: boolean
disabled:
default: false
description: port admin up (true) / down (false)
type: boolean
dsl_type:
default: vdsl
description: if `wan_type`==`lte`
enum:
- vdsl
- adsl
type: string
dsl_vci:
default: 35
description: 'if `wan_type`==`dsl`
16 bit int'
type: integer
dsl_vpi:
default: 0
description: 'if `wan_type`==`dsl`
8 bit int'
type: integer
duplex:
default: auto
enum:
- half
- full
- auto
example: full
type: string
ip_config:
$ref: '#/components/schemas/junos_ip_config_gateway'
lte_apn:
description: if `wan_type`==`lte`
type: string
lte_auth:
default: none
description: if `wan_type`==`lte`
enum:
- none
- chap
- pap
type: string
lte_backup:
type: boolean
lte_password:
description: if `wan_type`==`lte`
type: string
lte_username:
description: if `wan_type`==`lte`
type: string
mtu:
type: integer
name:
description: name that we'll use to derive config
type: string
networks:
description: if `usage`==`lan`
items:
type: string
type: array
outer_vlan_id:
description: for Q-in-Q
type: integer
poe_disabled:
default: false
type: boolean
port_network:
description: if `usage`==`lan`
type: string
preserve_dscp:
default: true
description: whether to preserve dscp when sending traffic over VPN (SSR-only)
type: boolean
redundant:
description: if HA mode
type: boolean
reth_idx:
description: if HA mode
type: integer
reth_node:
description: if HA mode
type: string
reth_nodes:
description: SSR only - supporting vlan-based redundancy (matching the size
of `networks`)
example:
- node0
- node1
items:
type: string
type: array
speed:
default: auto
example: 1g
type: string
ssr_no_virtual_mac:
default: false
description: when SSR is running as VM, this is required on certain hosting
platforms
type: boolean
svr_port_range:
default: none
description: for SSR only
example: 60000-60005
type: string
traffic_shaping:
properties:
class_percentages:
description: 'percentages for differet class of traffic: high / medium
/ low / best-effort
sum must be equal to 100'
items:
type: integer
type: array
enabled:
default: false
type: boolean
type: object
usage:
description: port usage name
enum:
- lan
- wan
- ha_data
- ha_control
type: string
vlan_id:
description: if WAN interface is on a VLAN
type: integer
vpn_paths:
additionalProperties:
properties:
bfd_profile:
default: broadband
enum:
- lte
- broadband
type: string
bfd_use_tunnel_mode:
default: false
description: whether to use tunnel mode. SSR only
type: boolean
role:
default: spoke
enum:
- spoke
- hub
type: string
traffic_shaping:
properties:
class_percentage:
description: 'percentages for differet class of traffic: high
/ medium / low / best-effort
sum must be equal to 100'
items:
type: integer
type: array
enabled:
type: boolean
max_tx_kbps:
type: integer
type: object
type: object
properties:
preference:
description: for a given VPN, when path_selection.strategy=simple, the
preference for a path (lower is preferred)
type: integer
type: object
wan_ext_ip:
description: optional, if spoke should reach this port by a different IP
type: string
wan_source_nat:
description: optional, by default, source-NAT is performed on all WAN Ports
using the interface-ip
properties:
disabled:
default: false
description: or to disable the source-nat
type: boolean
nat_pool:
description: if alternative nat_pool is desired
example: 64.2.4.0/30
type: string
type: object
wan_type:
default: broadband
description: if `usage`==`wan`
enum:
- broadband
- dsl
- lte
type: string
required:
- usage
type: object
gateway_routing_policy:
properties:
terms:
description: zero or more criteria/filter can be specified to match the
term, all criteria have to be met
items:
properties:
action:
description: when used as import policy
properties:
accept:
type: boolean
add_community:
items:
example: '65003:10'
type: string
type: array
add_target_vrfs:
description: for SSR, hub decides how VRF routes are leaked on
spoke
items:
type: string
type: array
community:
description: when used as export policy, optional
items:
example: '65003:10'
type: string
type: array
exclude_as_path:
description: when used as export policy, optional. To exclude
certain AS
items:
example: '65002'
type: string
type: array
exclude_community:
items:
example: '65003:10'
type: string
type: array
export_communitites:
description: when used as export policy, optional
items:
type: string
type: array
local_preference:
description: optional, for an import policy, local_preference
can be changed
type: string
prepend_as_path:
description: when used as export policy, optional. By default,
the local AS will be prepended, to change it
items:
example: '65003'
type: string
type: array
type: object
matching:
description: zero or more criteria/filter can be specified to match
the term, all criteria have to be met
properties:
as_path:
description: takes regular expression
items:
example: '65001'
type: string
type: array
community:
items:
example: '65001:2'
type: string
type: array
network:
items:
type: string
type: array
prefix:
description: zero or more criteria/filter can be specified to
match the term, all criteria have to be met
items:
example: 192.168.0.0/16-30
type: string
type: array
protocol:
description: '`direct`, `bgp`, `osp`, ...'
items:
example: direct
type: string
type: array
route_exists:
properties:
route:
example: 192.168.0.0/24
type: string
vrf_name:
default: default
description: 'name of the vrf instance
it can also be the name of the VPN or wan if they'
type: string
type: object
vpn_neighbor_mac:
description: overlay-facing criteria (used for bgp_config where
via=vpn)
items:
type: string
type: array
vpn_path:
description: 'overlay-facing criteria (used for bgp_config where
via=vpn)
ordered-'
items:
type: string
type: array
vpn_path_sla:
properties:
max_jitter:
nullable: true
type: integer
max_latency:
example: 1500
nullable: true
type: integer
max_loss:
example: 30
nullable: true
type: integer
type: object
type: object
title: gateway_routing_policy_action
type: object
type: array
uniqueItems: true
type: object
gateway_search:
properties:
ext_ip:
type: string
hostname:
items:
type: string
type: array
ip:
type: string
last_hostname:
type: string
mac:
type: string
model:
type: string
num_members:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: number
type:
type: string
uptime:
type: integer
version:
type: string
type: object
gateway_stats:
description: Gateway statistics
properties:
cluster_stat:
additionalProperties:
properties:
status:
type: string
type: object
type: object
cpu2_stat:
$ref: '#/components/schemas/cpu_stat'
cpu_stat:
$ref: '#/components/schemas/cpu_stat'
hostname:
description: hostname reported by the device
example: sj1
type: string
ip:
description: IP address
example: 10.2.11.137
type: string
ip_stat:
$ref: '#/components/schemas/ip_stat'
last_seen:
description: last seen timestamp
example: 1553203563
type: number
mac:
description: device mac
example: dc38e1dbf3cd
type: string
memory_stat:
$ref: '#/components/schemas/memory_stat'
model:
description: device model
example: SRX320
type: string
module2_stat:
items:
$ref: '#/components/schemas/module_stat'
minItems: 1
type: array
uniqueItems: true
module_stat:
items:
$ref: '#/components/schemas/module_stat'
minItems: 1
type: array
uniqueItems: true
name:
description: device name if configured
example: sj1
type: string
serial:
description: serial
example: TC3714190003
type: string
spu2_stat:
$ref: '#/components/schemas/gateway_stats_spu_stat'
spu_stat:
$ref: '#/components/schemas/gateway_stats_spu_stat'
status:
example: connected
type: string
type:
example: gateway
type: string
uptime:
example: 3671219
type: number
version:
example: 18.4R1.8
type: string
required:
- mac
type: object
gateway_stats_spu_stat:
properties:
spu_cpu:
example: 3670632
type: integer
spu_current_session:
example: 215
type: number
spu_max_session:
example: 131072
type: number
spu_memory:
example: 46
type: integer
spu_pending_session:
example: 0
type: number
spu_valid_session:
example: 0
type: number
type: object
gateway_template:
description: Gateway Template is applied to a site for gateway(s) in a site.
properties:
additional_config_cmds:
items:
type: string
type: array
bgp_config:
additionalProperties:
$ref: '#/components/schemas/junos_bgp_config'
type: object
created_time:
readOnly: true
type: number
dhcpd_config:
$ref: '#/components/schemas/junos_dhcpd'
extra_routes:
$ref: '#/components/schemas/gateway_extra_route'
gateway_matching:
$ref: '#/components/schemas/gateway_matching'
id:
format: uuid
readOnly: true
type: string
idp_profiles:
description: Property key is the profile name
properties:
additionalProperties:
$ref: '#/components/schemas/idp_profile'
type: object
ip_configs:
$ref: '#/components/schemas/gateway_ip_config'
modified_time:
readOnly: true
type: number
name:
example: gw_template
type: string
networks:
description: additional networks that are not already defined from Networks
items:
$ref: '#/components/schemas/network'
type: array
oob_ip_config:
$ref: '#/components/schemas/junos_oob_ip_config'
org_id:
$ref: '#/components/schemas/org_id'
path_preferences:
additionalProperties:
$ref: '#/components/schemas/gateway_template_path_preferences'
description: Property key is the path name
type: object
port_config:
additionalProperties:
$ref: '#/components/schemas/gateway_port_config'
description: Property key is the port(s) name or range (e.g. "ge-0/0/0-10")
type: object
router_id:
description: auto assigned if not set
example: 10.2.1.10
type: string
routing_policies:
additionalProperties:
$ref: '#/components/schemas/gateway_routing_policy'
description: Property key is the routing policy name
type: object
service_policies:
$ref: '#/components/schemas/service_policies'
tunnel_configs:
additionalProperties:
$ref: '#/components/schemas/gateway_template_tunnel_configs'
description: Property key is the tunnel name
type: object
tunnel_provider_options:
$ref: '#/components/schemas/gateway_template_tunnel_proivder'
type:
default: standalone
enum:
- standalone
- spoke
- hub
example: standalone
title: gateway_template_type
type: string
required:
- name
type: object
gateway_template_path_preferences:
properties:
paths:
items:
properties:
cost:
type: integer
disabled:
description: For SSR Only. `true`` if this specific path is undesired
type: boolean
gateway_ip:
description: if `type`==`local`, if a different gateway is desired
type: string
internet_access:
default: false
description: when `type`==`vpn`, if this vpn path can be used for
internet
type: boolean
name:
type: string
networks:
description: if `type`==`local`
items:
type: string
type: array
target_ips:
description: if `type`==`local`, if destination IP is to be replaced
items:
type: string
type: array
type:
enum:
- local
- wan
- vpn
- tunnel
title: gateway_path_type
type: string
wan_name:
description: Spoke's outgoing wan
example: wan0
type: string
title: gateway_template_path_preferences_path
type: object
type: array
strategy:
default: ordered
enum:
- ordered
- weighted
- ecmp
title: gateway_path_strategy
type: string
type: object
gateway_template_tunnel_configs:
properties:
auto_provision:
properties:
enable:
type: boolean
latlng:
$ref: '#/components/schemas/lat_lng'
primary:
properties:
num_hosts:
type: string
wan_names:
description: optional, only needed if `vars_only`==`false`
items:
example: wan0
type: string
type: array
title: gateway_template_tunnel_auto_provision_primary
type: object
region:
default: auto
enum:
- auto
- EMEA
- Americas
- APAC
title: gateway_template_tunnel_auto_provision_region
type: string
secondary:
properties:
num_hosts:
type: string
wan_names:
description: optional, only needed if `vars_only`==`false`
items:
example: wan0
type: string
type: array
title: gateway_template_tunnel_auto_provision_secondary
type: object
type: object
ike_lifetime:
description: 'Only if:
* `provider`== `custom-ipsec`'
type: integer
ike_mode:
default: main
description: 'Only if:
* `provider`== `custom-ipsec`'
enum:
- main
- aggressive
title: gateway_template_tunnel_ike_mode
type: string
ike_proposals:
description: if `provider`== `custom-ipsec`
items:
properties:
auth_algo:
enum:
- sha1
- sha2
- md5
title: gateway_template_tunnel_ike_auth_algo
type: string
dh_group:
default: '14'
description: "* 1 \n* 2 (1024-bit) \n* 5\n* 14 (default, 2048-bit)\n\
* 15 (3072-bit) \n* 16 (4096-bit)\n* 19 (256-bit ECP)\n* 20 (384-bit\
\ ECP)\n* 21 (521-bit ECP) \n* 24 (2048-bit ECP)"
enum:
- '1'
- '2'
- '5'
- '14'
- '15'
- '16'
- '19'
- '20'
- '21'
- '24'
title: gateway_template_tunnel_ike_dh_group
type: string
enc_algo:
default: aes256
enum:
- aes256
- 3des
- aes128
- aes_gcm256
- aes_gcm128
nullable: true
title: gateway_template_tunnel_ike_enc_algo
type: string
title: gateway_template_tunnel_ike_proposal
type: object
type: array
ipsec_lifetime:
description: if `provider`== `custom-ipsec`
type: integer
ipsec_proposals:
description: 'Only if:
* `provider`== `custom-ipsec`'
items:
properties:
auth_algo:
enum:
- sha1
- sha2
- md5
title: gateway_template_tunnel_ipsec_auth_algo
type: string
dh_group:
default: '14'
description: "Only if:\n* `provider`== `custom-ipsec`\nValues:\n*\
\ 1 \n* 2 (1024-bit) \n* 5\n* 14 (default, 2048-bit) \n* 15 (3072-bit)\
\ \n* 16 (4096-bit)\n* 19 (256-bit ECP)\n* 20 (384-bit ECP)\n* 21\
\ (521-bit ECP) \n* 24 (2048-bit ECP)"
enum:
- '1'
- '2'
- '5'
- '14'
- '15'
- '16'
- '19'
- '20'
- '21'
- '24'
title: gateway_template_tunnel_ipsec_dh_group
type: string
enc_algo:
default: aes256
enum:
- aes256
- 3des
- aes128
- aes_gcm128
- aes_gcm256
nullable: true
title: gateway_template_tunnel_ipsec_enc_algo
type: string
title: gateway_template_tunnel_ipsec_proposal
type: object
type: array
local_id:
description: 'Only if:
* `provider`== `zscaler-ipsec`
* `provider`==`jse-ipsec`
* `provider`== `custom-ipsec`'
type: string
mode:
default: active-standby
enum:
- active-standby
- active-active
title: gateway_template_tunnel_mode
type: string
primary:
properties:
hosts:
items:
description: IP Address of the remote host
type: string
type: array
internal_ips:
description: "Only if:\n* `provider`== `zscaler-gre` \n* `provider`==\
\ `custom-gre`"
items:
type: string
type: array
probe_ips:
items:
type: string
type: array
remote_ids:
description: 'Only if:
* `provider`== `custom-ipsec`'
items:
type: string
type: array
wan_names:
items:
type: string
type: array
title: gateway_template_tunnel_primary
type: object
probe:
description: 'Only if:
* `provider`== `custom-ipsec`'
properties:
interval:
description: how often to trigger the probe
type: integer
threshold:
description: number of consecutive misses before declaring the tunnel
down
type: integer
timeout:
description: time within which to complete the connectivity check
type: integer
type:
default: icmp
enum:
- icmp
- http
title: gateway_template_probe_type
type: string
type: object
protocol:
description: 'Only if:
* `provider`== `custom-ipsec`'
enum:
- ipsec
- gre
title: gateway_template_tunnel_protocol
type: string
provider:
enum:
- zscaler-ipsec
- zscaler-gre
- customer-gre
- jse-ipsec
- custom-ipsec
title: gateway_template_tunnel_provider
type: string
psk:
description: 'Only if:
* `provider`== `zscaler-ipsec`
* `provider`==`jse-ipsec`
* `provider`== `custom-ipsec`'
type: string
secondary:
properties:
hosts:
items:
description: IP Address of the remote host
type: string
type: array
internal_ips:
description: 'Only if:
* `provider`== `custom-ipsec`'
items:
type: string
type: array
probe_ips:
items:
type: string
type: array
remote_ids:
description: "Only if: \n* `provider`== `custom-ipsec`"
items:
type: string
type: array
wan_names:
items:
type: string
type: array
title: gateway_template_tunnel_secondary
type: object
version:
default: '2'
description: "Only if:\n* `provider`== `custom-gre` \n* `provider`== `custom-ipsec`"
enum:
- '1'
- '2'
title: gateway_template_tunnel_version
type: string
title: gateway_template_tunnel_configs
type: object
gateway_template_tunnel_proivder:
properties:
jse:
description: for jse-ipsec, this allow provisioning of adequate resource
on JSE. Make sure adequate licenses are added
properties:
name:
example: JSE_ORG1
type: string
num_users:
example: 5
type: integer
type: object
zscalar:
description: for zscaler-ipsec and zscaler-gre
properties:
aup_acceptance_required:
default: true
type: boolean
aup_expire:
default: 1
description: days before AUP is requested again
type: integer
aup_ssl_proxy:
default: false
description: proxy HTTPs traffic, requiring Zscaler cert to be installed
in browser
type: boolean
download_mbps:
description: the download bandwidth cap of the link, in Mbps
example: 200
type: integer
enable_aup:
default: false
description: if `use_xff`==`true`, display Acceptable Use Policy (AUP)
type: boolean
enable_caution:
default: false
description: when `enforce_authentication`==`false`, display caution
notification for non-authenticated users
type: boolean
enforce_authentication:
default: false
type: boolean
name:
example: guest-wifi
type: string
sub_locations:
description: if `use_xff`==`true`
items:
properties:
aup_acceptance_required:
default: true
type: boolean
aup_expire:
default: 1
description: days before AUP is requested again
type: integer
aup_ssl_proxy:
default: false
description: proxy HTTPs traffic, requiring Zscaler cert to be
installed in browser
type: boolean
download_mbps:
description: the download bandwidth cap of the link, in Mbps
example: 200
type: integer
enable_aup:
description: if `use_xff`==`true`, display Acceptable Use Policy
(AUP)
type: boolean
enable_caution:
default: false
description: when `enforce_authentication`==`false`, display caution
notification for non-authenticated users
type: boolean
enforce_authentication:
default: false
type: boolean
subnets:
example:
- 172.16.8.0/24
- 172.16.32.0/23
items:
type: string
type: array
upload_mbps:
description: the download bandwidth cap of the link, in Mbps
example: 200
type: integer
type: object
type: array
upload_mbps:
description: the download bandwidth cap of the link, in Mbps
example: 200
type: integer
use_xff:
description: location uses proxy chaining to forward traffic
type: boolean
type: object
type: object
guest:
description: Guest
properties:
authorized:
description: whether the guest is current authorized
type: boolean
authorized_expiring_time:
description: when the authorization would expire
example: 1480704955
type: integer
authorized_time:
description: when the guest was authorized
example: 1480704355
type: integer
company:
description: optional, the info provided by user
example: abc
type: string
email:
description: optional, the info provided by user
example: john@abc.com
format: email
type: string
field1:
description: optional, the info provided by user
type: string
field2:
type: string
field3:
type: string
field4:
type: string
mac:
description: mac
type: string
minutes:
description: minutes, the maximum is 259200 (180 days)
type: integer
name:
description: optional, the info provided by user
example: John Smith
type: string
ssid:
example: Guest-SSID
readOnly: true
type: string
wlan_id:
example: 6748cfa6-4e12-11e6-9188-0242ac110007
format: uuid
readOnly: true
type: string
type: object
ha_cluster_config:
properties:
disable_auto_config:
description: if the device is claimed
type: boolean
managed:
description: if the device is adopted
type: boolean
nodes:
items:
maxProperties: 2
properties:
mac:
description: node mac, should be unassigned
example: aff827549235
type: string
title: cluster_node
type: object
type: array
site_id:
$ref: '#/components/schemas/site_id'
type: object
ha_cluster_delete:
properties:
mac:
description: node0 mac address
example: aff827549235
type: string
type: object
ha_cluster_node:
properties:
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
type: object
ha_cluster_node_enum:
description: only for HA
enum:
- node0
- node1
type: string
idp_config:
properties:
alert_only:
type: string
enabled:
default: false
type: boolean
idpprofile_id:
description: org-level IDP Profile can be used, this takes precedence over
`profile`
example: 89b9d208-84a4-fa8f-af57-78f92c639cf2
format: uuid
type: string
profile:
default: strict
description: '`strict` (default) / `standard` / or keys from from idp_profiles'
type: string
type: object
idp_profile:
properties:
base_profile:
enum:
- strict
- standard
example: strict
title: idp_profile_base_profile
type: string
created_time:
readOnly: true
type: integer
id:
example: 874ca978-d736-4d4b-bc90-a49a29eec133
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: integer
name:
example: relaxed
type: string
overwrites:
items:
properties:
action:
default: alert
description: "- alert (default) \n- drop: siliently dropping packets\n\
- close: notify client/server to close connection"
enum:
- alert
- drop
- close
example: alert
title: idp_profile_action
type: string
matching:
properties:
attack_name:
items:
example: HTTP:INVALID:HDR-FIELD
type: string
type: array
dst_subnet:
items:
example: 63.1.2.0/24
type: string
type: array
severity:
items:
enum:
- critical
- major
- minor
- info
example: major
title: idp_profile_matching_severity
type: string
type: array
title: idp_profile_matching
type: object
title: idp_profile_overwrite
type: object
type: array
type: object
image_import:
properties:
file:
description: binary file
format: binary
type: string
json:
description: JSON string describing your upload
type: string
required:
- file
title: image_upload
type: object
insight_metrics:
properties:
end:
type: integer
interval:
type: integer
results:
description: results depends on the `metric`
items:
type: object
type: array
uniqueItems: true
start:
type: integer
required:
- end
- interval
- results
- start
type: object
installer_device:
properties:
connected:
example: true
type: boolean
deviceprofile_name:
example: SJ1
type: string
ext_ip:
example: 12.34.56.78
type: string
height:
example: 2.7
type: number
ip:
example: 192.168.1.111
type: string
last_seen:
example: 1687887907.5919843
type: number
mac:
example: 5c5b35000018
type: string
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
model:
example: AP41
type: string
name:
example: hallway
type: string
orientation:
example: 90
type: number
serial:
example: FXLH2015150025
type: string
site_name:
example: SJ1
type: string
uptime:
example: 12345
type: integer
vc_mac:
example: null
nullable: true
type: string
version:
example: 0.10.24362
type: string
x:
example: 150
type: number
y:
example: 300
type: number
title: installer_device
type: object
installer_list:
properties:
id:
example: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
format: uuid
type: string
name:
example: 'Entry #1'
type: string
type: object
installer_provision_device:
description: Provision Device
properties:
deviceprofile_name:
example: SJ1
type: string
for_site:
readOnly: true
type: boolean
height:
example: 2.7
type: number
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
name:
example: SJ1-AP1
type: string
orientation:
example: 90
type: number
replacing_mac:
description: Onlif this is to replace an existing device
example: 5c5b3500003
type: string
role:
description: optional role for switch / gateway
type: string
site_id:
$ref: '#/components/schemas/site_id'
site_name:
example: SJ1
type: string
x:
example: 150
type: number
y:
example: 300
type: number
required:
- name
type: object
installer_site:
properties:
address:
example: 1601 S. Deanza Blvd., Cupertino, CA, 95014
type: string
country_code:
example: US
type: string
id:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
readOnly: true
type: string
latlng:
$ref: '#/components/schemas/lat_lng'
name:
example: Mist Office
type: string
rftemplate_name:
example: rftemplate1
type: string
sitegroup_names:
example:
- sg1
- sg2
items:
type: string
type: array
timezone:
example: America/Los_Angeles
type: string
required:
- address
- country_code
- latlng
- name
title: installer_site
type: object
integers:
items:
type: integer
type: array
inventory:
properties:
adopted:
description: 'only if `type`==`switch` or `type`==`gateway`
whether the switch/gateway is adopted'
type: boolean
connected:
description: whether the device is connected
type: boolean
created_time:
description: inventory created time, in epoch
type: integer
deviceprofile_id:
description: deviceprofile id if assigned, null if not assigned
nullable: true
type: string
hostname:
description: hostname reported by the device
type: string
hw_rev:
description: device hardware revision number
type: string
id:
description: device id
type: string
jsi:
type: boolean
mac:
description: device MAC address
type: string
magic:
description: device claim code
type: string
model:
description: device model
type: string
modified_time:
description: inventory last modified time, in epoch
type: integer
name:
description: device name if configured
type: string
org_id:
$ref: '#/components/schemas/org_id'
serial:
description: device serial
type: string
site_id:
$ref: '#/components/schemas/site_id'
sku:
description: device stock keeping unit
type: string
type:
description: device type
enum:
- ap
- switch
- gateway
type: string
type: object
inventory_update:
properties:
disable_auto_config:
default: false
description: if `op`==`assign`, a **cloud-ready** switch/gateway will be
managed/configured by Mist by default, this disabled the behavior
type: boolean
macs:
description: if `op`==`assign`, `op`==`unassign`, `op`==`manage`or `op`==`unmanage`
, list of MAC, e.g. ["5c5b350e0001"]
items:
type: string
type: array
managed:
default: false
description: if `op`==`assign`, an **adopted** switch/gateway will not be
managed/configured by Mist by default, this enables the behavior
type: boolean
no_reassign:
description: if `op`==`assign`, if true, treat site assignment against an
already assigned AP as error
type: boolean
op:
description: '* if `op`== `upgrade_to_mist`: Upgrade to mist-managed
* if `op`== `downgrade_to_jsi`: Downgrade to basic monitoring. When downgrading
a VC member to jsi, we will move the cloud connection of the VC to jsi-terminator
and keep all VC device/inventories intact for pain-free upgrading back
to mist.
* if `op`== `assign`: Assign inventory to a site
* if `op`== `unassign`: Unassign inventory to a site
* if `op`== `delete`: Delete multiple inventory from org. If the device
is already assigned to a site, it will be unassigned.'
enum:
- assign
- unassign
- delete
- upgrade_to_mist
- downgrade_to_jsi
title: inventory_update_operation
type: string
serials:
description: if `op`==`delete`, list of serial numbers, e.g. ["FXLH2015150025"]
items:
type: string
type: array
site_id:
description: if `op`==`assign`, target site id
format: uuid
type: string
required:
- op
type: object
ip_config_type:
default: dynamic
enum:
- static
- dynamic
type: string
ip_stat:
properties:
dns:
items:
type: string
type: array
dns_suffix:
items:
type: string
type: array
gateway:
type: string
gateway6:
type: string
ip:
type: string
ip6:
type: string
ips:
additionalProperties:
description: Property key is the VLAN name
type: string
type: object
netmask:
type: string
netmask6:
type: string
type: object
ip_type:
default: dhcp
enum:
- static
- dhcp
example: static
type: string
junos_acl_policies:
description: '- for GBP-based policy, all src_tags and dst_tags have to be gbp-based
- for ACL-based policy, `network` is required in either the source or destination
so that we know where to attach the policy to'
properties:
actions:
description: '- for GBP-based policy, all src_tags and dst_tags have to
be gbp-based
- for ACL-based policy, `network` is required in either the source or
destination so that we know where to attach the policy to'
items:
properties:
action:
$ref: '#/components/schemas/allow_deny'
dst_tag:
example: corp
type: string
title: junos_acl_policy_action
type: object
type: array
name:
example: guest access
type: string
src_tags:
description: '- for GBP-based policy, all src_tags and dst_tags have to
be gbp-based
- for ACL-based policy, `network` is required in either the source or
destination so that we know where to attach the policy to'
items:
example: macs
type: string
type: array
type: object
junos_acl_tags:
properties:
gbp_tag:
description: 'required if
- `type`==`dynamic_gbp` (gbp_tag received from RADIUS)
- `type`==`static_gbp` (applying gbp tag against matching conditions)'
type: number
macs:
description: "required if \n- `type`==`mac`\n- `type`==`static_gbp` if from\
\ matching mac"
items:
type: string
type: array
network:
description: 'if:
- `type`==`mac` (optional. default is `any`)
- `type`==`subnet` (optional. default is `any`)
- `type`==`network`
- `type`==`resource` (optional. default is `any`)
- `type`==`static_gbp` if from matching network (vlan)'
type: string
radius_group:
description: "required if \n- `type`==`radius_group` \n- `type`==`static_gbp`\
\ if from matching radius_group"
type: string
specs:
description: 'if `type`==`resource`
empty means unrestricted, i.e. any'
items:
properties:
port_range:
default: 0
description: matched dst port, "0" means any
type: integer
protocol:
default: any
description: '`tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`.
`protocol_number` is between 1-254'
type: string
type: object
type: array
subnets:
description: "if \n- `type`==`subnet` \n- `type`==`resource` (optional.\
\ default is `any`)\n- `type`==`static_gbp` if from matching subnet"
items:
type: string
type: array
type:
enum:
- mac
- subnet
- network
- radius_group
- any
- resource
- dynamic_gbp
- static_gbp
title: junos_acl_tag_type
type: string
required:
- type
type: object
junos_bgp_config:
description: BFD is enabled when either bfd_minimum_interval or bfd_multiplier
is configured
properties:
auth_key:
type: string
bfd_minimum_interval:
default: 350
description: 'when bfd_multiplier is configured alone
default:
* 1000 if `type`==`external``
* 350 `type`==`internal`'
maximum: 255000
minimum: 1
nullable: true
type: integer
bfd_multiplier:
default: 3
description: when bfd_minimum_interval_is_configured alone
maximum: 255
minimum: 1
nullable: true
type: integer
communities:
items:
properties:
id:
type: string
local_preference:
type: integer
vpn_name:
type: string
title: junos_bgp_community
type: object
type: array
disable_bfd:
default: false
description: BFD provides faster path failure detection and is enabled by
default
type: boolean
export:
type: string
export_policy:
description: default export policies if no per-neighbor policies defined
type: string
graceful_restart_time:
default: 0
description: '`0` means disable'
maximum: 4095
minimum: 0
type: integer
hold_time:
default: 90
maximum: 65535
minimum: 0
type: integer
import:
type: string
import_policy:
description: default import policies if no per-neighbor policies defined
type: string
local_as:
type: integer
neighbor_as:
type: integer
neighbors:
additionalProperties:
properties:
disabled:
default: false
description: If true, the BGP session to this neighbor will be administratively
disabled/shutdown
type: boolean
export_policy:
type: string
hold_time:
default: 90
maximum: 65535
minimum: 0
type: integer
import_policy:
type: string
multihop_ttl:
description: assuming BGP neighbor is directly connected
maximum: 255
minimum: 0
type: integer
neighbor_as:
type: integer
type: object
description: if per-neighbor as is desired. Property key is the neighbor
address
title: junos_bgp_neighbor
type: object
networks:
description: if `type`!=`external`or `via`==`wan`networks where we expect
BGP neighbor to connect to/from
items:
type: string
type: array
no_readvertise_to_overlay:
default: false
description: by default, we'll re-advertise all learned BGP routers toward
overlay
type: boolean
type:
enum:
- internal
- external
minLength: 1
title: junos_bgp_type
type: string
via:
default: lan
description: network name
enum:
- lan
- wan
title: junos_bgp_via
type: string
vpn_name:
type: string
wan_name:
description: if `via`==`wan`
type: string
type: object
junos_dhcp_snooping:
properties:
all_networks:
type: boolean
enable_arp_spoof_check:
description: Enable for dynamic ARP inspection check
type: boolean
enable_ip_source_guard:
description: Enable for check for forging source IP address
type: boolean
enabled:
type: boolean
networks:
description: if `all_networks`==`false`, list of network with DHCP snooping
enabled
items:
type: string
type: array
type: object
junos_dhcpd:
additionalProperties:
properties:
disabled:
default: false
description: when defined in template, this allows device to override
type: boolean
dns_servers:
description: if `type`==`local` - optional, if not defined, system one
will be used
items:
type: string
type: array
dns_suffix:
description: if `type`==`local` - optional, if not defined, system one
will be used
items:
type: string
type: array
fixed_bindings:
additionalProperties:
properties:
ip:
type: string
name:
type: string
type: object
description: Property key is the MAC Address
type: object
gateway:
description: if `type`==`local` - optional, `ip` will be used if not provided
type: string
ip_end:
description: if `type`==`local`
type: string
ip_start:
description: if `type`==`local`
type: string
options:
additionalProperties:
properties:
type:
enum:
- string
- boolean
- ip
- hex
- int16
- int32
- uint16
- uint32
type: string
value:
type: string
type: object
description: Property key is the DHCP option number
type: object
server_id_override:
default: false
description: "`server_id_override`==`true` means the device, when acts\
\ as DHCP relay and forwards DHCP responses from DHCP server to clients,\
\ \nshould overwrite the Sever Identifier option (i.e. DHCP option 54)\
\ in DHCP responses with its own IP address."
type: boolean
servers:
description: if `type`==`relay`
items:
type: string
type: array
type:
default: local
description: DHCP Server (local) or DHCP Relay (relay)
enum:
- local
- relay
title: junos_dhcp_type
type: string
vendor_encapulated:
additionalProperties:
properties:
type:
enum:
- string
- boolean
- ip
- hex
- int16
- int32
- uint16
- uint32
type: string
value:
type: string
type: object
description: 'Property key is :, with
* enterprise number: 1-65535 (https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers)
* sub option code: 1-255, sub-option code'
type: object
type: object
description: if DHCP Server/Relay is intended. Property key is the network name
properties:
enabled:
type: boolean
type: object
junos_evpn_config:
description: EVPN Junos settings
properties:
enabled:
type: boolean
role:
enum:
- core
- distribution
- access
type: string
type: object
junos_evpn_options:
description: EVPN Options
properties:
auto_loopback_subnet:
description: optional, for dhcp_relay, unique loopback IPs are required
for ERB or IPClos where we can set option-82 server-id-overrides
example: 100.101.0.0/24
type: string
auto_router_id_subnet:
description: optional, this generates router_id automatically, if specified,
`router_id_prefix` is ignored
example: 100.100.0.0/24
type: string
core_as_border:
default: false
description: 'optional, for ERB or CLOS, you can either use esilag to upstream
routers or to also be the virtual-gateway
when `routed_at` != `core`, whether to do virtual-gateway at core as well'
type: boolean
overlay:
properties:
as:
default: 65000
description: optional, these are defaults
example: 65000
type: integer
type: object
per_vlan_vga_v4_mac:
default: false
description: 'by default, JUNOS uses 00-00-5e-00-01-01 as the virtual-gateway-address''s
v4-mac
if enabled, 00-00-5e-00-XX-YY will be used (where XX=vlan_id/256, YY=vlan_id%256)'
type: boolean
routed_at:
default: edge
description: optional, where virtual-gateway should reside
enum:
- edge
- core
- distribution
type: string
underlay:
properties:
as_base:
example: 65001
type: integer
routed_id_prefix:
example: /24
type: string
subnet:
example: 10.255.240.0/20
type: string
type: object
vs_instances:
additionalProperties:
properties:
networks:
items:
type: string
type: array
type: object
description: optional, for EX9200 only to seggregate virtual-switches
example:
guest:
networks:
- guest
iot:
networks:
- iot-wifi
- iot-lan
type: object
type: object
junos_evpn_topology:
properties:
config:
$ref: '#/components/schemas/config_switch'
id:
example: 9197ec96-4c8d-529f-c595-035895e688b2
format: uuid
readOnly: true
type: string
name:
example: CC
type: string
overwrite:
type: boolean
pod_names:
additionalProperties:
type: string
description: Property key is the pod number
type: object
switches:
items:
properties:
config:
$ref: '#/components/schemas/switch'
deviceprofile_id:
example: 6a1deab1-96df-4fa2-8455-d5253f943d06
format: uuid
readOnly: true
type: string
downlinks:
items:
example: 5c5b35000007
readOnly: true
type: string
readOnly: true
type: array
esilaglinks:
items:
example: 5c5b3500000f
readOnly: true
type: string
type: array
evpn_id:
minimum: 1
readOnly: true
type: integer
mac:
example: 5c5b35000003
minLength: 1
type: string
model:
type: string
pod:
default: 1
description: "optionally, for distribution / access / esilag-access,\
\ they can be placed into different pods.\ne.g. \n* for CLOS, to\
\ group dist / access switches into pods\n* for ERB/CRB, to group\
\ dist / esilag-access into pods"
maximum: 255
minimum: 1
type: integer
pods:
description: "by default, core switches are assumed to be connecting\
\ all pods. \nif you want to limit the pods, you can specify pods."
items:
type: integer
type: array
role:
description: use `role`==`none` to remove a switch from the topology
enum:
- core
- distribution
- access
- collapsed-core
- none
- esilag-access
minLength: 1
title: EVPN Role
type: string
site_id:
$ref: '#/components/schemas/site_id'
suggested_downlinks:
example:
- 5c5b35000005
- 5c5b35000006
items:
type: string
readOnly: true
type: array
suggested_esilaglinks:
example:
- 5c5b35000005
- 5c5b35000006
items:
type: string
readOnly: true
type: array
suggested_uplinks:
example:
- 5c5b35000005
- 5c5b35000006
items:
type: string
readOnly: true
type: array
uplinks:
description: if not specified in the request, suggested ones will
be used
items:
example: 5c5b35000005
readOnly: true
type: string
readOnly: true
type: array
title: junos_evpn_topology_switch
type: object
type: array
uniqueItems: true
required:
- switches
title: junos_evpn_topology
type: object
junos_ip_config:
description: Junos IP Config
properties:
dns:
items:
type: string
type: array
dns_suffix:
items:
type: string
type: array
gateway:
type: string
ip:
type: string
netmask:
description: used only if `subnet` is not specified in `networks`
type: string
network:
description: the network where this mgmt IP reside, this will be used as
default network for outbound-ssh, dns, ntp, dns, tacplus, radius, syslog,
snmp
type: string
type:
$ref: '#/components/schemas/ip_config_type'
use_mgmt_vrf:
default: false
description: for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP)
type: boolean
type: object
junos_ip_config_gateway:
description: Junos IP Config
properties:
dns:
description: except for out-of-band interface (vme/em0/fxp0)
items:
type: string
type: array
dns_suffix:
description: except for out-of-band interface (vme/em0/fxp0)
items:
type: string
type: array
gateway:
description: except for out-of-band interface (vme/em0/fxp0)
type: string
ip:
type: string
netmask:
description: used only if `subnet` is not specified in `networks`
type: string
network:
description: optional, the network to be used for mgmt
type: string
poser_password:
description: if `type`==`pppoe`
type: string
ppoe_username:
description: if `type`==`pppoe`
type: string
pppoe_auth:
default: none
description: if `type`==`pppoe`
enum:
- none
- chap
- pap
title: gateway_wan_ppoe_auth
type: string
type:
default: dhcp
enum:
- dhcp
- static
- ppoe
title: gateway_wan_type
type: string
type: object
junos_networks:
description: A network represents a network segment. It can either represent
a VLAN (then usually ties to a L3 subnet), optionally associate it with a
subnet which can later be used to create addition routes. Used for ports doing
`family ethernet-switching`. It can also be a pure L3-subnet that can then
be used against a port that with `family inet`.
properties:
dns:
items:
type: string
type: array
dns_suffix:
items:
type: string
type: array
gateway:
type: string
isolation:
default: false
description: 'whether to stop clients to talk to each other, default is
false (when enabled, a unique isolation_vlan_id is required)
NOTE: this features requires uplink device to also a be Juniper device
and `inter_switch_link` to be set'
type: boolean
isolation_vlan_id:
example: '3070'
type: string
ospf_interface_type:
type: string
subnet:
description: optional for pure switching, required when L3 / routing features
are used
type: string
vlan_id:
type: integer
zone:
description: used for gateway
type: string
required:
- vlan_id
type: object
junos_oob_ip_config:
additionalProperties:
description: '- If HA configuration: key parameter will be nodeX (eg: node1)
- If there are 2 routing engines, re1 mgmt IP has to be set separately (if
desired): key parameter = `re1`'
properties:
ip:
type: string
netmask:
description: used only if `subnet` is not specified in `networks`
type: string
network:
description: optional, the network to be used for mgmt
type: string
type:
$ref: '#/components/schemas/ip_config_type'
type: object
description: Junos out-of-band (vme/em0/fxp0) IP config
properties:
dns:
items:
type: string
type: array
dns_suffix:
items:
type: string
type: array
gateway:
type: string
ip:
type: string
netmask:
description: used only if `subnet` is not specified in `networks`
type: string
network:
description: optional, the network to be used for mgmt
type: string
node1:
$ref: '#/components/schemas/junos_oob_ip_config_node_1'
type:
$ref: '#/components/schemas/ip_config_type'
use_mgmt_vrf:
default: true
description: if supported on the platform. If enabled, DNS will be using
this routing-instance, too
type: boolean
use_mgmt_vrf_for_host_out:
default: false
description: whether to use `mgmt_junos` for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP),
if alternative source network/ip is desired
type: boolean
vlan_id:
type: integer
type: object
junos_oob_ip_config_node_1:
description: for HA Cluster, node1 can have different IP Config
properties:
ip:
type: string
netmask:
description: used only if `subnet` is not specified in `networks`
type: string
network:
description: optional, the network to be used for mgmt
type: string
type:
$ref: '#/components/schemas/ip_config_type'
use_mgmt_vrf:
default: false
description: if supported on the platform. If enabled, DNS will be using
this routing-instance, too
type: boolean
use_mgmt_vrf_for_host_out:
default: false
description: whether to use `mgmt_junos` for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP),
if alternative source network/ip is desired
type: boolean
vlan_id:
description: optional, if different from parent
type: integer
type: object
junos_ospf_areas:
description: Junos OSPF areas
properties:
include_loopback:
default: false
type: boolean
networks:
additionalProperties:
properties:
auth_keys:
additionalProperties:
type: string
description: if `auth_type`==`md5`. Property key is the key number
example:
'1': auth-key-1
type: object
auth_password:
description: if `auth_type`==`password`, the password, max length
is 8
example: simple
type: string
auth_type:
default: none
description: auth type
enum:
- none
- md5
- password
example: md5
type: string
bfd_minimum_interval:
example: 500
maximum: 255000
minimum: 1
type: integer
dead_interval:
example: 40
maximum: 65535
minimum: 1
type: integer
export_policy:
example: export_policy
type: string
hello_interval:
maximum: 255
minimum: 1
type: integer
import_policy:
example: import_policy
type: string
interface_type:
default: broadcast
description: interface type (nbma = non-broadcast multi-access)
enum:
- broadcast
- nbma
- p2p
- p2mp
type: string
metric:
example: 10000
maximum: 65535
minimum: 1
nullable: true
type: integer
no_readvertise_to_overlay:
default: false
description: by default, we'll re-advertise all learned OSPF routes
toward overlay
type: boolean
passive:
default: false
description: whether to send OSPF-Hello
type: boolean
type: object
description: "Networks to participate in an OSPF area. \nProperty key is\
\ the network name"
example:
corp:
auth_keys:
'1': auth-key-1
auth_type: md5
bfd_minimum_interval: 500
dead_interval: 40
hello_interval: 10
interface_type: nbma
metric: 10000
guest:
passive: true
type: object
type:
default: default
description: OSPF type, default (default) / stub / nssa
enum:
- default
- stub
- nssa
example: default
type: string
type: object
junos_ospf_config:
description: Junos OSPF config
properties:
areas:
additionalProperties:
properties:
no_summary:
description: for a stub/nssa area, where to avoid forwarding type-3
LSA to this area
type: boolean
type: object
description: OSPF areas to run on this device and the corresponding per-area-specific
configs. Property key is the area
type: object
enabled:
description: whether to rung OSPF on this device
type: boolean
reference_bandwidth:
default: 100M
description: Bandwidth for calculating metric defaults (9600..4000000000000)
type: string
type: object
junos_other_ip_configs:
description: optional, if it's required to have switch's L3 presense on a network/vlan
properties:
evpn_anycast:
default: false
description: for EVPN, if anycast is desired
type: boolean
ip:
description: required if `type`==`static`
type: string
netmask:
description: optional, `subnet` from `network` definition will be used if
defined
type: string
type:
$ref: '#/components/schemas/ip_type'
type: object
junos_port_config:
description: Switch port config
properties:
ae_disable_lacp:
description: To disable LACP support for the AE interface
type: boolean
ae_idx:
description: Users could force to use the designated AE name
type: integer
ae_lacp_slow:
default: true
description: to use fast timeout
type: boolean
aggregated:
default: false
type: boolean
critical:
description: if want to generate port up/down alarm
type: boolean
description:
type: string
disable_autoneg:
default: false
description: if `speed` and `duplex` are specified, whether to disable autonegotiation
type: boolean
duplex:
default: auto
enum:
- auto
- full
- half
type: string
dynamic_usage:
description: Enable dynamic usage for this port. Set to `dynamic` to enable.
nullable: true
type: string
esilag:
type: boolean
inter_switch_link:
default: false
description: 'inter_switch_link is used together with "isolation" under
networks
NOTE: inter_switch_link works only between Juniper device. This has to
be applied to both ports connected together'
type: boolean
mtu:
default: 1514
description: media maximum transmission unit (MTU) is the largest data unit
that can be forwarded without fragmentation
type: integer
no_local_overwrite:
description: prevent helpdesk to override the port config
type: boolean
poe_disabled:
default: false
type: boolean
speed:
default: auto
enum:
- auto
- 10m
- 100m
- 1g
- 2.5g
- 5g
type: string
usage:
description: "port usage name. \n\nIf EVPN is used, use `evpn_uplink`or\
\ `evpn_downlink`"
type: string
required:
- usage
type: object
junos_port_mirror:
properties:
egress_port_ids:
description: at least one of `ingress_port_ids`,`egress_port_ids` or `ingress_networks`
should be specified
items:
example: ge-0/0/3
type: string
type: array
filter:
type: object
ingress_networks:
description: at least one of `ingress_port_ids`,`egress_port_ids` or `ingress_networks`
should be specified
items:
example: corp
type: string
type: array
ingress_port_ids:
description: at least one of `ingress_port_ids`,`egress_port_ids` or `ingress_networks`
should be specified
items:
example: ge-0/0/3
type: string
type: array
output_network:
example: analyze
type: string
output_port_id:
description: only one of of `output_port_id` or `output_network` should
be specified
example: ge-0/0/5
type: string
type: object
junos_port_mirroring:
properties:
egress_port_ids:
description: at least one of the `ingress_port_ids`, `egress_port_ids` or
`ingress_networks ` should be specified
items:
example: ge-0/0/3
type: string
type: array
ingress_networks:
description: at least one of the `ingress_port_ids`, `egress_port_ids` or
`ingress_networks ` should be specified
items:
example: corp
type: string
type: array
ingress_port_ids:
description: at least one of the `ingress_port_ids`, `egress_port_ids` or
`ingress_networks ` should be specified
items:
example: ge-0/0/3
type: string
type: array
output_network:
example: analyze
type: string
output_port_id:
description: exaclty on of the `output_port_id` or `output_network` should
be provided
example: ge-0/0/5
type: string
type: object
junos_port_usages:
description: Junos port usages
properties:
all_networks:
default: false
description: if `mode`==`trunk`, whether to trunk all network/vlans
type: boolean
allow_dhcpd:
description: "if DHCP snooping is enabled, whether DHCP server is allowed\
\ on the interfaces with. All the interfaces from port configs using this\
\ port usage are effected. Please notice that allow_dhcpd is a tri-state.\n\
\nWhen it is not defined, it means using the system\u2019s default setting\
\ which depends on whether the port is a access or trunk port."
type: boolean
allow_multiple_supplicants:
default: false
type: boolean
bypass_auth_when_server_down:
default: false
description: if `port_auth`==`dot1x`, bypass auth for known clients if set
to true when RADIUS server is down
type: boolean
bypass_auth_when_server_down_for_unkonwn_client:
default: false
description: if `port_auth`=`dot1x`, bypass auth for all (including unknown
clients) if set to true when RADIUS server is down
type: boolean
description:
description: description
type: string
disable_autoneg:
default: false
description: if speed and duplex are specified, whether to disable autonegotiation
type: boolean
disabled:
default: false
description: whether the port is disabled
type: boolean
duplex:
default: auto
description: link connection mode, choices are auto (default), full, and
half
enum:
- half
- full
- auto
type: string
dynamic_vlan_networks:
description: if dynamic vlan is used, specify the possible networks/vlans
RADIUS can return
example:
- corp
- user
items:
type: string
type: array
enable_mac_auth:
default: false
description: if `port_auth`==`dot1x`, whether to enable MAC Auth
type: boolean
enable_qos:
default: false
type: boolean
guest_network:
description: if `port_auth`==`dot1x`, which network to put the device into
if the device cannot do dot1x. default is null (i.e. not allowed)
nullable: true
type: string
mac_auth_only:
description: only effect once `enable_mac_auth`==`true`
type: boolean
mac_auth_protocol:
default: eap-md5
description: if `enable_mac_auth` ==`true`. This type is ignored if mist_nac
is enabled.
enum:
- pap
- eap-peap
- eap-md5
type: string
mac_limit:
default: 0
description: max number of mac addresses, default is 0 for unlimited, otherwise
range is 1 or higher, with upper bound constrained by platform
minimum: 0
type: integer
mode:
description: access (default) / trunk
enum:
- access
- trunk
- inet
- wan
type: string
mtu:
description: media maximum transmission unit (MTU) is the largest data unit
that can be forwarded without fragmentation. The default value is 1514.
type: integer
networks:
description: if `mode`==`trunk`, the list of network/vlans
items:
type: string
type: array
persist_mac:
default: false
description: if `mode`==`access` and `port_auth`!=`dot1x`, whether the port
should retain dynamically learned MAC addresses
type: boolean
poe_disabled:
default: false
description: whether PoE capabilities are disabled for a port
type: boolean
port_auth:
description: if dot1x is desired, set to dot1x
type: string
port_network:
description: native network/vlan for untagged traffic
type: string
reauth_interval:
default: 3600
description: if `port_auth`=`dot1x`, reauthentication interval range
maximum: 65535
minimum: 10
type: integer
rejected_network:
description: if `port_auth`==`dot1x`, when radius server reject / fails
nullable: true
type: string
speed:
description: speed, default is auto to automatically negotiate speed
type: string
storm_control:
$ref: '#/components/schemas/junos_storm_control'
stp_edge:
default: false
description: when enabled, the port is not expected to receive BPDU frames
type: boolean
voip_network:
description: network/vlan for voip traffic, must also set port_network.
to authenticate device, set port_auth
type: string
type: object
junos_radius_config:
description: Junos Radius config
properties:
acct_interim_interval:
default: 0
description: how frequently should interim accounting be reported, 60-65535.
default is 0 (use one specified in Access-Accept request from RADIUS Server).
Very frequent messages can affect the performance of the radius server,
600 and up is recommended when enabled
maximum: 65535
minimum: 0
type: integer
acct_servers:
items:
$ref: '#/components/schemas/radius_acct_server'
minItems: 1
type: array
uniqueItems: true
auth_servers:
items:
$ref: '#/components/schemas/radius_auth_server'
minItems: 1
type: array
uniqueItems: true
auth_servers_retries:
default: 3
description: radius auth session retries
type: integer
auth_servers_timeout:
default: 5
description: radius auth session timeout
type: integer
coa_enabled:
default: false
type: boolean
coa_port:
default: 3799
type: integer
network:
description: 'use `network`or `source_ip`
which network the RADIUS server resides, if there''s static IP for this
network, we''d use it as source-ip'
type: string
source_ip:
description: use `network`or `source_ip`
type: string
type: object
junos_snmp_config:
properties:
client_list:
items:
properties:
client_list_name:
example: clist-1
type: string
clients:
items:
example: 151.140.101.218/32
type: string
type: array
type: object
type: array
contact:
example: cns@juniper.net
type: string
description:
example: Juniper QFX Series Switch - 1K_5LA
type: string
enabled:
default: true
type: boolean
engine_id:
enum:
- local
- engine-id-suffix
- use-default-ip-address
- use-mac-address
type: string
location:
example: Las Vegas, NV
type: string
name:
example: TGH-1K-QFX10K
type: string
network:
default: default
type: string
trap_groups:
items:
properties:
categories:
items:
example: authentication
type: string
type: array
group_name:
description: Categories list can refer to https://www.juniper.net/documentation/software/topics/task/configuration/snmp-trap-groups-configuring-junos-nm.html
example: profiler
type: string
targets:
items:
example: 172.29.158.19
type: string
type: array
version:
default: v2
enum:
- v1
- v2
- all
title: junos_snmp_config_trap_version
type: string
type: object
type: array
v2c_config:
items:
properties:
authorization:
example: read-only
type: string
client_list_name:
description: client_list_name here should refer to client_list above
example: clist-1
type: string
community_name:
example: abc123
type: string
view:
description: view name here should be defined in views above
example: all
type: string
title: snmp_v2c_config
type: object
type: array
v3_config:
properties:
notify:
items:
properties:
name:
type: string
tag:
type: string
type:
enum:
- trap
- inform
title: snmp_v3_config_notify_type
type: string
type: object
type: array
notify_filter:
items:
properties:
contents:
items:
properties:
include:
type: boolean
oid:
example: 1.3.6.1.4.1
type: string
type: object
type: array
profile_name:
type: string
type: object
type: array
target_address:
items:
properties:
address:
example: address
type: string
address_mask:
example: address_mask
type: string
port:
default: 161
type: integer
tag_list:
description: -"
could be an os/platform/model/company
for ex: for cisco vendor, there could variants wrt os (such as ios,
nxos etc), platforms (asa etc), or acquired companies (such as meraki,
airnonet) etc.'
enum:
- generic
- juniper
- aruba
- paloalto
- cisco-aironet
- cisco-ios
- cisco-meraki
example: cisco-ios
title: mxcluster_nac_client_vendor
type: string
type: object
type: object
enabled:
default: false
type: boolean
secret:
example: testing123
type: string
type: object
mxcluster_radsec:
description: MxEdge Radsec Configuration
properties:
acct_servers:
description: list of RADIUS accounting servers, optional, order matters
where the first one is treated as primary
items:
properties:
host:
description: ip / hostname of RADIUS server
type: string
port:
default: 1813
description: Acct port of RADIUS server
type: integer
secret:
description: secret of RADIUS server
type: string
ssids:
description: list of ssids that will use this server if match_ssid
is true and match is found
items:
type: string
type: array
title: mxcluster_rad_acct_server
type: object
type: array
uniqueItems: true
auth_servers:
description: list of RADIUS authentication servers, order matters where
the first one is treated as primary
items:
properties:
host:
description: ip / hostname of RADIUS server
type: string
keywrap_enabled:
description: if used for Mist APs, enable keywrap algorithm. Default
is false
type: boolean
keywrap_format:
description: if used for Mist APs
enum:
- hex
- ascii
title: mxcluster_rad_auth_server_keywrap_format
type: string
keywrap_kek:
description: if used for Mist APs, encryption key
type: string
keywrap_mack:
description: if used for Mist APs, Message Authentication Code Key
type: string
port:
default: 1812
description: Auth port of RADIUS server
type: integer
secret:
description: secret of RADIUS server
type: string
ssids:
description: list of ssids that will use this server if match_ssid
is true and match is found
items:
type: string
type: array
title: mxcluster_rad_auth_server
type: object
type: array
uniqueItems: true
enabled:
description: whether to enable service on Mist Edge i.e. RADIUS proxy over
TLS
type: boolean
match_ssid:
description: whether to match ssid in request message to select from a subset
of RADIUS servers
type: boolean
proxy_hosts:
description: hostnames or IPs for Mist AP to use as the TLS Server (i.e.
they are reachable from AP) in addition to `tunterm_hosts`
items:
type: string
type: array
server_selection:
default: ordered
description: ordered (default) / unordered. When ordered, Mist Edge will
prefer and go back to the first radius server if possible
enum:
- ordered
- unordered
title: mxcluster_radsec_server_selection
type: string
source:
default: any
description: Specify source address to use when connecting to RADIUS servers
enum:
- any
- oob
- oob6
- tunnel
- tunnel6
title: mxcluster_radsec_source
type: string
type: object
mxedge:
description: MxEdge
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
example: 95ddd29a-6a3c-929e-a431-51a5b09f36a6
format: uuid
readOnly: true
type: string
magic:
example: L-NpT5gi-ADR8WTFd4EiQPY3cP5WdSoD
readOnly: true
type: string
model:
example: ME-100
type: string
modified_time:
readOnly: true
type: number
mxagent_registered:
readOnly: true
type: boolean
mxcluster_id:
description: MxCluster this MxEdge belongs to
example: 572586b7-f97b-a22b-526c-8b97a3f609c4
format: uuid
type: string
mxedge_mgmt:
$ref: '#/components/schemas/mxedge_mgmt'
name:
example: Guest
type: string
note:
example: note for mxedge
type: string
ntp_servers:
items:
type: string
type: array
oob_ip_config:
$ref: '#/components/schemas/mxedge_oob_ip_config'
org_id:
$ref: '#/components/schemas/org_id'
proxy:
$ref: '#/components/schemas/proxy'
services:
description: list of services to run, tunterm only for now
items:
default: tunterm
type: string
type: array
site_id:
$ref: '#/components/schemas/site_id'
tunterm_dhcpd_config:
additionalProperties:
properties:
enabled:
default: false
type: boolean
servers:
description: list of DHCP servers; required if `type`==`relay`
items:
type: string
type: array
type:
default: relay
enum:
- relay
title: mxedge_additional_tunterm_dhcpd_type
type: string
type: object
description: global and per-VLAN. Property key is the VLAN ID
properties:
enabled:
default: false
type: boolean
servers:
description: list of DHCP servers; required if `type`==`relay`
items:
type: string
type: array
type:
default: relay
enum:
- relay
title: mxedge_tunterm_dhcpd_type
type: string
type: object
tunterm_extra_routes:
additionalProperties:
properties:
via:
type: string
type: object
description: Property key is a CIDR
type: object
tunterm_igmp_snooping_config:
properties:
enabled:
default: false
type: boolean
querier:
properties:
max_response_time:
description: "querier\u2019s query response interval, in tenths-of-seconds"
example: 10
type: integer
mtu:
description: the MTU we use (needed when forming large IGMPv3 Reports)
example: 1500
type: integer
query_interval:
description: "querier\u2019s query interval, in seconds"
example: 125
type: integer
robustness:
description: "querier\u2019s robustness "
maximum: 7
minimum: 1
type: integer
version:
description: "querier\u2019s maximum protocol version"
example: 3
type: integer
title: tunterm_igmp_snooping_querier
type: object
vlan_ids:
description: the list of vlans on which tunterm performs IGMP snooping
items:
example: 2
type: integer
type: array
type: object
tunterm_ip_config:
description: ip configuration of the Mist Tunnel interface
properties:
gateway:
example: 10.2.1.254
type: string
gateway6:
example: 2001:1010:1010:1010::1
type: string
ip:
description: untagged VLAN
example: 10.2.1.1
type: string
ip6:
example: 2001:1010:1010:1010::2
type: string
netmask:
example: 255.255.255.0
type: string
netmask6:
example: /64
type: string
required:
- gateway
- ip
- netmask
type: object
tunterm_monitoring:
items:
$ref: '#/components/schemas/tunterm_monitoring'
type: array
tunterm_multicast_config:
properties:
mdns:
properties:
enabled:
type: boolean
vlan_ids:
items:
type: string
type: array
title: tunterm_multicast_mdns
type: object
ssdp:
properties:
enabled:
type: boolean
vlan_ids:
items:
type: string
type: array
title: tunterm_multicast_ssdp
type: object
type: object
tunterm_other_ip_configs:
additionalProperties:
properties:
ip:
type: string
netmask:
type: string
required:
- ip
- netmask
type: object
description: ip configs by VLAN ID. Property key is the VLAN ID
type: object
tunterm_port_config:
$ref: '#/components/schemas/tunterm_port_config'
tunterm_registered:
readOnly: true
type: boolean
tunterm_switch_config:
additionalProperties:
properties:
port_vlan_id:
type: integer
vlan_ids:
items:
anyOf:
- type: integer
- type: string
type: array
type: object
description: if custom vlan settings are desired
properties:
enabled:
type: boolean
type: object
versions:
properties:
mxagent:
type: string
tuntnerm:
type: string
type: object
required:
- model
- name
type: object
mxedge_das:
description: configure cloud-assisted dynamic authorization service on this
cluster of mist edges
properties:
coa_servers:
description: dynamic authorization clients configured to send CoA|DM to
mist edges on port 3799
items:
properties:
disable_event_timestamp_check:
default: false
description: whether to disable Event-Timestamp Check
type: boolean
enabled:
type: boolean
host:
description: this server configured to send CoA|DM to mist edges
type: string
port:
default: 3799
description: mist edges will allow this host on this port
type: integer
secret:
type: string
title: mxedge_das_coa_server
type: object
type: array
enabled:
default: false
type: boolean
type: object
mxedge_event:
properties:
mxcluster_id:
example: 2815c917-58e7-472f-a190-bfd44fb58d05
type: string
mxedge_id:
example: 00000000-0000-0000-1000-020000dc585c
type: string
org_id:
$ref: '#/components/schemas/org_id'
service:
example: tunterm
type: string
timestamp:
example: 1694678225.927
type: number
type:
example: ME_SERVICE_STOPPED
type: string
type: object
mxedge_mgmt:
properties:
fips_enabled:
default: false
type: boolean
mist_password:
example: MIST_PASSWORD
type: string
oob_autoconf6:
default: true
type: boolean
oob_dhcp6:
default: true
type: boolean
root_password:
example: ROOT_PASSWORD
type: string
type: object
mxedge_oob_ip_config:
description: ip configuration of the Mist Edge out-of-band management interface
properties:
autoconf6:
default: true
type: boolean
dhcp6:
default: true
type: boolean
dns:
default:
- 8.8.8.8
- 8.8.4.4
description: if `type`=`static`
example:
- 8.8.8.8
- 4.4.4.4
- 2001:4860:4860::8888
items:
type: string
type: array
gateway:
description: if `type`=`static`
example: 10.2.1.254
type: string
gateway6:
example: 2601:1700:43c0:dc0::1
type: string
ip:
description: if `type`=`static`
example: 10.2.1.2
type: string
ip6:
example: 2601:1700:43c0:dc0:20c:29ff:fea7:93bc
type: string
netmask:
description: if `type`=`static`
example: 255.255.255.0
type: string
netmask6:
example: /64
type: string
type:
$ref: '#/components/schemas/ip_type'
type6:
$ref: '#/components/schemas/ip_type'
type: object
mxedge_stats:
properties:
cpu_stat:
description: CPU/core stats list
properties:
cpus:
additionalProperties:
$ref: '#/components/schemas/cpu_stat'
example:
cpu0:
idle: 89
interrupt: 0
system: 8
usage: 10
user: 1
cpu1:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu2:
idle: 81
interrupt: 0
system: 4
usage: 18
user: 13
cpu3:
idle: 2
interrupt: 0
system: 50
usage: 97
user: 46
type: object
idle:
description: percentage of Idle, Idle/(Idle + Busy) since last sampling
example: 62
type: integer
interrupt:
description: percentage of Interrupt, (Irq + SoftIrq)/(Idle + Busy)
since last sampling
example: 0
type: integer
system:
description: percentage of System, System/(Idle + Busy) since last sampling
example: 17
type: integer
usage:
description: percentage of load, Busy/(Idle + Busy) since last sampling
example: 37
type: integer
user:
description: percentage of User, User/(Idle + Busy) since last sampling
example: 19
type: integer
title: mxedge_stats_cpu
type: object
created_time:
example: 1632684398
type: integer
for_site:
example: false
type: boolean
id:
example: 00000000-0000-0000-1000-020000a80cb4
format: uuid
type: string
ip_stat:
description: OOBM IP stats
properties:
ip:
example: 192.168.1.244
type: string
ips:
additionalProperties:
type: string
description: Property key is the interface name. IPs for each net interface
example:
ens18: 192.168.1.244/24,fe80::104c:ffff:fee0:caf8/64
type: object
macs:
additionalProperties:
description: MAC addresses for each net interface
type: string
description: Property key is the interface name. MAC for each net interface
example:
ens18: e4434b217044
type: object
title: mxedge_stats_ip_stat
type: object
lag_stat:
additionalProperties:
properties:
active_ports:
description: list of ports active on the LAG defined by the LACP
items:
type: string
type: array
type: object
description: Stat for LAG (Link Aggregation Group). Property key is the
LAG name
example:
lacp0:
active_ports:
- port0
- port1
type: object
last_seen:
example: 1633721215
type: integer
mac:
example: 020000a80cb4
type: string
memory_stat:
description: Memory usage
properties:
active:
description: The amount of memory, in kibibytes, that has been used
more recently and is usually not reclaimed unless absolutely necessary.
example: 394936320
type: integer
available:
description: An estimate of how much memory is available for starting
new applications, without swapping.
example: 4699291648
type: integer
buffers:
description: The amount, in kibibytes, of temporary storage for raw
disk blocks.
example: 107646976
type: integer
cached:
description: The amount of physical RAM, in kibibytes, used as cache
memory.
example: 478060544
type: integer
free:
description: The amount of physical RAM, in kibibytes, left unused by
the system
example: 4330659840
type: integer
inactive:
description: The amount of memory, in kibibytes, that has been used
less recently and is more eligible to be reclaimed for other purposes.
example: 211980288
type: integer
swap_cached:
description: The amount of memory, in kibibytes, that has once been
moved into swap, then back into the main memory, but still also remains
in the swapfile.
example: 0
type: integer
swap_free:
description: The total amount of swap free, in kibibytes.
example: 1022357504
type: integer
swap_total:
description: The total amount of swap available, in kibibytes.
example: 1022357504
type: integer
total:
description: Total amount of usable RAM, in kibibytes, which is physical
RAM minus a number of reserved bits and the kernel binary code
example: 8365957120
type: integer
usage:
example: 48
type: integer
title: mxedge_stats_memory_stat
type: object
model:
example: ME-VM
type: string
modified_time:
example: 1633643629
type: integer
mxagent_registered:
example: true
type: boolean
mxcluster_id:
example: 678bc339-7635-4556-bbc0-e77ad493ef8b
format: uuid
type: string
name:
description: The name of the tunnel
example: me-vm-1
type: string
num_tunnels:
example: 0
type: integer
oob_ip_config:
$ref: '#/components/schemas/mxedge_oob_ip_config'
org_id:
$ref: '#/components/schemas/org_id'
port_stat:
additionalProperties:
properties:
full_duplex:
type: boolean
mac:
type: string
rx_bytes:
type: number
rx_errors:
type: integer
rx_pkts:
type: integer
speed:
type: integer
state:
type: string
tx_bytes:
type: integer
tx_errors:
type: integer
tx_pkts:
type: integer
up:
type: boolean
type: object
example:
port0:
full_duplex: true
mac: 9e294e49091d
rx_bytes: 646898375700
rx_errors: 0
rx_pkts: 8784449574
speed: 10000
state: forwarding
tx_bytes: 647200748038
tx_errors: 0
tx_pkts: 8788647466
up: true
port1:
full_duplex: true
mac: a270fe53437e
rx_bytes: 647200437652
rx_errors: 0
rx_pkts: 8788644886
speed: 10000
state: forwarding
tx_bytes: 646898681650
tx_errors: 0
tx_pkts: 8784452092
up: true
title: mxedge_stats_port_stat
type: object
sensor_stat:
type: object
serial:
nullable: true
type: string
service_stat:
additionalProperties:
properties:
ext_ip:
description: "external IP from ep-terminator\u2019s point of view.\
\ valid only for service having its own cloud connection"
type: string
last_seen:
description: timestamp when the last stats is seen (cloud unix time,
in second). valid only for service having its own stats or whole
system (last among last_seen of all services)
type: integer
package_state:
description: package/service installation state.
type: string
package_version:
description: package/service installation state.
type: string
running_state:
description: service running state.
type: string
uptime:
description: service uptime.
type: integer
type: object
description: stat for each services
example:
mxagent:
ext_ip: 99.0.86.164
last_seen: 1633721215
package_state: Installed
package_version: 3.1.1037-1
running_state: Running
uptime: 21240
tunterm:
ext_ip: 99.0.86.164
last_seen: 1633721203
package_state: Installed
package_version: 0.1.2449+deb10
running_state: Running
uptime: 76261
type: object
services:
example:
- tunterm
items:
type: string
type: array
site_id:
$ref: '#/components/schemas/site_id'
status:
example: connected
type: string
tunterm_ip_config:
properties:
gateway:
example: 192.168.11.1
type: string
ip:
example: 192.168.11.91
type: string
netmask:
example: 255.255.255.0
type: string
type: object
tunterm_port_config:
properties:
downstream_ports:
example:
- '0'
- '1'
items:
type: string
type: array
separate_upstream_downstream:
example: false
type: boolean
upstream_ports:
example:
- '0'
- '1'
items:
type: string
type: array
type: object
tunterm_registered:
example: true
type: boolean
tunterm_stat:
properties:
monitoring_failed:
example: false
type: boolean
type: object
uptime:
example: 76281
type: integer
virtualization_type:
description: Virtualization environment
example: KVM
type: string
type: object
mxedge_upgrade_channel:
default: stable
description: upgrade channel to follow, stable (default) / beta / alpha
enum:
- stable
- beta
- alpha
type: string
mxedge_upgrade_multi:
properties:
allow_downgrades:
description: whether downgrade is allowed when running version is higher
than expected version for each service
properties:
mxagent:
default: false
type: boolean
mxdas:
default: false
type: boolean
mxocproxy:
default: false
type: boolean
radsecproxy:
default: false
type: boolean
tunterm:
default: false
type: boolean
type: object
channel:
$ref: '#/components/schemas/mxedge_upgrade_channel'
distro:
description: distro upgrade, optional, to specific codename (e.g. bullseye)
with highest qualified versions
type: string
mxedge_ids:
description: list of mxedge IDs to upgrade. If not specified, it means all
the org mxedges.
items:
format: uuid
type: string
type: array
strategy:
$ref: '#/components/schemas/mxedge_upgrade_strategy'
versions:
$ref: '#/components/schemas/mxedge_upgrade_version'
required:
- mxedge_ids
type: object
mxedge_upgrade_response:
properties:
channel:
minLength: 1
type: string
counts:
properties:
failed:
type: integer
queued:
type: integer
success:
type: integer
upgrading:
type: integer
required:
- queued
- upgrading
- success
- failed
type: object
id:
minLength: 1
type: string
status:
minLength: 1
type: string
strategy:
minLength: 1
type: string
versions:
type: object
required:
- status
- strategy
- versions
- channel
- id
- counts
type: object
mxedge_upgrade_strategy:
default: big_bang
description: '* `big_bang`: upgrade all at once
* `serial`: one at a time'
enum:
- big_bang
- serial
title: mxedge_upgrade_multi_strategy
type: string
mxedge_upgrade_version:
description: version to upgrade for each service, `current` / `latest` / `default`
/ specific version (e.g. `2.5.100`).\nignored if distro upgrade
properties:
mxagent:
default: current
type: string
mxdas:
default: current
type: string
mxocproxy:
default: current
type: string
radsecproxy:
default: current
type: string
tunterm:
default: current
type: string
required:
- mxagent
- tunterm
type: object
mxedges_assign:
properties:
mxedge_ids:
items:
format: uuid
type: string
type: array
site_id:
$ref: '#/components/schemas/site_id'
required:
- site_id
- mxedge_ids
type: object
mxedges_unassign:
properties:
mxedge_ids:
items:
format: uuid
type: string
type: array
required:
- mxedge_ids
type: object
mxtunnel:
description: MxTunnel
properties:
anchor_mxtunnel_ids:
description: list of anchor mxtunnels used for forming edge to edge tunnels
items:
example: 1e970fec-0a7a-4d73-a472-3ef3b6a456aa
format: uuid
type: string
type: array
auto_preemption:
$ref: '#/components/schemas/auto_preemption'
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
hello_interval:
default: 60
description: in seconds, used as heartbeat to detect if a tunnel is alive.
AP will try another peer after missing N hellos specified by `hello_retries`.
maximum: 300
minimum: 1
nullable: true
type: integer
hello_retries:
default: 7
maximum: 30
minimum: 2
nullable: true
type: integer
id:
format: uuid
readOnly: true
type: string
ipsec:
properties:
dns_servers:
items:
type: string
nullable: true
type: array
dns_suffix:
items:
type: string
type: array
enabled:
type: boolean
extra_routes:
items:
properties:
dest:
type: string
next_hop:
format: ipv4
type: string
title: mxtunnel_ipsec_extra_route
type: object
type: array
split_tunnel:
type: boolean
use_mxedge:
type: boolean
title: mxtunnel_ipsec
type: object
modified_time:
readOnly: true
type: number
mtu:
default: 0
description: 0 to enable PMTU, 552-1500 to start PMTU with a lower MTU
maximum: 1500
minimum: 0
type: integer
mxcluster_ids:
description: list of mxclusters to deploy this tunnel to
items:
format: uuid
type: string
type: array
name:
nullable: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
protocol:
default: udp
enum:
- udp
- ip
title: mxtunnel_protocol
type: string
site_id:
$ref: '#/components/schemas/site_id'
vlan_ids:
description: list of vlan_ids that will be used
items:
type: integer
type: array
type: object
mxtunnel_stats:
description: MxTunnels statistics
properties:
ap:
readOnly: true
type: string
for_site:
readOnly: true
type: boolean
last_seen:
readOnly: true
type: integer
mxcluster_id:
format: uuid
readOnly: true
type: string
mxedge_id:
format: uuid
readOnly: true
type: string
mxtunnel_id:
format: uuid
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
peer_mxedge_id:
description: MxEdge ID of the peer(mist edge to mist edge tunnel)
format: uuid
readOnly: true
type: string
remote_ip:
readOnly: true
type: string
remote_port:
readOnly: true
type: integer
rx_control_pkts:
readOnly: true
type: integer
sessions:
description: list of sessions
items:
properties:
local_sid:
description: remote sessions id (dynamically unless Tunnel is said
to be static)
type: integer
remote_id:
description: WxlanTunnel Remote ID
type: string
remote_sid:
description: remote sessions id (dynamically unless Tunnel is said
to be static)
type: integer
state:
type: string
required:
- local_sid
- remote_id
- remote_sid
- state
type: object
minItems: 1
readOnly: true
type: array
uniqueItems: true
site_id:
$ref: '#/components/schemas/site_id'
state:
enum:
- idle
- wait-ctrl-reply
- wait-ctrl-conn
- established
- established_with_session
readOnly: true
title: mxtunnel_stats_state
type: string
tx_control_pkts:
readOnly: true
type: integer
uptime:
readOnly: true
type: integer
type: object
nac_client:
properties:
ap:
example:
- 5c5b35bf16bb
- d4dc090041b4
items:
type: string
type: array
auth_type:
example: eap-tls
type: string
cert_cn:
items:
type: string
type: array
cert_issuer:
items:
type: string
type: array
idp_id:
type: string
idp_role:
items:
type: string
type: array
last_ap:
type: string
last_cert_cn:
type: string
last_cert_expiry:
type: integer
last_cert_issuer:
type: string
last_nacrule_id:
type: string
last_nacrule_name:
type: string
last_nas_vendor:
type: string
last_ssid:
type: string
last_status:
type: string
mac:
type: string
nacrule_id:
items:
type: string
type: array
nacrule_matched:
type: boolean
nacrule_name:
items:
type: string
type: array
nas_vendor:
items:
type: string
type: array
org_id:
$ref: '#/components/schemas/org_id'
random_mac:
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
ssid:
items:
type: string
type: array
timestamp:
example: 1694689718.612
type: number
type:
example: wireless
type: string
type: object
nac_clients:
items:
$ref: '#/components/schemas/nac_client'
type: array
nac_crl_file:
properties:
created_time:
description: Time at which the file was first uploaded, in epoch
example: 1698099079
type: integer
id:
description: ID for file upload, used to identify file even for deletion
example: a1ca26f3-44dd-4833-9a7b-97bbb2ab5230
type: string
modified_time:
description: Time at which the file was last updated, in epoch
example: 1698099079
type: integer
name:
description: Name for the .crl file issuer if set
example: SampleCertificateSigner
type: string
url:
description: Download URL for the .crl file
example: http://url/to/crl_file.crl
type: string
type: object
nac_crl_files:
items:
$ref: '#/components/schemas/nac_crl_file'
type: array
nac_portal:
properties:
access_type:
$ref: '#/components/schemas/nac_portal_access_type'
bg_image_url:
description: background image
type: string
cert_expire_time:
description: in days
example: 365
type: integer
enable_telemetry:
description: model, version, fingering, events (connecting, disconnect,
roaming), which ap
type: boolean
expiry_notification_time:
description: in days
type: integer
name:
example: get-wifi
type: string
notify_expiry:
description: phase 2
type: boolean
ssid:
example: Corp
type: string
sso:
$ref: '#/components/schemas/nac_portal_sso'
template_url:
type: string
thumbnail_url:
readOnly: true
type: string
tos:
type: string
type: object
nac_portal_access_type:
default: wireless
enum:
- wireless
- wireless+wired
type: string
nac_portal_array:
items:
$ref: '#/components/schemas/nac_portal'
type: array
nac_portal_sso:
properties:
idp_cert:
example: '-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END
CERTIFICATE-----'
type: string
idp_sign_algo:
example: sha256
type: string
idp_sso_url:
example: https://yourorg.onelogin.com/trust/saml2/http-post/sso/138130
type: string
issuer:
example: https://app.onelogin.com/saml/metadata/138130
type: string
nameid_format:
example: email
type: string
sso_role_matching:
items:
$ref: '#/components/schemas/nac_portal_sso_role_matching'
type: array
use_sso_role_for_cert:
description: if it's desired to inject a role into Cert's Subject (so it
can be used later on in policy)
type: boolean
type: object
nac_portal_sso_role_matching:
properties:
assigned:
example: user
type: string
match:
example: Student
type: string
type: object
nac_rule:
properties:
action:
enum:
- allow
- block
example: allow
type: string
apply_tags:
description: all optional, this goes into Access-Accept
example:
- c049dfcd-0c73-5014-1c64-062e9903f1e5
items:
type: string
type: array
created_time:
readOnly: true
type: integer
enabled:
default: true
description: enabled or not
type: boolean
id:
format: uuid
minLength: 1
readOnly: true
type: string
matching:
$ref: '#/components/schemas/nac_rule_matching'
modified_time:
readOnly: true
type: integer
name:
type: string
not_matching:
$ref: '#/components/schemas/nac_rule_matching'
order:
description: the order of the rule, lower value implies higher priority
example: 1
minimum: 1
type: number
org_id:
$ref: '#/components/schemas/org_id'
required:
- action
- name
type: object
nac_rule_matching:
properties:
auth_type:
default: eap-tls
enum:
- idp
- mab
- psk
- device-auth
- eap-tls
- eap-ttls
- eap-teap
title: nac_rule_matching_auth_type
type: string
nactags:
example:
- 041d5d36-716c-4cfb-4988-3857c6aa14a2
- a809a97f-d599-f812-eb8c-c3f84aabf6ba
items:
type: string
type: array
port_types:
example:
- wired
items:
enum:
- wireless
- wired
type: string
type: array
site_ids:
description: list of site ids to match
example:
- bb19fc3e-4124-4b57-80d9-c3f6edce47c4
- bb19fc3e-6564-4b57-80d9-c3f6edce47c1
items:
format: uuid
type: string
type: array
sitegroup_ids:
description: list of sitegroup ids to match
example:
- bb19fc3e-4124-4b57-80d9-c3f6edce47c4
- bb19fc3e-6564-4b57-80d9-c3f6edce47c1
items:
format: uuid
type: string
type: array
vendor:
description: list of vendors to match
items:
example: cisc
type: string
type: array
title: nac_rule_matching
type: object
nac_tag:
properties:
created_time:
readOnly: true
type: number
egress_vlan_names:
description: if `type`==`egress_vlan_names`, list of egress vlans to return
example:
- 1vlan-30
- 1vlan-20
- 2-vlan10
items:
type: string
type: array
gbp_tag:
description: if `type`==`gbp_tag`
type: integer
id:
format: uuid
readOnly: true
type: string
match:
description: if `type`==`match`
enum:
- cert_cn
- cert_issuer
- cert_san
- cert_serial
- cert_sub
- client_mac
- idp_role
- mdm_status
- radius_group
- realm
- ssid
- user_name
minLength: 1
title: nac_tag_match
type: string
modified_time:
readOnly: true
type: number
name:
minLength: 1
type: string
org_id:
$ref: '#/components/schemas/org_id'
radius_attrs:
description: "if `type`==`radius_attrs`, user can specify a list of one\
\ or more standard attributes in the field \"radius_attrs\". \nIt is the\
\ responsibility of the user to provide a syntactically correct string,\
\ otherwise it may not work as expected.\nNote that it is allowed to have\
\ more than one radius_attrs in the result of a given rule."
example:
- Idle-Timeout=600
- Termination-Action=RADIUS-Request
items:
type: string
type: array
radius_group:
description: if `type`==`radius_group`
type: string
radius_vendor_attrs:
description: "if `type`==`radius_vendor_attrs`, user can specify a list\
\ of one or more vendor-specific attributes in the field \"radius_vendor_attrs\"\
. \nIt is the responsibility of the user to provide a syntactically correct\
\ string, otherwise it may not work as expected.\nNote that it is allowed\
\ to have more than one radius_vendor_attrs in the result of a given rule."
example:
- PaloAlto-Admin-Role=superuser
- PaloAlto-Panorama-Admin-Role=administrator
items:
type: string
type: array
session_timeout:
description: if `type`==`session_timeout, in seconds
example: 86000
type: integer
type:
enum:
- egress_vlan_names
- match
- vlan
- gbp_tag
- radius_attrs
- radius_group
- radius_vendor_attrs
- session_timeout
minLength: 1
title: nac_tag_type
type: string
values:
description: if `type`==`match`
items:
type: string
type: array
vlan:
description: if `type`==`vlan`
type: string
required:
- name
- type
type: object
name:
properties:
name:
type: string
type: object
network:
description: Networks are usually subnets that have cross-site significance.
`networks`in Org Settings will got merged into `networks`in Site Setting.
For gateways, they can be used to define Service Routes.
properties:
created_time:
readOnly: true
type: number
disallow_mist_services:
default: false
description: whether to disallow Mist Devices in the network
type: boolean
gateway:
example: 192.168.70.1
format: ipv4
type: string
hosts:
additionalProperties:
properties:
external_ips:
example: 172.16.10.32-172.16.10.35
type: string
ips:
example: 192.168.70.32-192.168.70.35
type: string
type: object
title: network_host
type: object
id:
format: uuid
readOnly: true
type: string
internal_access:
properties:
enabled:
type: boolean
title: network_internal_access
type: object
internet_access:
$ref: '#/components/schemas/network_internet_access'
isolation:
description: whether to allow clients in the network to talk to each other
type: boolean
modified_time:
readOnly: true
type: number
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
routed_for_networks:
description: for a Network (usually LAN), it can be routable to other networks
(e.g. OSPF)
items:
example: pos
type: string
type: array
subnet:
example: 192.168.70.0/24
type: string
tenants:
additionalProperties:
properties:
addresses:
type: string
type: object
title: network_tenant
type: object
vlan_id:
type: integer
vpn_access:
additionalProperties:
properties:
advertised_subnet:
description: if `routed`==`true`, whether to advertise an aggregated
subnet toward HUB this is useful when there are multiple networks
on SPOKE's side
example: 172.16.0.0/24
type: string
allow_ping:
description: whether to allow ping from vpn into this routed network
type: boolean
destination_nat:
$ref: '#/components/schemas/network_destination_nat'
nat_pool:
description: if `routed`==`false` (usually at Spoke), but some hosts
needs to be reachable from Hub, a subnet is required to create and
advertise the route to Hub
example: 172.16.0.0/26
type: string
no_readvertise_to_lan_bgp:
default: false
description: toward LAN-side BGP peers
type: boolean
no_readvertise_to_lan_ospf:
default: false
description: toward LAN-side OSPF peers
type: boolean
no_readvertise_to_overlay:
description: 'toward overlay
how HUB should deal with routes it received from Spokes'
type: boolean
other_vrfs:
description: 'by default, the routes are only readvertised toward
the same vrf on spoke
to allow it to be leaked to other vrfs'
items:
example: iot
type: string
type: array
routed:
description: whether this network is routable
type: boolean
source_nat:
$ref: '#/components/schemas/network_source_nat'
static_nat:
$ref: '#/components/schemas/network_static_nat'
summarized_subnet:
description: 'toward overlay
how HUB should deal with routes it received from Spokes'
example: 172.16.0.0/16
type: string
summarized_subnet_to_lan_bgp:
description: toward LAN-side BGP peers
example: 172.16.0.0/16
type: string
summarized_subnet_to_lan_ospf:
description: toward LAN-side OSPF peers
example: 172.16.0.0/16
type: string
type: object
description: whether this network can be accessed from vpn
title: network_vpn_access
type: object
type: object
network_destination_nat:
additionalProperties:
properties:
internal_ip:
example: 192.168.70.30
type: string
name:
example: web server
type: string
port:
example: 443
type: integer
type: object
description: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port
(i.e. ":2222")
type: object
network_internet_access:
description: whether this network has direct internet access
properties:
create_simple_service_policy:
default: false
type: boolean
destination_nat:
$ref: '#/components/schemas/network_destination_nat'
enabled:
type: boolean
restricted:
default: false
description: by default, all access is allowed, to only allow certain traffic,
make `restricted`=`true` and define service_policies
type: boolean
static_nat:
$ref: '#/components/schemas/network_static_nat'
type: object
network_source_nat:
description: if `routed`==`false` (usually at Spoke), but some hosts needs to
be reachable from Hub
properties:
exteral_ip:
example: 172.16.0.8/30
type: string
title: network_vpn_access_source_nat
type: object
network_static_nat:
additionalProperties:
properties:
internal_ip:
example: 192.168.70.3
type: string
name:
example: pos-station-1
type: string
wan_name:
description: If not set, we configure the nat policies against all WAN
ports for simplicity
example: wan0
type: string
type: object
description: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address
and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20")
type: object
network_template:
description: Network Template
properties:
additional_config_cmds:
items:
type: string
type: array
created_time:
readOnly: true
type: number
dhcp_snooping:
$ref: '#/components/schemas/junos_dhcp_snooping'
dns_servers:
items:
type: string
type: array
dns_suffix:
items:
type: string
type: array
extra_routes:
$ref: '#/components/schemas/switch_extra_routes'
group_tags:
type: object
id:
format: uuid
readOnly: true
type: string
import_org_networks:
description: Org Networks that we'd like to import
items:
example: ap
type: string
type: array
mist_nac:
$ref: '#/components/schemas/network_template_mist_nac'
modified_time:
readOnly: true
type: number
name:
type: string
networks:
additionalProperties:
$ref: '#/components/schemas/network_template_network'
description: Property key is network name
type: object
ntp_servers:
items:
type: string
type: array
org_id:
$ref: '#/components/schemas/org_id'
port_usages:
additionalProperties:
$ref: '#/components/schemas/junos_port_usages'
description: Property key is the port profile name
properties:
dynamic:
$ref: '#/components/schemas/dynamic_port_usage'
type: object
radius_config:
$ref: '#/components/schemas/junos_radius_config'
remote_syslog:
$ref: '#/components/schemas/remote_syslog'
snmp_config:
$ref: '#/components/schemas/junos_snmp_config'
switch_matching:
$ref: '#/components/schemas/switch_matching'
switch_mgmt:
$ref: '#/components/schemas/switch_mgmt'
vrf_config:
properties:
enabled:
default: false
type: boolean
type: object
vrf_instances:
additionalProperties:
properties:
extra_routes:
$ref: '#/components/schemas/vrf_extra_routes'
networks:
items:
type: string
type: array
type: object
description: Property key is the VRF name
type: object
type: object
network_template_mist_nac:
description: enable mist_nac to use radsec
properties:
enabled:
type: boolean
network:
type: string
type: object
network_template_network:
properties:
subnet:
example: 192.168.1.0/24
type: string
vlan_id:
example: 10
type: integer
type: object
new_admin:
properties:
account_only:
default: false
description: skip creating initial setup if true
type: boolean
allow_mist:
default: false
description: whether to allow Mist to look at this org
type: boolean
city:
description: city of registering user
example: Cupertino
type: string
country:
description: country/region of registering user
example: United States
type: string
email:
example: test@mistsys.com
maxLength: 64
type: string
first_name:
example: John
type: string
invite_code:
description: required initially
example: MISTROCKS
type: string
last_name:
example: Smith
type: string
org_name:
example: Smith LLC
type: string
password:
example: foryoureyesonly
type: string
recaptcha:
description: reCAPTCHA , see https://www.google.com/recaptcha/
type: string
recaptcha_flavor:
$ref: '#/components/schemas/recaptcha_flavor'
referer_invite_token:
description: the invite token to apply after account creation
example: Dm2gtT8dwMeM4Bc2E8FLIaA96VHOjPat
type: string
return_to:
description: the url the user should be redirected back to
example: http://mist.zendesk.com/hc/quickstart.pdf
type: string
state:
description: state of registering user, optional (depends on country/region)
example: California
type: string
street_address:
description: street address of registering user
example: 1601 S De Anza Blvd Ste 248
type: string
street_address 2:
description: street address 2 of registering user
example: 1601 S De Anza Blvd Ste 248
type: string
zipcode:
description: zipcode of registering user
example: '95014'
type: string
required:
- email
- first_name
- last_name
- org_name
- password
- recaptcha
title: new_admin
type: object
note:
properties:
note:
description: Some text note describing the intent
example: maintenance window
type: string
title: note
type: object
notes:
properties:
notes:
example: wired pcap test
type: string
type: object
org:
properties:
alarmtemplate_id:
format: uuid
nullable: true
type: string
allow_mist:
default: true
type: boolean
created_time:
example: 1652905706
readOnly: true
type: number
id:
example: 2818e386-8dec-2562-9ede-5b8a0fbbdc71
format: uuid
readOnly: true
type: string
modified_time:
example: 1652905706
readOnly: true
type: number
msp_id:
example: b9d42c2e-88ee-41f8-b798-f009ce7fe909
format: uuid
type: string
msp_logo_url:
description: logo uploaded by the MSP with advanced tier, only present if
provided
example: https://.../logo/b9d42c2e-88ee-41f8-b798-f009ce7fe909.jpeg
format: uri
readOnly: true
type: string
msp_name:
description: name of the msp the org belongs to
example: MSP
readOnly: true
type: string
name:
example: Org
type: string
orggroup_ids:
items:
format: uuid
type: string
type: array
session_expiry:
default: 1440
example: 1440
type: number
required:
- name
type: object
org_apitoken:
description: Org API Token
properties:
created_by:
description: email of the token creator / null if creator is deleted
example: user@mycorp.com
nullable: true
type: string
created_time:
example: 1626875902
readOnly: true
type: integer
id:
example: 497f6eca-6276-4993-bfeb-53ecbbba6f08
format: uuid
readOnly: true
type: string
key:
example: 1qkb...QQCL
readOnly: true
type: string
last_used:
example: 1690115110
nullable: true
readOnly: true
type: integer
name:
description: name of the token
example: org_token_xyz
nullable: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
privileges:
description: list of privileges the token has on the orgs/sites
example:
- org_id: a40f5d1f-d889-42e9-94ea-b9b33585fc6b
role: admin
scope: org
items:
$ref: '#/components/schemas/privilege_org'
minItems: 1
type: array
uniqueItems: true
src_ips:
description: to restrict where the API can be called from
example:
- 198.51.0.42/32
items:
type: string
maximum: 10
type: array
type: object
org_auto_rules:
description: auto_rules in org settings
properties:
expression:
description: '"[0:3]" // "abcdef" -> "abc"
"split(.)[1]" // "a.b.c" -> "b"
"split(-)[1][0:3]" // "a1234-b5678-c90" -> "b56"'
example: split(.)[1]
nullable: true
type: string
match_device_type:
default: ap
description: optional/additional filter
enum:
- ap
- switch
- gateway
- other
type: string
match_model:
description: optional/additional filter
type: string
model:
type: string
prefix:
example: XX-
nullable: true
type: string
src:
enum:
- name
- subnet
- lldp_system_name
- dns_suffix
- model
- lldp_port_desc
type: string
subnet:
type: string
suffix:
example: -YY
nullable: true
type: string
value:
type: string
required:
- src
type: object
org_crl_import_file:
properties:
file:
description: a binary .crl file
format: binary
type: string
json:
description: json string with name for .crl file (optional)
type: string
type: object
org_device_upgrade_info:
properties:
enable_p2p:
description: whether to allow local AP-to-AP FW upgrade
type: boolean
force:
description: whether to force upgrade when requested version is same as
running version
type: boolean
id:
description: unique id for the upgrade
format: uuid
readOnly: true
type: string
start_time:
description: upgrade start time in epoch
type: number
status:
description: status upgrade is in
enum:
- created
- in_progress
- completed
- canceled
title: org_device_upgrade_status
type: string
strategy:
$ref: '#/components/schemas/device_upgrade_strategy'
target_version:
description: version to upgrade to
minLength: 1
type: string
upgrades:
items:
properties:
site_id:
$ref: '#/components/schemas/site_id'
upgrade:
properties:
id:
format: uuid
type: string
start_time:
description: upgrade start time in epoch
type: integer
status:
description: status upgrade is in
enum:
- created
- in_progress
- completed
- cancelled
title: org_device_upgrade_item_status
type: string
targets:
properties:
download_requested:
items:
type: string
type: array
downloaded:
description: devices which have the firmware downloaded
items:
format: uuid
type: string
type: array
failed:
description: devices which have the failed to upgrade
items:
format: uuid
type: string
type: array
reboot_in_progress:
description: devices which are rebooting
items:
format: uuid
type: string
type: array
rebooted:
description: devices which have rebooted successfully
items:
format: uuid
type: string
type: array
scheduled:
description: devices which cloud has scheduled an upgrade
items:
format: uuid
type: string
type: array
skipped:
description: devices which have skipped upgrade since requested
version was same as running version. Use `force` to always
upgrade
items:
format: uuid
type: string
type: array
upgraded:
description: devices which have upgraded successfully
items:
format: uuid
type: string
type: array
type: object
type: object
type: object
type: array
required:
- id
title: org_device_upgrade_info
type: object
org_id:
example: a97c1b22-a4e9-411e-9bfd-d8695a0f9e61
format: uuid
readOnly: true
type: string
org_license_action:
properties:
amendment_id:
description: if `op`==`unamend`, the ID of the operation to cancel
format: uuid
type: string
dst_org_id:
description: if `op`==`amend`, the id of the org where the license is moved
format: uuid
type: string
notes:
description: if `op`==`annotate`
type: string
op:
description: to move a license, use the `amend` operation
enum:
- amend
- unamend
- delete
- annotate
title: org_license_action_operation
type: string
quantity:
description: if `op`==`amend`, the number of licenses to move
type: integer
subscription_id:
description: if `op`==`amend` or `op`==`delete`, the ID of the subscription
to use
type: string
required:
- op
type: object
org_setting:
description: Org Settings
properties:
auto_device_naming:
properties:
enable:
type: boolean
rules:
items:
$ref: '#/components/schemas/org_auto_rules'
nullable: true
type: array
type: object
auto_deviceprofile_assignment:
properties:
enable:
type: boolean
rules:
items:
$ref: '#/components/schemas/org_auto_rules'
nullable: true
type: array
type: object
auto_site_assignment:
properties:
enable:
type: boolean
rules:
items:
$ref: '#/components/schemas/org_auto_rules'
nullable: true
type: array
type: object
blacklist_url:
example: https://papi.s3.amazonaws.com/blacklist/xxx...
readOnly: true
type: string
cacerts:
description: list of PEM-encoded ca certs
items:
example: '-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END
CERTIFICATE-----'
type: string
type: array
celona:
properties:
api_key:
example: $2a$04$OkaLCoJn6rDjR8ha.oduQVDST3.kJNIrte
type: string
api_prefix:
example: cc3273fcb016470e
type: string
type: object
cloudshark:
properties:
apitoken:
example: accbd6f10c6d05c3
type: string
url:
description: if using CS Enteprise
example: https://cloudshark.hosted.domain
type: string
type: object
cradlepoint:
properties:
cp_api_id:
example: 84446d61-2206-4ea5-855a-0043f980be54
type: string
cp_api_key:
example: 79c329da9893e34099c7d8ad5cb9c941
type: string
ecm_api_id:
example: 73446d61-2206-4ea5-855a-0043f980be62
type: string
ecm_api_key:
example: 68b329da9893e34099c7d8ad5cb9c940
type: string
type: object
created_time:
readOnly: true
type: number
device_cert:
description: common device cert, optional
properties:
cert:
example: '-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END
CERTIFICATE-----'
type: string
key:
example: '-----BEGIN PRI...'
type: string
type: object
device_updown_threshold:
default: 0
description: "enable threshold-based device down delivery via \n1) device-updowns\
\ webhooks topic, \n2) Mist Alert Framework; e.g. send AP/SW/GW down event\
\ only if AP/SW/GW Up is not seen within the threshold in minutes; 0 -\
\ 240, default is 0 (trigger immediate)"
maximum: 30
minimum: 0
type: integer
disable_pcap:
default: false
description: whether to disallow Mist to analyze pcap files (this is required
for marvis pcap)
type: boolean
disable_remote_shell:
default: false
description: whether to disable remote shell access for an entire org
type: boolean
for_site:
readOnly: true
type: boolean
gateway_mgmt:
properties:
app_probing:
properties:
apps:
description: app-keys from /api/v1/const/applications
items:
type: string
type: array
type: object
app_usage:
type: boolean
host_out_policies:
description: 'optional, for some of the host-out traffic, the path preference
can be specified by default, ECMP will be used from all available
route/path available services: dns/mist/ntp'
properties:
dns:
properties:
path_preference:
type: string
type: object
mist:
properties:
path_preference:
type: string
type: object
ntp:
properties:
path_preference:
type: string
type: object
type: object
overlay_ip:
properties:
ip:
description: when it's going overlay, a routable IP to overlay will
be required
type: string
node1_ip:
description: for SSR HA cluster, another IP for node1 will be required,
too
type: string
type: object
type: object
id:
format: uuid
readOnly: true
type: string
installer:
properties:
allow_all_devices:
type: boolean
allow_all_sites:
type: boolean
extra_site_ids:
items:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
type: array
grace_period:
type: number
type: object
jcloud:
properties:
org_apitoken:
description: JCloud Org Token
type: string
org_apitoken_name:
description: JCloud Org Token Name
type: string
org_id:
description: JCloud Org ID
type: string
type: object
juniper:
$ref: '#/components/schemas/account_juniper_info'
mgmt:
description: management-related properties
properties:
mxtunnel_ids:
description: list of Mist Tunnels
items:
example: 08cd7499-5841-51c8-e663-fb16b6f3b45e
format: uuid
type: string
type: array
use_mxtunnel:
default: false
description: whether to use Mist Tunnel for mgmt connectivity, this
takes precedence over use_wxtunnel
type: boolean
use_wxtunnel:
default: false
description: whether to use wxtunnel for mgmt connectivity
type: boolean
type: object
mist_api:
properties:
secret_policy:
default: show
description: by default, API hides password/secrets when the user doesn't
have write access it can be more strictly controlled
enum:
- show
- strict
type: string
type: object
mist_nac:
properties:
cacerts:
description: the CA certs we use to verify client certs
example: '-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END
CERTIFICATE-----'
type: string
default_idp_id:
description: use this IDP when no explicit realm present in the incoming
username/CN OR when no IDP is explicitly mapped to the incoming realm.
type: string
eap_ssl_security_level:
default: 2
description: 'eap ssl security level
see https://www.openssl.org/docs/man1.1.1/man3/SSL_CTX_set_security_level.html#DEFAULT-CALLBACK-BEHAVIOUR'
maximum: 4
minimum: 1
type: integer
eu_only:
default: false
description: 'By default NAC POD failover considers all NAC pods available
around the globe, i.e. EU, US, or APAC based, failover happens based
on geo IP of the originating site.
For strict GDPR compliancy NAC POD failover would only happen between
the PODs located within the EU environment, and no authentication
would take place outside of EU. This is an org setting that is applicable
to WLANs, switch templates, mxedge clusters that have mist_nac enabled'
type: boolean
idps:
items:
properties:
exclude_realms:
description: when the IDP of mxedge-proxy type, exclude the following
realms from proxying in addition to other valid home realms
in this org
items:
type: string
type: array
id:
example: 4c441a74-d0de-32c4-78a7-a05e00d080ae
readOnly: true
type: string
user_realms:
description: 'which realm should trigger this IDP.
we extract user realm from
1. Username-AVP (`mist.com` from john@mist.com)
2. Cert CN'
items:
example: abc
type: string
type: array
type: object
type: array
server_cert:
description: radius server cert to be presented in EAP TLS
properties:
cert:
example: '-----BEGIN CERTIFICATE-----\nMIIFZjCCA06gAwIBAgIIP61/1qm/uDowDQYJKoZIhvcNAQELBQE\n-----END
CERTIFICATE-----'
type: string
key:
example: '-----BEGIN PRI...'
type: string
password:
description: private key password (optional)
type: string
type: object
use_ssl_port:
default: false
description: "By default NAS devices (switches/aps) and proxies(mxedge)\
\ are configured to use port TCP2083(radsec) to reach mist-nac. \n\
Set `use_ssl_port`==`true` to override that port with TCP43 (ssl),\
\ \nThis is a org level setting that is applicable to wlans, switch-templates,\
\ and mxedge-clusters that have mist-nac enabled"
type: boolean
type: object
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
mxedge_fips_enabled:
default: false
type: boolean
mxedge_mgmt:
$ref: '#/components/schemas/mxedge_mgmt'
org_id:
$ref: '#/components/schemas/org_id'
password_policy:
description: password policy
properties:
enabled:
default: false
description: whether the policy is enabled
type: boolean
freshness:
description: days, required if password policy is enabled
example: 60
type: integer
min_length:
default: 8
description: required password length
type: integer
requires_special_char:
default: false
description: whether to require special character
type: boolean
requires_two_factor_auth:
default: false
description: whether to require two-factor auth
type: boolean
type: object
pcap:
properties:
bucket:
example: myorg-pcap
type: string
max_pkt_len:
default: 128
description: max_len of non-management packets to capture
example: 128
maximum: 128
type: integer
type: object
pcap_bucket_verified:
type: boolean
security:
properties:
disable_local_ssh:
description: whether to disable local SSH (by default, local SSH is
enabled with allow_mist in Org is enabled
type: boolean
fips_zeroize_password:
description: password required to zeroize devices (FIPS) on site level
example: NUKETHESITE
type: string
limit_ssh_access:
default: false
description: whether to allow certain SSH keys to SSH into the AP (see
Site:Setting)
type: boolean
type: object
simple_alert:
$ref: '#/components/schemas/simple_alert'
site_id:
$ref: '#/components/schemas/site_id'
switch_mgmt:
properties:
ap_affinity_threshold:
default: 12
description: If the field is set in both site/setting and org/setting,
the value from site/setting will be used.
example: 10
type: integer
title: org_switch_mgmt
type: object
synthetic_test:
properties:
vlans:
additionalProperties:
properties:
custom_test_urls:
items:
type: string
type: array
disabled:
description: for some vlans where we don't want this to run
type: boolean
type: object
description: Property key is the vlan id or list of vlan ids
example:
10,20:
custom_test_urls:
- http://www.abc.com/
- https://10.3.5.1:8080/about
30,40:
disabled: true
type: object
wan_speedtest:
properties:
enabled:
default: false
type: boolean
port_ids:
description: by default, we'll identify the WAN ports automatically,
use this to only allow the following ports to run use `ge-0/0/1.3`
for vlan'ed ports
example:
- ge-0/0/0
- ge-0/0/1.3
items:
type: string
type: array
time_of_day:
description: by default, we'll look at the tarffic pattern and determine
when to run automatically
example: 02:00
type: string
type: object
title: org_synthetic_test_settings
type: object
tags:
description: list of tags
items:
type: string
type: array
ui_idle_timeout:
default: 0
description: automatically logout the user when UI session is inactive.
`0` means disabled
example: 10
maximum: 480
minimum: 0
type: integer
vpn_options:
properties:
as_base:
maximum: 4294967295
minimum: 1
type: integer
st_subnet:
default: 10.224.0.0/12
description: equiring /12 or bigger to support 16 private IPs for 65535
gateways
type: string
type: object
wan_pma:
properties:
enabled:
default: false
type: boolean
type: object
wired_pma:
properties:
enabled:
default: false
type: boolean
type: object
wireless_pma:
properties:
enabled:
default: true
type: boolean
type: object
type: object
org_site_sle_wifi:
properties:
end:
type: number
interval:
type: integer
limit:
type: integer
page:
type: integer
results:
items:
properties:
ap-availability:
type: number
ap-health:
type: number
capacity:
type: number
coverage:
type: number
num_aps:
type: number
num_clients:
type: number
roaming:
type: number
site_id:
$ref: '#/components/schemas/site_id'
successful-connect:
type: number
throughput:
type: number
time-to-connect:
type: number
required:
- site_id
title: org_site_sle_wifi_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- start
- end
- interval
- limit
- page
- total
- results
type: object
org_site_wan_wifi:
properties:
end:
type: number
interval:
type: integer
limit:
type: integer
page:
type: integer
results:
items:
properties:
application-health:
type: number
gateway-health:
type: number
num_clients:
type: number
num_gateways:
type: number
site_id:
$ref: '#/components/schemas/site_id'
wan-link-health:
type: number
required:
- site_id
title: org_site_sle_wan_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- start
- end
- interval
- limit
- page
- total
- results
type: object
org_site_wired_wifi:
properties:
end:
type: number
interval:
type: integer
limit:
type: integer
page:
type: integer
results:
items:
properties:
num_clients:
type: number
num_switches:
type: number
site_id:
$ref: '#/components/schemas/site_id'
switch-health:
type: number
switch-stc:
type: number
switch-throughput:
type: number
required:
- site_id
title: org_site_wifi_sle_item
type: object
minItems: 1
type: array
uniqueItems: true
start:
type: number
total:
type: integer
required:
- start
- end
- interval
- limit
- page
- total
- results
type: object
org_stats:
description: Org statistics
properties:
alarmtemplate_id:
format: uuid
type: string
allow_mist:
type: boolean
created_time:
type: number
id:
format: uuid
type: string
modified_time:
type: number
msp_id:
format: uuid
type: string
name:
type: string
num_devices:
type: integer
num_devices_connected:
type: integer
num_devices_disconnected:
type: integer
num_inventory:
type: integer
num_sites:
type: integer
orggroup_ids:
items:
format: uuid
type: string
type: array
session_expiry:
type: integer
sle:
items:
properties:
path:
type: string
user_minutes:
properties:
ok:
type: number
total:
type: number
required:
- total
- ok
type: object
required:
- path
type: object
minItems: 1
type: array
uniqueItems: true
required:
- orggroup_ids
- name
- id
- msp_id
- created_time
- modified_time
- allow_mist
- session_expiry
- alarmtemplate_id
- num_sites
- num_devices
- num_inventory
- num_devices_connected
- num_devices_disconnected
- sle
type: object
orggroup:
description: Organizations Group
properties:
created_time:
readOnly: true
type: number
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
name:
type: string
org_ids:
items:
format: uuid
readOnly: true
type: string
type: array
required:
- name
type: object
orggroup_id:
example: 832b1d74-9531-409b-ae37-4d7f3edbde92
format: uuid
type: string
other_device_update:
properties:
device_mac:
type: string
site_id:
$ref: '#/components/schemas/site_id'
type: object
other_device_update_multi:
properties:
macs:
description: The mac address of the peer device.
items:
type: string
type: array
op:
description: The operation being performed
enum:
- assign
- unassign
title: other_device_update_operation
type: string
site_id:
type: string
required:
- op
type: object
pcap_bucket:
properties:
bucket:
example: company-private-pcap
type: string
required:
- bucket
type: object
pcap_bucket_verify:
properties:
bucket:
example: company-private-pcap
type: string
verify_token:
example: eyJhbGciOiJIUzI1J9.eyJzdWIiOiIxMjM0joiMjgxOG5MDIyfQ.2rzcRvMA3Eg09NnjCAC-1EWMRtxAnFDM
type: string
required:
- bucket
- verify_token
type: object
portal_template:
description: Portal Template
properties:
accessCodeAlternateEmail:
default: Please provide valid alternate email
type: string
alignment:
description: "defines alignment on portal. \u201Cleft\u201D is default."
type: string
authButtonAmazon:
default: Sign in with Amazon
description: label for Amazon auth button
type: string
authButtonAzure:
default: Sign in with Azure
description: label for Azure auth button
type: string
authButtonEmail:
default: Sign in with Email
description: label for Email auth button
type: string
authButtonFacebook:
default: Sign in with Facebook
description: label for Facebook auth button
type: string
authButtonGoogle:
default: Sign in with Google
description: label for Google auth button
type: string
authButtonMicrosoft:
default: Sign in with Microsoft
description: label for Microsoft auth button
type: string
authButtonPassphrase:
description: label for passphrase auth button
type: string
authButtonSms:
default: Sign in with Text Message
description: label for SMS auth button
type: string
authButtonSponsor:
default: Sign in as Guest
description: label for Sponsor auth button
type: string
authLabel:
default: "\u201CConnect to WiFi with\u201D"
type: string
backLink:
default: Go back and edit request form
description: label of the link to go back to /logon
type: string
color:
default: "\u201C#1074bc\u201D"
type: string
colorDark:
default: "\u201C#0b5183\u201D"
type: string
colorLight:
default: "\u201C#3589c6\u201D"
type: string
company:
default: false
description: whether company field is required
type: boolean
companyError:
default: Please provide company name
description: error message when company not provided
type: string
companyLabel:
default: Company
description: label of company field
type: string
created_time:
readOnly: true
type: number
email:
default: false
description: whether email field is required
type: boolean
emailAccessDomainError:
default: Access is restricted by email domain
description: "error message when a user has valid social login but doesn\u2019\
t match specified email domains."
type: string
emailCancel:
default: Cancel
type: string
emailCodeError:
default: Please provide valid alternate email
type: string
emailError:
default: Please provide valid email
description: error message when email not provided
type: string
emailFieldLabel:
default: Enter your email address
type: string
emailLabel:
default: Email
description: label of email field
type: string
emailMessage:
default: We will email you an authentication code which you can use to connect
to the WiFi network.
type: string
emailSubmit:
default: "\u201CSend Access Code\u201D"
type: string
emailTitle:
default: "\u201CSign in with Email\u201D"
type: string
field1:
default: false
description: whether to ask field1
type: boolean
field1Error:
default: Please provide field1
description: error message when field1 not provided
type: string
field1Label:
default: Custom1
description: label of field1
type: string
field1Required:
default: false
description: whether field1 is required field
type: boolean
field2:
default: false
description: whether to ask field2
type: boolean
field2Error:
default: Please provide field2
description: error message when field2 not provided
type: string
field2Label:
default: Custom2
description: label of field2
type: string
field2Required:
default: false
description: whether field2 is required field
type: boolean
field3:
default: false
description: whether to ask field3
type: boolean
field3Error:
default: Please provide field3
description: error message when field3 not provided
type: string
field3Label:
default: Custom3
description: label of field3
type: string
field3Required:
default: false
description: whether field3 is required field
type: boolean
field4:
default: false
description: whether to ask field4
type: boolean
field4Error:
default: Please provide field4
description: error message when field4 not provided
type: string
field4Label:
default: Custom4
description: label of field4
type: string
field4Required:
default: false
description: whether field4 is required field
type: boolean
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
message:
default: Please enjoy the complimentary Wifi
type: string
modified_time:
readOnly: true
type: number
name:
default: false
description: whether name field is required
type: boolean
nameError:
default: Please provide your name
description: error message when name not provided
type: string
nameLabel:
default: Name
description: label of name field
type: string
optout:
description: "whether to display \u201CDo Not Store My Personal Information\u201D"
type: boolean
optoutLabel:
default: Do Not Store My Personal Information
type: string
org_id:
$ref: '#/components/schemas/org_id'
pageTitle:
default: Welcome
type: string
passphraseCancel:
default: Cancel
type: string
passphraseError:
default: Invalid Passphrase
description: error message when invalid passphrase is provided
type: string
passphraseLabel:
default: Passphrase
type: string
passphraseMessage:
default: Login using passphrase
type: string
passphraseSubmit:
default: Sign in
type: string
passphraseTitle:
default: Sign in with Passphrase
description: Title for passphrase details page
type: string
poweredBy:
default: true
description: "whether to show \u201CPowered by Mist\u201D"
type: boolean
requiredFieldLabel:
default: required
description: label to denote required field
type: string
signInLabel:
default: Sign In
description: label of the button to /signin
type: string
site_id:
$ref: '#/components/schemas/site_id'
smsCarrierDefault:
default: Please Select
type: string
smsCarrierError:
default: Please select a mobile carrier
type: string
smsCarrierFieldLabel:
default: Mobile Carrier
description: label for mobile carrier drop-down list
type: string
smsCodeCancel:
default: Cancel
description: Label for cancel confirmation code submission
type: string
smsCodeError:
default: Invalid Access Code
description: error message when confirmation code is invalid
type: string
smsCodeFieldLabel:
default: Confirmation Code
type: string
smsCodeMessage:
default: Enter the confirmation code
type: string
smsCodeSubmit:
default: Submit Code
description: Label for confirmation code submit button
type: string
smsCodeTitle:
default: Access Code
type: string
smsCountryFieldLabel:
description: "\u201CCountry Code\u201D"
type: string
smsCountryFormat:
default: "\u201C+1\u201D"
type: string
smsHaveAccessCode:
default: I have an access code
description: Label for checkbox to specify that the user has access code
type: string
smsMessageFormat:
default: Code {{code}} expires in {{duration}} minutes.
description: format of access code sms message. {{code}} and {{duration}}
are place holders and should be retained as is.
type: string
smsNumberCancel:
default: Cancel
description: label for canceling mobile details for SMS auth
type: string
smsNumberError:
default: Invalid Mobile Number
type: string
smsNumberFieldLabel:
default: Mobile Number
description: label for field to provide mobile number
type: string
smsNumberFormat:
default: "\u201C2125551212 (digits only)\u201D"
type: string
smsNumberMessage:
default: We will send an access code to your mobile number which you can
use to connect to the WiFi network. Message and data rates may apply.
type: string
smsNumberSubmit:
default: Sign In
description: label for submit button for code generation
type: string
smsNumberTitle:
default: Text Message Confirmation
description: Title for phone number details
type: string
smsUsernameFormat:
default: username
type: string
smsValidityDuration:
default: 5
description: how long confirmation code should be considered valid (in minutes)
type: number
sponsorAutoApproved:
default: Your request was approved.
type: string
sponsorAutoApprovedNote:
default: Your notification has been sent to
type: string
sponsorBackLink:
default: Go back and edit request form
type: string
sponsorCancel:
default: Cancel
type: string
sponsorEmail:
default: Please provide valid sponsor email
description: label for Sponsor Email
type: string
sponsorEmailError:
default: Please provide valid sponsor email
type: string
sponsorEmailTemplate:
description: "\u201Chtml template to replace/override default sponsor email\
\ template\u201D"
type: string
sponsorInfoApproved:
default: Your request was approved by
type: string
sponsorInfoDenied:
default: Your request was denied by
type: string
sponsorInfoPending:
default: Your notification has been sent to
type: string
sponsorName:
default: Sponsor Name
description: label for Sponsor Name
type: string
sponsorNameError:
default: "Please provide sponsor\u2019s name"
type: string
sponsorNotePending:
default: Please wait for them to acknowledge.
type: string
sponsorStatusApproved:
default: Your request was approved
description: text to display if sponsor approves request
type: string
sponsorStatusDenied:
default: Your request was denied
description: text to display when sponsor denies request
type: string
sponsorStatusPending:
default: Notification Sent
description: text to display if request is still pending
type: string
sponsorSubmit:
default: Notify Sponsor
description: submit button label to notify sponsor about guest request
type: string
sponsorsAutoApprovedNote:
default: Your notification has been sent to the sponsors."
type: string
sponsorsError:
default: Please select a sponsor
type: string
tos:
default: true
type: boolean
tosAcceptLabel:
default: I accept the Terms of Service
description: prefix of the label of the link to go to /tos
type: string
tosError:
default: Please review and accept terms of service
description: error message when tos not accepted
type: string
tosLink:
default: Terms of Service
description: label of the link to go to /tos
type: string
tosText:
default: terms of service
description: text of the Terms of Service
type: string
required:
- pageTitle
type: object
privilege_msp:
description: Privilieges settings
properties:
org_id:
description: if `scope`==`org`
format: uuid
type: string
org_name:
description: name of the org (for a site belonging to org)
type: string
orggroup_id:
description: if `scope`==`orggroup`
format: uuid
type: string
role:
description: access permissions
enum:
- admin
- write
- read
- helpdesk
- installer
title: privilege_msp_role
type: string
scope:
enum:
- org
- msp
- orggroup
title: privilege_msp_scope
type: string
views:
description: 'Custom roles restrict Org users to specific UI views. This
is useful for limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify view along with role when assigning privileges.
Below are the list of supported UI views. Note that this is UI only feature
Custom roles restrict Org users to specific UI views. This is useful for
limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify `view` along with `role` when assigning
privileges.
Below are the list of supported UI views. Note that this is UI only feature
| UI View | Description |
| --- | --- |
| `reporting` | full access to all analytics tools |
| `marketing` | can view analytics and location maps |
| `location` | can view and manage location maps |
| `security` | can view and manage WLAN, rogues and authentication |
| `switch_admin` | can view and manage Switch ports |
| `mxedge_admin` | can view and manage Mist edges and Mist tunnels |
| `lobby_admin` | full access to Org and Site Pre-shared keys |'
enum:
- reporting
- marketing
- location
- security
- switch_admin
- mxedge_admin
- lobby_admin
title: privilege_msp_view
type: string
required:
- role
- scope
title: ''
type: object
privilege_org:
description: Privilieges settings
properties:
role:
description: access permissions
enum:
- admin
- write
- read
- helpdesk
- installer
title: privilege_org_role
type: string
scope:
enum:
- org
- site
- sitegroup
title: privilege_org_scope
type: string
site_id:
description: if `scope`==`site`
format: uuid
type: string
sitegroup_id:
description: if `scope`==`sitegroup`
format: uuid
type: string
views:
description: 'Custom roles restrict Org users to specific UI views. This
is useful for limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify view along with role when assigning privileges.
Below are the list of supported UI views. Note that this is UI only feature
Custom roles restrict Org users to specific UI views. This is useful for
limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify `view` along with `role` when assigning
privileges.
Below are the list of supported UI views. Note that this is UI only feature
| UI View | Description |
| --- | --- |
| `reporting` | full access to all analytics tools |
| `marketing` | can view analytics and location maps |
| `location` | can view and manage location maps |
| `security` | can view and manage WLAN, rogues and authentication |
| `switch_admin` | can view and manage Switch ports |
| `mxedge_admin` | can view and manage Mist edges and Mist tunnels |
| `lobby_admin` | full access to Org and Site Pre-shared keys |'
enum:
- reporting
- marketing
- location
- security
- switch_admin
- mxedge_admin
- lobby_admin
title: privilege_org_views
type: string
required:
- role
- scope
title: ''
type: object
privilege_self:
description: Privilieges settings
properties:
msp_id:
$ref: '#/components/schemas/msp_id'
msp_logo_url:
description: logo of the MSP (if the MSP belongs to an Advanced tier)
readOnly: true
type: string
msp_name:
description: name of the MSP (if the org belongs to an MSP)
nullable: true
readOnly: true
type: string
msp_url:
description: custom url of the MSP (if the MSP belongs to an Advanced tier)
readOnly: true
type: string
name:
description: name of the org/site/MSP depending on object scope
type: string
org_id:
$ref: '#/components/schemas/org_id'
org_name:
description: name of the org (for a site belonging to org)
type: string
orggroup_ids:
description: if `scope`==`orggroup`
items:
$ref: '#/components/schemas/orggroup_id'
type: array
role:
description: access permissions
enum:
- admin
- write
- read
- helpdesk
- installer
type: string
scope:
enum:
- msp
- org
- orggroup
- site
- sitegroup
type: string
site_id:
$ref: '#/components/schemas/site_id'
sitegroup_ids:
items:
$ref: '#/components/schemas/sitegroup_id'
type: array
views:
description: 'Custom roles restrict Org users to specific UI views. This
is useful for limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify view along with role when assigning privileges.
Below are the list of supported UI views. Note that this is UI only feature
Custom roles restrict Org users to specific UI views. This is useful for
limiting UI access of Org users.
You can invite a new user or update existing users in your Org to this
custom role. For this, specify `view` along with `role` when assigning
privileges.
Below are the list of supported UI views. Note that this is UI only feature
| UI View | Description |
| --- | --- |
| `reporting` | full access to all analytics tools |
| `marketing` | can view analytics and location maps |
| `location` | can view and manage location maps |
| `security` | can view and manage WLAN, rogues and authentication |
| `switch_admin` | can view and manage Switch ports |
| `mxedge_admin` | can view and manage Mist edges and Mist tunnels |
| `lobby_admin` | full access to Org and Site Pre-shared keys |'
enum:
- reporting
- marketing
- location
- security
- switch_admin
- mxedge_admin
- lobby_admin
type: string
required:
- role
- scope
title: ''
type: object
protect_re:
description: "restrict inbound-traffic to host\nwhen enabled, all traffic that\
\ is not essential to our operation will be dropped \ne.g. ntp / dns / traffic\
\ to mist will be allowed by default, if dhcpd is enabled, we'll make sure\
\ it works"
properties:
allowed_services:
description: optionally, services we'll allow
example:
- icmp
- ssh
items:
type: string
type: array
custom:
items:
$ref: '#/components/schemas/protect_re_custom'
type: array
enabled:
default: false
description: "when enabled, all traffic that is not essential to our operation\
\ will be dropped\ne.g. ntp / dns / traffic to mist will be allowed by\
\ default\n if dhcpd is enabled, we'll make sure it works"
type: boolean
trusted_hosts:
description: optionally, host/subnets we'll allow traffic to/from
items:
example: 10.242.3.0/24
type: string
type: array
type: object
protect_re_custom:
description: custom acls
properties:
port_range:
default: '0'
description: matched dst port, "0" means any
example: 80,1035-1040
type: string
protocol:
default: any
enum:
- tcp
- udp
- icmp
- any
type: string
subnet:
items:
example: 10.1.2.0/24
type: string
type: array
type: object
proxy:
description: Proxy Configuration to talk to Mist
properties:
url:
example: http://proxy.corp.com:8080/
type: string
type: object
psk:
description: PSK
properties:
admin_sso_id:
description: sso id for psk created from psk portal
readOnly: true
type: string
created_time:
readOnly: true
type: number
email:
description: email to send psk expiring notifications to
type: string
expire_time:
default: null
description: Expire time for this PSK key (epoch time in seconds). Default
`null` (as no expiration)
example: 1614990263
nullable: true
type: integer
expiry_notification_time:
description: Number of days before psk is expired. Used as to when to start
sending reminder notification when the psk is about to expire
type: integer
id:
format: uuid
readOnly: true
type: string
mac:
description: if `usage`==`single`, the mac that this PSK ties to, empty
if `auto-binding`
type: string
max_usage:
default: 0
description: For Org PSK Only. Max concurrent users for this PSK key. Default
is 0 (unlimited)
type: integer
modified_time:
readOnly: true
type: number
name:
type: string
note:
type: string
notify_expiry:
default: false
description: If set to true, reminder notification will be sent when psk
is about to expire
type: boolean
notify_on_create_or_edit:
description: If set to true, notification will be sent when psk is created
or edited
type: boolean
old_passphrase:
description: previous passphrase of the PSK if it has been rotated
type: string
org_id:
$ref: '#/components/schemas/org_id'
passphrase:
description: passphrase of the PSK (8-63 character or 64 in hex)
maxLength: 64
minLength: 8
type: string
role:
maxLength: 32
minLength: 0
type: string
site_id:
$ref: '#/components/schemas/site_id'
ssid:
description: SSID this PSK should be applicable to
type: string
usage:
default: multi
enum:
- multi
- single
title: psk_usage
type: string
vlan_id:
description: VLAN for this PSK key
type: integer
required:
- name
- passphrase
- ssid
type: object
psk_portal:
properties:
auth:
default: sso
description: 'Note: `sponsor` not yet available'
enum:
- sso
- sponsor
title: psk_portal_auth
type: string
bg_image_url:
type: string
cleanup_psk:
default: false
description: used to cleanup exited psk when portal delete or ssid changed
type: boolean
created_time:
readOnly: true
type: integer
expire_time:
description: unit min
type: integer
expiry_notification_time:
description: Number of days before psk is expired. Used as to when to start
sending reminder notification when the psk is about to expire
type: integer
hide_psks_created_by_other_admins:
default: false
description: only if `type`==`admin`
type: boolean
id:
readOnly: true
type: string
max_usage:
default: 0
description: '`max_usage`==`0` means unlimited'
type: integer
modified_time:
readOnly: true
type: integer
name:
type: string
notify_expiry:
description: If set to true, reminder notification will be sent when psk
is about to expire
type: boolean
notify_on_create_or_edit:
default: false
type: boolean
org_id:
$ref: '#/components/schemas/org_id'
passphrase_rules:
properties:
alphaberts_enabled:
default: true
type: boolean
length:
maximum: 63
minimum: 8
type: integer
max_length:
description: 'for valid `max_length` and `min_length`, passphrase size
is set randomly from that range.
- if `max_length` and/or `min_length` are invalid, passphrase size
is equal to `length` parameter
- if `length` is not set or is invalid, default passphrase size is
8.
valid `max_length`, `min_length`, `length` should be an integer between
8 to 63. Also, `max_length` > `min_length`'
maximum: 63
minimum: 8
type: integer
min_length:
description: 'for valid `max_length` and `min_length`, passphrase size
is set randomly from that range.
- if `max_length` and/or `min_length` are invalid, passphrase size
is equal to `length` parameter
- if `length` is not set or is invalid, default passphrase size is
8.
valid `max_length`, `min_length`, `length` should be an integer between
8 to 63. Also, `max_length` > `min_length`'
maximum: 63
minimum: 8
type: integer
numerics_enabled:
default: true
type: boolean
symbols:
example: ()[]{}_%@#&$
type: string
symbols_enabled:
default: true
type: boolean
title: psk_portal_passphrase_rules
type: object
required_fields:
description: what information to ask for (email is required by default)
items:
type: string
type: array
role:
type: string
ssid:
description: intended SSID
type: string
sso:
description: if `auth`==`sso`
properties:
allowed_roles:
description: // allowed roles for accessing psk portal, if none, any
role is permitted
items:
type: string
type: array
idp_cert:
type: string
idp_sign_algo:
type: string
idp_sso_url:
type: string
issuer:
type: string
nameid_format:
type: string
role_mapping:
additionalProperties:
type: string
description: Property key is the role name, property value is the SSO
Attribute
type: object
use_sso_role_for_psk_role:
description: if enabled, the `role` above will be ignored
type: boolean
title: psk_portal_sso
type: object
template_url:
description: UI customization
type: string
thumbnail_url:
type: string
type:
description: for personal psk portal
enum:
- byod
- admin
title: psk_portal_type
type: string
vlan_id:
type: integer
required:
- name
- ssid
type: object
psks:
items:
$ref: '#/components/schemas/psk'
type: array
uniqueItems: true
psks_import_file:
properties:
file:
format: binary
type: string
type: object
radius_acct_server:
properties:
host:
description: ip / hostname of RADIUS server
example: 1.2.3.4
type: string
keywrap_enabled:
type: boolean
keywrap_format:
enum:
- hex
- ascii
example: hex
type: string
keywrap_kek:
example: '1122334455'
type: string
keywrap_mack:
example: '1122334455'
type: string
port:
default: 1813
description: Acct port of RADIUS server
example: 1813
type: integer
secret:
description: secret of RADIUS server
example: testing123
type: string
required:
- host
- port
- secret
type: object
radius_auth_server:
description: Authentication Server
properties:
host:
description: ip / hostname of RADIUS server
example: 1.2.3.4
type: string
keywrap_enabled:
type: boolean
keywrap_format:
enum:
- hex
- ascii
type: string
keywrap_kek:
example: '1122334455'
type: string
keywrap_mack:
example: '1122334455'
type: string
port:
default: 1812
description: Auth port of RADIUS server
example: 1812
type: integer
secret:
description: secret of RADIUS server
example: testing123
type: string
required:
- host
- port
- secret
type: object
radsec:
description: Radsec settings
properties:
coa_enabled:
default: false
type: boolean
enabled:
type: boolean
idle_timeout:
example: 60
type: integer
mxcluster_ids:
description: 'To use Org mxedges when this WLAN does not use mxtunnel, specify
their mxcluster_ids.
Org mxedge(s) identified by mxcluster_ids'
items:
example: 572586b7-f97b-a22b-526c-8b97a3f609c4
format: uuid
type: string
type: array
proxy_hosts:
description: 'default is site.mxedge.radsec.proxy_hosts which must be a
superset of all wlans[*].radsec.proxy_hosts
when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges)
are used irrespective of use_site_mxedge'
items:
example: mxedge1.local
type: string
type: array
server_name:
description: name of the server to verify (against the cacerts in Org Setting).
Only if not Mist Edge.
example: radsec.abc.com
type: string
servers:
description: List of Radsec Servers. Only if not Mist Edge.
items:
properties:
host:
example: 1.1.1.1
type: string
port:
example: 1812
type: integer
type: object
type: array
uniqueItems: true
use_mxedge:
description: use mxedge(s) as radsecproxy
type: boolean
use_site_mxedge:
default: false
description: To use Site mxedges when this WLAN does not use mxtunnel
type: boolean
type: object
recaptcha:
properties:
flavor:
enum:
- google
- hcaptcha
type: string
required:
type: boolean
sitekey:
type: string
type: object
recaptcha_flavor:
default: google
description: flavor of the captcha
enum:
- hcaptcha
- google
example: hcaptcha
type: string
recover:
properties:
email:
example: test@mistsys.com
maxLength: 64
type: string
recaptcha:
description: see https://www.google.com/recaptcha/
type: string
recaptcha_flavor:
$ref: '#/components/schemas/recaptcha_flavor'
required:
- email
type: object
remote_syslog:
properties:
archive:
properties:
files:
example: 20
type: integer
size:
example: 5m
type: string
type: object
console:
properties:
contents:
items:
$ref: '#/components/schemas/remote_syslog_content'
type: array
type: object
enabled:
default: false
type: boolean
files:
items:
properties:
archive:
properties:
files:
example: 10
type: integer
size:
example: 5m
type: string
type: object
contents:
items:
$ref: '#/components/schemas/remote_syslog_content'
type: array
explicit_priority:
type: boolean
file:
example: file-name
title: snmp_file
type: string
match:
example: '!alarm|ntp|errors.crc_error[chan]'
type: string
structured_data:
type: boolean
title: syslog_file_config
type: object
type: array
network:
description: if source_address is configured, will use the vlan firstly
otherwise use source_ip
example: default
type: string
send_to_all_servers:
default: false
type: boolean
servers:
example:
- facility: config
host: syslogd.internal
port: 514
protocol: udp
severity: info
tag: ''
items:
properties:
contents:
items:
$ref: '#/components/schemas/remote_syslog_content'
type: array
explicit_priority:
type: boolean
facility:
enum:
- any
- authorization
- conflict-log
- change-log
- config
- daemon
- dfc
- kernel
- interactive-commands
- ftp
- firewall
- external
- pfe
- ntp
- security
- user
example: config
type: string
host:
example: syslogd.internal
type: string
match:
example: '!alarm|ntp|errors.crc_error[chan]'
type: string
port:
default: 514
type: integer
protocol:
default: udp
enum:
- udp
- tcp
type: string
routing_instance:
example: routing-instance-name
type: string
severity:
enum:
- any
- alert
- emergency
- critical
- warning
- info
- notice
- error
type: string
source_address:
description: if source_address is configured, will use the vlan firstly
otherwise use source_ip
type: string
structured_data:
type: boolean
tag:
type: string
title: syslog_server
type: object
type: array
time_format:
enum:
- millisecond
- year
- year millisecond
example: millisecond
type: string
users:
items:
properties:
contents:
items:
$ref: '#/components/schemas/remote_syslog_content'
type: array
match:
example: '"!alarm|ntp|errors.crc_error[chan]"'
type: string
user:
example: '*'
type: string
title: remote_syslog_user
type: object
type: array
type: object
remote_syslog_content:
properties:
facility:
enum:
- any
- authorization
- conflict-log
- change-log
- config
- daemon
- dfc
- kernel
- interactive-commands
- ftp
- firewall
- external
- pfe
- ntp
- security
- user
example: config
type: string
severity:
enum:
- any
- alert
- emergency
- critical
- warning
- info
- notice
- error
example: warning
type: string
title: remote_syslog_content
type: object
replace_device:
properties:
discard:
description: "attributes that you don\u2019t want to copy"
items:
type: string
type: array
inventory_mac:
description: MAC Address of the inventory that will be replacing the old
one. It has to be claimed and unassigned
example: 5c5b35000301
type: string
mac:
description: MAC Address of the device to replace
example: 5c5b35000101
type: string
site_id:
description: the site_id of the device to be replaced
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
type: string
tunterm_port_config:
$ref: '#/components/schemas/tunterm_port_config'
response_inventory:
properties:
added:
items:
example: 6JG8E-PTFV2-A9Z2N
type: string
type: array
duplicated:
items:
example: DVH4V-SNMSZ-PDXBR
type: string
type: array
error:
items:
example: PO1025335ohoh
type: string
type: array
inventory_added:
items:
properties:
mac:
example: 5c5b35000018
type: string
magic:
example: 6JG8EPTFV2A9Z2N
type: string
model:
example: AP41
type: string
serial:
example: FXLH2015150025
type: string
type:
example: ap
type: string
required:
- mac
- magic
- model
- serial
- type
type: object
minItems: 1
type: array
uniqueItems: true
inventory_duplicated:
items:
properties:
mac:
example: 5c5b35000012
type: string
magic:
example: DVH4VSNMSZPDXBR
type: string
model:
example: AP41
type: string
serial:
example: FXLH2015150027
type: string
type:
example: ap
type: string
required:
- mac
- magic
- model
- serial
- type
type: object
minItems: 1
type: array
uniqueItems: true
readOnly: true
type: object
rf_client_type:
enum:
- sdkclient
- client
- asset
type: string
rf_diag:
description: RF Diag
properties:
duration:
default: 180
description: recording length in seconds, max is 180. Default value is also
180.
maximum: 180
type: integer
mac:
description: if `type`==`client` or `asset`, mac of the device
type: string
name:
description: name of the recording, the name of the sdk client would be
a good default choice
type: string
sdkclient_id:
description: if `type`==`sdkclient`, sdkclient_id of this recording
format: uuid
type: string
type:
$ref: '#/components/schemas/rf_client_type'
required:
- name
- type
type: object
rf_diag_info:
description: RF Diag response
items:
properties:
asset_id:
description: if `type`==`asset`, id of the asset
format: uuid
type: string
asset_name:
description: if `type`==`asset`, name of the asset
type: string
client_name:
description: if `type`==`client`, hostname of the client
type: string
duration:
description: recording length in seconds, max is 120
type: integer
end_time:
description: timestamp of end of recording
type: integer
frame_count:
description: Number of frames in the output
type: integer
id:
readOnly: true
type: string
mac:
description: if `type`==`client` or `asset`, mac of the device
type: string
map_id:
format: uuid
type: string
name:
type: string
next:
description: Optional. id of the next recoding if present. Only valid
for site survey.
type: string
raw_events:
description: URL to a JSON file that contains array of raw location diag
events
type: string
ready:
description: "whether it\u2019s ready for playback"
type: boolean
sdkclient_id:
description: if `type`==`sdkclient`, sdkclient_id of this recording
format: uuid
type: string
sdkclient_name:
description: if `type`==`sdkclient`, name of the sdkclient
type: string
sdkclient_uuid:
description: if `type`==`sdkclient`, device_id of sdkclient
format: uuid
type: string
start_time:
description: timestamp of the recording (the start)
type: integer
type:
$ref: '#/components/schemas/rf_client_type'
url:
description: URL to a JSON file that contains an array of frames, each
frame is the same format
type: string
required:
- name
- type
- map_id
- url
- raw_events
- start_time
- end_time
- duration
- frame_count
- ready
type: object
minItems: 1
type: array
uniqueItems: true
rf_template:
description: RF Template
properties:
ant_gain_24:
type: integer
ant_gain_5:
type: integer
band_24:
$ref: '#/components/schemas/ap_radio_band'
band_24_usage:
default: '24'
description: If `band_24_usage`==`5`, by default, `band_5` properties is
used, if specific channel/bandwidth/power/... If desired, use `band_5_on_24_radio`
enum:
- '24'
- '5'
- auto
type: string
band_5:
$ref: '#/components/schemas/ap_radio_band'
band_5_on_24_radio:
$ref: '#/components/schemas/ap_radio_band'
country_code:
description: optional, country code to use. If specified, this gets applied
to all sites using the RF Template
type: string
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
model_specific:
additionalProperties:
properties:
band_24:
$ref: '#/components/schemas/ap_radio_band'
band_5:
$ref: '#/components/schemas/ap_radio_band'
type: object
description: overwrites for a specific model. If a band is specified, it
will shadow the default. Property key is the model name (e.g. "AP63")
type: object
modified_time:
readOnly: true
type: number
name:
description: The name of the RF template
type: string
org_id:
$ref: '#/components/schemas/org_id'
scanning_enabled:
description: whether scanning radio is enabled
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
required:
- name
type: object
root_password:
properties:
root_password:
minLength: 1
type: string
required:
- root_password
type: object
rrm:
description: RRM
properties:
band_24:
additionalProperties:
$ref: '#/components/schemas/rrm_band'
description: proposal on band 2.4G, key is ap_id, value is the proposal
type: object
band_24_metric:
$ref: '#/components/schemas/rrm_band_metric'
band_5:
additionalProperties:
$ref: '#/components/schemas/rrm_band'
description: proposal on band 5G, key is ap_id, value is the proposal
type: object
band_5_metric:
$ref: '#/components/schemas/rrm_band_metric'
band_6:
additionalProperties:
$ref: '#/components/schemas/rrm_band'
description: proposal on band 6G, key is ap_id, value is the proposal
type: object
band_6_metric:
$ref: '#/components/schemas/rrm_band_metric'
rftemplate:
$ref: '#/components/schemas/rf_template'
rftemplate_id:
format: uuid
type: string
rftemplate_name:
type: string
status:
enum:
- unknown
- updating
- ready
title: rrm_status
type: string
timestamp:
description: time where the status was updated
type: number
required:
- band_24
- band_24_metric
- band_5
- band_5_metric
- rftemplate
- rftemplate_id
- rftemplate_name
- status
- timestamp
type: object
rrm_band:
properties:
bandwidth:
$ref: '#/components/schemas/dot11_bandwidth'
channel:
description: proposed channel
type: integer
curr_bandwidht:
description: current bandwidth
enum:
- 20
- 40
- 80
- 160
type: integer
curr_channel:
description: current channel
type: integer
curr_power:
description: current tx power
type: integer
curr_usage:
description: current radio band
minLength: 1
type: string
power:
description: proposed tx power
type: integer
usage:
description: proposed radio band
minLength: 1
type: string
type: object
rrm_band_metric:
properties:
cochannel_neighbors:
description: average number of co-channel neighbors
type: number
density:
description: defined by how APs can hear from one and another, 0 - 1 (everyone
can hear everyone)
maximum: 1
minimum: 0
type: number
interferences:
additionalProperties:
properties:
radar:
type: number
type: object
description: Property key is the channel number
example:
'149':
radar: 0.3
'153':
radar: 0.2
type: object
neighbors:
description: average number of neighbors
type: number
noise:
description: average noise in dBm
type: number
required:
- cochannel_neighbors
- density
- neighbors
- noise
type: object
rssi_zone:
description: RSSI Zone
properties:
created_time:
readOnly: true
type: number
devices:
description: List of devices and the respective RSSI values to be considered
in the zone
items:
properties:
device_id:
example: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
format: uuid
type: string
rssi:
description: RSSI threshold
example: 0
type: integer
required:
- device_id
- rssi
type: object
type: array
uniqueItems: true
for_site:
readOnly: true
type: boolean
id:
example: b069b358-4c97-5319-1f8c-7c5ca64d6ab1
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
description: The name of the zone
example: zone name
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
required:
- devices
type: object
rssi_zones:
items:
$ref: '#/components/schemas/rssi_zone'
type: array
sdk_invite_sms:
properties:
number:
type: string
required:
- number
type: object
sdkclient_stats:
description: SDK Client statistics
properties:
id:
example: de87bf9d-183f-e383-cc68-6ba43947d403
format: uuid
type: string
last_seen:
description: last seen timestamp
example: 1428939600
type: number
map_id:
description: map_id of the sdk client (if known), or null
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
nullable: true
type: string
name:
description: name of the sdk client (if provided)
example: John's iPhone
type: string
network_connection:
$ref: '#/components/schemas/sdkclient_stats_network_connection'
uuid:
description: uuid of the sdk client
example: ada72f8f-1643-e5c6-94db-f2a5636f1a64
format: uuid
type: string
x:
description: x (in pixels) of user location on the map (if known)
example: 60
type: number
y:
description: y (in pixels) of user location on the map (if known)
example: 80
type: number
required:
- id
- uuid
- last_seen
- network_connection
type: object
sdkclient_stats_array:
items:
$ref: '#/components/schemas/sdkclient_stats'
type: array
sdkclient_stats_network_connection:
description: various network connection info for the SDK client (if known, else
omitted), with RSSI in dBm, and signal level as
properties:
mac:
type: string
rssi:
type: number
signal_level:
type: number
type:
type: string
required:
- type
- rssi
- mac
- signal_level
type: object
sdkclient_wireless_stats:
description: SDK Client Details statistics
properties:
id:
format: uuid
type: string
last_seen:
description: last seen timestamp
type: number
map_id:
description: map_id of the sdk client (if known), or null
format: uuid
nullable: true
type: string
name:
description: name of the sdk client (if provided)
type: string
network_connection:
$ref: '#/components/schemas/sdkclient_stats_network_connection'
uuid:
description: uuid of the sdk client
format: uuid
type: string
vbeacons:
description: "list of beacon_id\u2019s of the sdk client is in and since\
\ when (if known)"
items:
properties:
id:
format: uuid
type: string
since:
type: number
required:
- id
- since
type: object
minItems: 1
title: sdkclient_wireless_stats_vbeacons
type: array
uniqueItems: true
x:
description: x (in pixels) of user location on the map (if known)
type: number
y:
description: y (in pixels) of user location on the map (if known)
type: number
zones:
description: "list of zone_id\u2019s of the sdk client is in and since when\
\ (if known)"
items:
properties:
id:
format: uuid
type: string
since:
type: number
required:
- id
- since
type: object
minItems: 1
title: sdkclient_wireless_stats_zone
type: array
uniqueItems: true
required:
- id
- uuid
- last_seen
type: object
sdkinvite:
description: SDK invite
properties:
created_time:
readOnly: true
type: number
enabled:
default: true
type: boolean
expire_time:
type: integer
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
description: name, will show up in mobile
type: string
org_id:
$ref: '#/components/schemas/org_id'
quota:
description: number of time this invite can be used
type: integer
quota_limited:
default: false
description: whether quota limiting is enabled
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
required:
- name
type: object
sdktemplate:
description: SDK Template
properties:
bg_image:
type: string
btn_flr_bgcolor:
type: string
created_time:
readOnly: true
type: number
default:
description: whether this is the default template when there are multiple
templates
type: boolean
for_site:
readOnly: true
type: boolean
header_txt:
type: string
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
description: name for identification purpose
type: string
org_id:
$ref: '#/components/schemas/org_id'
search_txtcolor:
type: string
site_id:
$ref: '#/components/schemas/site_id'
welcome_msg:
type: string
required:
- name
type: object
secpolicy:
description: "Security Policy is designed to audit / catch discripancies between\
\ \u201Cwhat\u2019s intended to be running\u201D versus \u201Cwhat\u2019s\
\ actually running\u201D in a network. Many big organizations have separated\
\ Security and IT team (for good reasons). Each site can be assigned a security\
\ policy. Whenever an AP is provisioned, the configuration will be checked\
\ against the security policy. Any violations will be flagged in Device Config\
\ History where you can search for the when and where the violation occurs."
properties:
created_time:
readOnly: true
type: number
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
wlans:
items:
$ref: '#/components/schemas/wlan'
minItems: 1
type: array
uniqueItems: true
type: object
service:
description: WIP
properties:
addresses:
description: if `type`==`custom`, ip subnets
items:
type: string
type: array
app_caetgories:
description: 'when `type`==`app_caetgories`
list of application categories are available through /api/v1/const/app_categories'
example:
- Sports
items:
type: string
type: array
app_subcategories:
description: 'when `type`==`app_caetgories`
list of application categories are available through /api/v1/const/app_subcategories'
example:
- Shopping
items:
type: string
type: array
apps:
description: "when `type`==`apps`\nlist of applications are available through:\n\
\ - /api/v1/const/applications,\n - /api/v1/const/gateway_applications\n\
\ - /insight/top-app-by-bytes?wired=true"
example:
- office365
- okta
items:
type: string
type: array
created_time:
readOnly: true
type: integer
description:
type: string
dscp:
description: when `traffic_type`==`custom`
type: integer
failover_policy:
default: revertable
enum:
- revertable
- non-revertable
title: service_failover_policy
type: string
hostnames:
description: if `type`==`custom`, web filtering
items:
example: example.com
type: string
type: array
id:
format: uuid
type: string
max_jitter:
description: when `traffic_type`==`custom`, for uplink selection
type: integer
max_latency:
description: when `traffic_type`==`custom`, for uplink selection
type: string
max_loss:
description: when `traffic_type`==`custom`, for uplink selection
type: integer
modified_time:
readOnly: true
type: integer
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
sle_enabled:
default: false
description: whether to enable measure SLE
type: boolean
specs:
description: 'when `type`==`addresses` or `type`==`hostnames`
if `type`==`custom`, specs is optional. If it doesn''t exist, http and
https is assumed.'
items:
properties:
port_range:
example: 8080,8443
type: string
protocol:
default: any
description: '`https`/ `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`.
`protocol_number` is between 1-254'
example: tcp
type: string
title: service_spec
type: object
type: array
uniqueItems: true
ssr_relaxed_tcp_state_enforcement:
default: false
type: boolean
traffic_class:
default: best_effort
description: when `traffic_type`==`custom`
enum:
- best_effort
- high
- medium
- low
title: service_traffic_class
type: string
traffic_type:
default: data_best_effort
description: 'values from `/api/v1/consts/traffic_types`
* when `type`==`apps`, we''ll choose traffic_type automatically
* when `type`==`addresses` or `type`==`hostnames`, you can provide your
own settings (optional)'
type: string
type:
default: custom
enum:
- apps
- app_categories
- custom
- urls
title: service_type
type: string
urls:
description: 'when `type`==`urls
no need for spec as URL can encode the ports being used`'
items:
type: string
type: array
type: object
service_packets:
description: list of service data packets heard from the asset/ beacon
items:
properties:
service_data:
description: ata from service data
type: string
service_uuid:
description: UUID from service data
type: string
title: service_packet
type: object
type: array
service_path_event:
properties:
mac:
example: 90ec7734b374
type: string
model:
example: SSR120
type: string
org_id:
$ref: '#/components/schemas/org_id'
policy:
example: INTERNET
type: string
port_id:
example: ge-1/0/6
type: string
site_id:
$ref: '#/components/schemas/site_id'
text:
example: Peer Path Down
type: string
timestamp:
example: 1697037328.651775
type: number
type:
example: GW_SERVICE_PATH_REMOVE
type: string
version:
example: 6.1.5-14.lts
type: string
vpn_name:
example: Syracuse_HUB
type: string
vpn_path:
example: Syracuse_HUB-Wan0
type: string
type: object
service_policies:
items:
$ref: '#/components/schemas/service_policy'
type: array
service_policy:
properties:
action:
$ref: '#/components/schemas/allow_deny'
appqoe:
description: For SRX Only
properties:
enabled:
default: false
type: boolean
type: object
ewf:
items:
properties:
alert_only:
type: boolean
block_message:
example: Access to this URL Category has been blocked
type: string
enabled:
default: false
type: boolean
profile:
default: strict
enum:
- strict
- standard
title: service_policy_ewf_rule_profile
type: string
title: service_policy_ewf_rule
type: object
type: array
idp:
$ref: '#/components/schemas/idp_config'
local_routing:
default: false
description: access within the same VRF
type: boolean
name:
type: string
path_preferences:
description: 'by default, we derive all paths available and use them
optionally, you can customize by using `path_preference`'
type: string
servicepolicy_id:
description: used to link servicepolicy defined at org level and overwrite
some attributes
format: uuid
type: string
services:
items:
type: string
type: array
tenants:
items:
type: string
type: array
type: object
simple_alert:
description: 'Set of heuristic rules will be enabled when marvis subscription
is not available.
It triggers when, in a Z minute window, there are more than Y distinct client
encountring over X failures'
properties:
arp_failure:
properties:
client_count:
default: 10
type: integer
duration:
default: 20
description: failing within minutes
maximum: 60
minimum: 5
type: integer
incident_count:
default: 10
type: integer
type: object
dhcp_failure:
properties:
client_count:
default: 10
type: integer
duration:
default: 10
description: failing within minutes
maximum: 60
minimum: 5
type: integer
incident_count:
default: 20
type: integer
type: object
dns_failure:
properties:
client_count:
default: 20
type: integer
duration:
default: 10
description: failing within minutes
maximum: 60
minimum: 5
type: integer
incident_count:
default: 30
type: integer
type: object
type: object
site:
description: Site
properties:
address:
description: full address of the site
example: 1601 S. Deanza Blvd., Cupertino, CA, 95014
type: string
alarmtemplate_id:
description: Alarm Template ID, this takes precedence over the Org-level
alarmtemplate_id
example: 684dfc5c-fe77-2290-eb1d-ef3d677fe168
format: uuid
nullable: true
type: string
aptemplate_id:
description: AP Template ID, used by APs
example: 16bdf952-ade2-4491-80b0-85ce506c760b
type: string
country_code:
description: country code for the site (for AP config generation), in two-character
example: US
type: string
created_time:
readOnly: true
type: number
gatewaytemplate_id:
description: Gateway Template ID, used by gateways
example: 6f9b2e75-9b2f-b5ae-81e3-e14c76f1a90f
format: uuid
nullable: true
type: string
id:
format: uuid
readOnly: true
type: string
latlng:
$ref: '#/components/schemas/lat_lng'
modified_time:
readOnly: true
type: number
name:
example: Mist Office
type: string
networktemplate_id:
description: Network Template ID, this takes precedence over Site Settings
example: 12ae9bd2-e0ab-107b-72e8-a7a005565ec2
format: uuid
nullable: true
type: string
notes:
description: optional, any notes about the site
type: string
org_id:
$ref: '#/components/schemas/org_id'
rftemplate_id:
description: RF Template ID, this takes precedence over Site Settings
example: bb8a9017-1e36-5d6c-6f2b-551abe8a76a2
format: uuid
nullable: true
type: string
secpolicy_id:
description: SecPolicy ID
example: 3bcd0beb-5d0a-4cbd-92c1-14aea91e98ef
format: uuid
nullable: true
type: string
sitegroup_ids:
description: sitegroups this site belongs to
items:
format: uuid
type: string
type: array
sitetemplate_id:
description: Site Template ID
format: uuid
type: string
timezone:
description: Timezone the site is at
example: America/Los_Angeles
type: string
required:
- name
type: object
site_auto_upgrade:
description: Auto Upgrade Settings
properties:
custom_versions:
additionalProperties:
type: string
description: custom versions for different models. Property key is the model
name (e.g. "AP41")
example:
AP21: stable
AP41: 0.1.5135
AP61: 0.1.7215
type: object
day_of_week:
$ref: '#/components/schemas/day_of_week'
enabled:
default: false
description: whether auto upgrade should happen (Note that Mist may auto-upgrade
if the version is not supported)
type: boolean
time_of_day:
description: any / HH:MM (24-hour format), upgrade will happen within up
to 1-hour from this time
example: '12:00'
type: string
version:
default: stable
description: desired version
enum:
- beta
- stable
- custom
example: beta
type: string
type: object
site_engagement:
description: "**Note**: if hours does not exist, it\u2019s treated as everyday\
\ of the week, 00:00-23:59. Currently we don\u2019t allow multiple ranges\
\ for the same day\n\n**Note**: default values for `dwell_tags`: passerby\
\ (1,300) bounce (301, 14400) engaged (14401, 28800) stationed (28801, 42000)\n\
\n**Note**: default values for `dwell_tag_names`: passerby = \u201CPasserby\u201D\
, bounce = \u201CVisitor\u201D, engaged = \u201CAssociates\u201D, stationed\
\ = \u201CAssets\u201D"
properties:
dwell_tag_names:
properties:
bounce:
example: Bounce
type: string
engaged:
example: Engaged
type: string
passerby:
example: Passer By
type: string
stationed:
example: Stationed
type: string
required:
- bounce
- engaged
- passerby
- stationed
type: object
dwell_tags:
description: add tags to visits within the duration (in seconds), available
tags (passerby, bounce, engaged, stationed)
properties:
bounce:
example: 'null'
nullable: true
type: string
engaged:
example: 300-14400
nullable: true
type: string
passerby:
example: 'null'
nullable: true
type: string
stationed:
example: 14400-43200
nullable: true
type: string
type: object
hours:
description: "hours of operation filter, the available days (mon, tue, wed,\
\ thu, fri, sat, sun). \n\n**Note**: If the dow is not defined then it\u2019\
s treated as 00:00-23:59."
properties:
fri:
example: 09:00-17:00
type: string
mon:
example: 09:00-17:00
type: string
sat:
example: 09:00-12:00
type: string
sun:
example: 09:00-12:00
type: string
thu:
example: 09:00-17:00
type: string
tue:
example: 09:00-17:00
type: string
wed:
example: 09:00-17:00
type: string
type: object
max_dwell:
default: 43200
description: max time, default is 43200(12h), max is 68400 (18h)
example: 43200
maximum: 68400
minimum: 1
type: integer
min_dwell:
description: min time
minimum: 0
type: integer
required:
- dwell_tag_names
type: object
site_id:
example: 441a1214-6928-442a-8e92-e1d34b8ec6a6
format: uuid
readOnly: true
type: string
site_mxtunnel:
description: Site MxTunnel
properties:
additional_mxtunnels:
additionalProperties:
properties:
clusters:
description: for AP, how to connect to tunterm or radsecproxy
example:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
items:
properties:
name:
type: string
tunterm_hosts:
items:
type: string
type: array
type: object
type: array
hello_interval:
default: 60
description: in seconds, used as heartbeat to detect if a tunnel is
alive. AP will try another peer after missing N hellos specified
by hello_retries
example: 60
maximum: 300
minimum: 1
type: integer
hello_retries:
default: 7
example: 3
maximum: 30
minimum: 2
type: integer
protocol:
enum:
- ip
- udp
example: udp
type: string
vlan_ids:
example:
- 300
- 310
- 320
items:
type: integer
type: array
type: object
type: object
ap_subnets:
description: list of subnets where we allow AP to establish Mist Tunnels
from
items:
example: 0.0.0.0/0
type: string
type: array
auto_preemption:
properties:
day_of_week:
$ref: '#/components/schemas/day_of_week'
enabled:
default: false
type: boolean
time_of_day:
example: '12:00'
type: string
type: object
clusters:
description: for AP, how to connect to tunterm or radsecproxy
example:
- name: primary,
tunterm_hosts:
- mxedge1
- mxedge2.local
items:
properties:
name:
type: string
tunterm_hosts:
items:
type: string
type: array
type: object
type: array
created_time:
readOnly: true
type: number
enabled:
type: boolean
for_site:
readOnly: true
type: boolean
hello_interval:
default: 60
description: in seconds, used as heartbeat to detect if a tunnel is alive.
AP will try another peer after missing N hellos specified by hello_retries
example: 60
maximum: 300
minimum: 1
type: integer
hello_retries:
default: 7
example: 3
maximum: 30
minimum: 2
type: integer
hosts:
description: hostnames or IPs where a Mist Tunnel will use as the Peer (i.e.
they are reachable from AP)
items:
type: string
type: array
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
mtu:
default: 0
description: 0 to enable PMTU, 552-1500 to start PMTU with a lower MTU
example: 1100
maximum: 1500
minimum: 0
type: integer
org_id:
$ref: '#/components/schemas/org_id'
protocol:
enum:
- udp
- ip
example: udp
type: string
radsec:
properties:
acct_servers:
items:
$ref: '#/components/schemas/radius_acct_server'
type: array
auth_servers:
items:
$ref: '#/components/schemas/radius_auth_server'
type: array
enabled:
default: false
type: boolean
use_mxedge:
type: boolean
type: object
site_id:
$ref: '#/components/schemas/site_id'
vlan_ids:
description: list of vlan_ids that will be use
example:
- 3
- 5
- 6
- 7-9
items:
anyOf:
- type: integer
- type: string
type: array
type: object
site_occupancy_analytics:
description: Occupancy Analytics settings
properties:
assets_enabled:
default: false
description: indicate whether named BLE assets should be included in the
zone occupancy calculation
type: boolean
clients_enabled:
default: true
description: indicate whether connected WiFi clients should be included
in the zone occupancy calculation
type: boolean
min_duration:
default: 3000
description: minimum duration
example: 3000
type: integer
sdkclients_enabled:
default: false
description: indicate whether SDK clients should be included in the zone
occupancy calculation
type: boolean
unconnected_clients_enabled:
default: false
description: indicate whether unconnected WiFi clients should be included
in the zone occupancy calculation
type: boolean
type: object
site_rogue:
description: Rogue site settings
properties:
enabled:
default: false
description: whether or not rogue detection is enabled
type: boolean
honeypot_enabled:
default: false
description: whether or not honeypot detection is enabled
type: boolean
min_duration:
default: 10
description: minimum duration for a bssid to be considered rogue
example: 10
maximum: 59
type: integer
min_rssi:
default: -80
description: "minimum RSSI for an AP to be considered rogue (ignoring APs\
\ that\u2019s far away)"
example: -80
minimum: -85
type: integer
whitelisted_bssids:
description: 'list of BSSIDs to whitelist. Ex: "cc-:8e-:6f-:d4-:bf-:16",
"cc-8e-6f-d4-bf-16", "cc-73-*", "cc:82:*"'
example:
- NeighborSSID
items:
type: string
type: array
whitelisted_ssids:
description: list of SSIDs to whitelist
example:
- cc:8e:6f:d4:bf:16
- cc-8e-6f-d4-bf-16
- cc-73-*
- cc:82:*
items:
type: string
type: array
type: object
site_setting:
description: Site Settings
properties:
additional_config_cmds:
description: additional CLI commands to override additional CLIs from the
netwtemplate
items:
type: string
type: array
analytic:
properties:
enabled:
default: false
description: enable Advanced Analytic feature (using SUB-ANA license)
type: boolean
title: site_setting_analytic
type: object
ap_matching:
properties:
enabled:
type: boolean
rules:
example:
- eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
items:
properties:
match_model:
example: AP12
type: string
name:
example: AP12
type: string
port_config:
additionalProperties:
$ref: '#/components/schemas/ap_port_config'
description: Property key is the interface(s) (e.g. "eth1,eth2")
type: object
type: object
type: array
title: site_setting_ap_matching
type: object
ap_port_config:
properties:
model_specific:
additionalProperties:
additionalProperties:
$ref: '#/components/schemas/ap_port_config'
description: Property key is the interface(s) (e.g. "eth1,eth2")
type: object
description: Property key is the AP model (e.g "AP32")
example:
AP32:
eth1,eth2:
port_vlan_id: 1
vlan_ids:
- 1
- 10
- 50
type: object
type: object
auto_placement:
description: if we're able to determine its x/y/orientation, this will be
populated
properties:
orientation:
example: 45
type: number
x:
example: 30
type: number
y:
example: 60
type: number
title: site_setting_auto_placement
type: object
auto_preemption:
$ref: '#/components/schemas/auto_preemption'
auto_upgrade:
$ref: '#/components/schemas/site_auto_upgrade'
blacklist_url:
example: https://papi.s3.amazonaws.com/blacklist/xxx...
readOnly: true
type: string
ble_config:
$ref: '#/components/schemas/ap_ble'
config_auto_revert:
default: false
description: whether to enable ap auto config revert
type: boolean
created_time:
readOnly: true
type: number
critical_url_monitoring:
description: you can define some URLs that's critical to site operaitons
the latency will be captured and considered for site health
properties:
enabled:
default: true
type: boolean
monitors:
items:
properties:
url:
example: http://50.1.3.5:8080
type: string
vlan_id:
default: 1
type: integer
type: object
type: array
title: site_setting_critical_url_monitoring
type: object
device_updown_threshold:
default: 0
description: sending AP_DISCONNECTED event in device-updowns only if AP_CONNECTED
is not seen within the threshold, in minutes
example: 0
maximum: 30
minimum: 0
type: integer
dns_servers:
description: list of NTP servers
items:
type: string
type: array
dns_suffix:
description: list of NTP servers
items:
type: string
type: array
enable_channel_144:
default: false
deprecated: true
description: whether to enable channel 144 (some older clients may not support
it)
type: boolean
engagement:
$ref: '#/components/schemas/site_engagement'
evpn_options:
$ref: '#/components/schemas/junos_evpn_options'
flags:
additionalProperties:
type: string
description: name/val pair objects for location engine to use
type: object
for_site:
readOnly: true
type: boolean
gateway:
description: 'when Templates are not used, Site Setting holds settings for
multiple device types and they can differ
to set device-type specific configs, use this
whatever is defined under `gateway` will overwrite/shadow the one at root-level'
type: object
gateway_additional_config_cmds:
description: 'additional CLI commands to append to the generated config
for gateways
**Note**: no check is done'
items:
type: string
type: array
gateway_mgmt:
$ref: '#/components/schemas/site_setting_gateway_mgmt'
id:
format: uuid
readOnly: true
type: string
led:
$ref: '#/components/schemas/ap_led'
modified_time:
readOnly: true
type: number
mxedge:
description: site mist edges form a cluster of radsecproxy servers
properties:
mist_das:
$ref: '#/components/schemas/mxedge_das'
radsec:
$ref: '#/components/schemas/mxcluster_radsec'
title: site_setting_mxedge
type: object
mxedge_mgmt:
$ref: '#/components/schemas/mxedge_mgmt'
mxtunnels:
$ref: '#/components/schemas/site_mxtunnel'
networks:
additionalProperties:
$ref: '#/components/schemas/junos_networks'
description: Property key is the network name
type: object
no_system_defined_port_usages:
default: false
description: if system-default port usages are not desired - namely, ap
/ iot / uplink
type: boolean
ntp_servers:
description: list of NTP servers
items:
type: string
title: site_setting_ntp_servers
type: array
occupancy:
$ref: '#/components/schemas/site_occupancy_analytics'
org_id:
$ref: '#/components/schemas/org_id'
ospf_areas:
additionalProperties:
$ref: '#/components/schemas/junos_ospf_areas'
description: OSPF Areas can be configured both in Site Level (Switch/Gateway
Template) or Device (Switch/Gateway) Level
title: site_setting_ospf_areas
type: object
persist_config_on_device:
default: false
description: whether to store the config on AP
type: boolean
port_mirroring:
additionalProperties:
$ref: '#/components/schemas/junos_port_mirroring'
description: 'Property key is the port mirroring instance name
port_mirroring can be added under site/settings. It takes interface and
ports as input for ingress, interface as input for egress and can take
interface and port as output.'
type: object
port_usages:
additionalProperties:
$ref: '#/components/schemas/junos_port_usages'
description: Property key is the port usage name
properties:
dynamic:
$ref: '#/components/schemas/dynamic_port_usage'
type: object
protect_re:
$ref: '#/components/schemas/protect_re'
proxy:
$ref: '#/components/schemas/proxy'
radio_config:
$ref: '#/components/schemas/ap_radio'
radius_config:
$ref: '#/components/schemas/junos_radius_config'
remote_syslog:
$ref: '#/components/schemas/remote_syslog'
report_gatt:
default: false
description: whether AP should periodically connect to BLE devices and report
GATT device info (device name, manufacturer name, serial number, battery
%, temperature, humidity)
type: boolean
rogue:
$ref: '#/components/schemas/site_rogue'
rtsa:
description: managed mobility
properties:
app_waking:
default: false
type: boolean
disable_dead_reckoning:
type: boolean
disable_pressure_sensor:
default: false
type: boolean
enabled:
type: boolean
track_asset:
default: false
description: asset tracking related
type: boolean
title: site_setting_rtsa
type: object
simple_alert:
$ref: '#/components/schemas/simple_alert'
site_id:
$ref: '#/components/schemas/site_id'
skyatp:
properties:
enabled:
type: boolean
send_ip_mac_mapping:
type: boolean
title: site_setting_skyatp
type: object
srx_app:
properties:
enabled:
default: false
type: boolean
title: site_setting_srx_app
type: object
ssh_keys:
description: when limit_ssh_access = true in Org Setting, list of SSH public
keys provided by Mist Support to install onto APs (see Org:Setting)
items:
example: ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA...Wxa6p6UW0ZbcP john@host
type: string
title: site_setting_ssh_keys
type: array
ssr:
$ref: '#/components/schemas/site_setting_ssr'
status_portal:
properties:
enabled:
default: false
type: boolean
hostnames:
items:
example: my.misty.com
type: string
type: array
title: site_setting_status_portal
type: object
switch:
description: 'when Templates are not used, Site Setting holds settings for
multiple device types and they can differ
to set device-type specific configs, use this
whatever is defined under `switch` will overwrite/shadow the one at root-level'
title: site_setting_switch
type: object
switch_matching:
$ref: '#/components/schemas/switch_matching'
switch_mgmt:
$ref: '#/components/schemas/config_switch'
synthetic_test:
properties:
vlans:
items:
properties:
custom_test_urls:
example:
- http://www.abc.com/
- https://10.3.5.1:8080/about
items:
type: string
type: array
disabled:
default: false
description: for some vlans where we don't want this to run
type: boolean
vlan_ids:
example:
- 10
- 20
items:
type: integer
type: array
type: object
type: array
title: site_setting_synthetic_test
type: object
track_anonymous_devices:
default: false
description: "whether to track anonymous BLE assets (requires \u2018track_asset\u2019\
\ enabled)"
type: boolean
tunterm_monitoring:
items:
$ref: '#/components/schemas/tunterm_monitoring'
type: array
tunterm_monitoring_disabled:
default: false
type: boolean
tunterm_multicast_config:
properties:
mdns:
properties:
enabled:
default: false
type: boolean
vlan_ids:
example:
- 2
- 3
- 5
items:
type: integer
type: array
title: site_setting_tunterm_multicast_config_mdns
type: object
multicast_all:
default: false
type: boolean
ssdp:
properties:
enabled:
default: false
type: boolean
vlan_ids:
example:
- 2
- 3
- 5
items:
type: integer
type: array
title: site_setting_tunterm_multicast_config_ssdp
type: object
title: site_setting_tunterm_multicast_config
type: object
vars:
$ref: '#/components/schemas/vars'
vna:
properties:
enabled:
default: false
description: enable Virtual Network Assistant (using SUB-VNA license).
This applied to AP / Switch / Gateway
type: boolean
title: site_setting_vna
type: object
vrf_instances:
additionalProperties:
$ref: '#/components/schemas/junos_vrf_instance'
description: Property key is the network name
example:
guest:
extra_routes:
0.0.0.0/0:
via: 192.168.31.1
networks:
- guest
type: object
vrrp_groups:
additionalProperties:
$ref: '#/components/schemas/junos_vrrp_group'
description: Property key is the vrrp group
type: object
vs_instances:
additionalProperties:
properties:
networks:
items:
example: guest
type: string
type: array
type: object
description: 'virtual-switch (for EX92xx and QFX5130)
all the networks not included here will be placed in default `evpn_vs`
virtual-switch RI
Property key is the instance name'
type: object
wan_vna:
properties:
enabled:
default: false
type: boolean
title: site_setting_wan_vna
type: object
watched_station_url:
example: https://papi.s3.amazonaws.com/watched_station/xxx...
readOnly: true
type: string
whitelist_url:
example: https://papi.s3.amazonaws.com/whitelist/xxx...
readOnly: true
type: string
wids:
$ref: '#/components/schemas/site_wids'
wifi:
$ref: '#/components/schemas/site_wifi'
wired_vna:
properties:
enabled:
default: false
type: boolean
title: site_setting_wired_vna
type: object
zone_occupancy_alert:
$ref: '#/components/schemas/site_zone_occupancy_alert'
type: object
site_setting_gateway_mgmt:
description: Gateway Site settings
properties:
admin_sshkeys:
description: for SSR only, as direct root access is not allowed
items:
type: string
type: array
app_probing:
properties:
apps:
items:
type: string
type: array
custom_apps:
items:
properties:
address:
description: if `protocol`==`icmp`
example: 192.168.1.1
type: string
app_type:
type: string
hostname:
description: if `protocol`==`http`
example:
- www.abc.com
items:
type: string
type: array
name:
example: pos_app
type: string
network:
example: lan
type: string
protocol:
default: http
enum:
- http
- udp
type: string
url:
description: if `protocol`==`http`
example: www.abc.com
type: string
vrf:
example: lan
type: string
type: object
type: array
enabled:
type: boolean
title: site_setting_gateway_mgmt_app_probing
type: object
app_usage:
description: consumes uplink bandwidth, requires WA license
type: boolean
auto_signature_update:
properties:
day_of_week:
$ref: '#/components/schemas/day_of_week'
enable:
default: true
type: boolean
time_of_day:
description: optional, Mist will decide the timing
type: string
type: object
config_revert_timer:
default: 10
description: he rollback timer for commit confirmed
maximum: 30
minimum: 1
type: number
probe_hosts:
format: ipv4
items:
type: string
type: array
root_password:
description: for SRX only
type: string
security_log_source_address:
type: string
security_log_source_interface:
type: string
type: object
site_setting_ssr:
properties:
conductor_hosts:
items:
example: '"1.1.1.1", "2.2.2.2"'
type: string
type: array
disable_stats:
type: boolean
type: object
site_stats:
description: Site statistics
properties:
address:
type: string
alarmtemplate_id:
format: uuid
type: string
country_code:
type: string
created_time:
type: number
id:
format: uuid
type: string
lat:
type: number
latlng:
$ref: '#/components/schemas/lat_lng'
lng:
type: number
modified_time:
type: number
msp_id:
type: string
name:
type: string
networktemplate_id:
format: uuid
type: string
num_ap:
type: integer
num_ap_connected:
type: integer
num_clients:
type: integer
num_devices:
type: integer
num_devices_connected:
type: integer
num_gateway:
type: integer
num_gateway_connected:
type: integer
num_switch:
type: integer
num_switch_connected:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
rftemplate_id:
format: uuid
type: string
secpolicy_id: {}
sitegroup_ids:
items:
format: uuid
type: string
type: array
timezone:
type: string
tzoffset:
type: integer
required:
- address
- alarmtemplate_id
- country_code
- created_time
- id
- lat
- latlng
- lng
- modified_time
- msp_id
- name
- networktemplate_id
- num_ap
- num_ap_connected
- num_clients
- num_devices
- num_devices_connected
- num_gateway
- num_gateway_connected
- num_switch
- num_switch_connected
- org_id
- rftemplate_id
- sitegroup_ids
- timezone
- tzoffset
type: object
site_template:
properties:
auto_upgrade:
properties:
day_of_week:
$ref: '#/components/schemas/day_of_week'
enabled:
type: boolean
time_of_day:
type: string
version:
type: string
type: object
name:
type: string
vars:
$ref: '#/components/schemas/vars'
type: object
site_wids:
description: WIDS site settings
properties:
repeated_auth_failures:
properties:
duration:
description: window where a trigger will be detected and action to be
taken (in seconds)
example: 60
type: number
threshold:
description: count of events to trigger
type: integer
type: object
type: object
site_wifi:
description: Wi-Fi site settings
properties:
cisco_enabled:
default: true
type: boolean
disable_11k:
default: false
description: whether to disable 11k
type: boolean
disable_radios_when_power_constrained:
default: false
type: boolean
enable_arp_spoof_check:
default: false
description: when proxy_arp is enabled, check for arp spoofing.
type: boolean
enable_channel_144:
default: false
deprecated: true
description: whether to enable channel 144 (some older clients may not support
it)
type: boolean
enable_shared_radio_scanning:
default: true
type: boolean
enabled:
default: true
description: enable WIFI feature (using SUB-MAN license)
type: boolean
locate_connected:
default: true
description: whether to locate connected clients
type: boolean
locate_unconnected:
default: false
description: whether to locate unconnected clients
type: boolean
mesh_allow_dfs:
default: false
description: whether to allow Mesh to use DFS channels. For DFS channels,
Remote Mesh AP would have to do CAC when scanning for new Base AP, which
is slow and will distrupt the connection. If roaming is desired, keep
it disabled.
type: boolean
mesh_enable_crm:
default: false
description: used to enable/disable CRM
type: boolean
mesh_enabled:
default: false
description: whether to enable Mesh feature for the site
type: boolean
mesh_psk:
description: optional passphrase of mesh networking, default is generated
randomly
nullable: true
type: string
mesh_ssid:
description: optional ssid of mesh networking, default is based on site_id
nullable: true
type: string
proxy_arp:
description: default / enabled / disabled
enum:
- default
- enabled
- disabled
nullable: true
type: string
type: object
site_zone_occupancy_alert:
description: Zone Occupancy alert site settings
properties:
email_notifiers:
description: list of email addresses to send email notifications when the
alert threshold is reached
example:
- foo@juniper.net
- bar@juniper.net
items:
type: string
type: array
enabled:
default: false
description: indicate whether zone occupancy alert is enabled for the site
type: boolean
threshold:
default: 5
description: sending zone-occupancy-alert webhook message only if a zone
stays non-compliant (i.e. actual occupancy > occupancy_limit) for a minimum
duration specified in the threshold, in minutes
example: 5
maximum: 30
minimum: 0
type: integer
type: object
sitegroup:
description: Sites Group
properties:
created_time:
readOnly: true
type: number
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_ids:
items:
format: uuid
type: string
type: array
required:
- name
type: object
sitegroup_id:
example: 3c708be3-9422-4695-b729-babdbd2f7615
format: uuid
type: string
sle_classifier:
properties:
impact:
properties:
num_aps:
type: number
num_users:
type: number
total_aps:
type: number
total_users:
type: number
required:
- num_users
- num_aps
- total_users
- total_aps
type: object
interval:
type: number
name:
minLength: 1
type: string
samples:
properties:
degraded:
items:
type: number
type: array
duration:
items:
type: number
type: array
total:
items:
type: number
type: array
required:
- duration
- total
- degraded
type: object
x_label:
minLength: 1
type: string
y_label:
minLength: 1
type: string
required:
- name
- x_label
- y_label
- interval
- impact
type: object
sle_classifier_summary:
properties:
classifier:
$ref: '#/components/schemas/sle_classifier'
end:
type: number
failures:
items:
type: object
type: array
impact:
properties:
num_aps:
type: number
num_users:
type: number
total_aps:
type: number
total_users:
type: number
required:
- num_users
- num_aps
- total_users
- total_aps
type: object
metric:
minLength: 1
type: string
start:
type: number
required:
- start
- end
- metric
- classifier
- impact
- failures
type: object
sle_histogram:
properties:
data:
items:
properties:
range:
items:
nullable: true
type: number
type: array
value:
type: number
required:
- value
type: object
minItems: 1
type: array
uniqueItems: true
end:
type: number
metric:
minLength: 1
type: string
start:
type: number
x_label:
minLength: 1
type: string
y_label:
minLength: 1
type: string
required:
- metric
- start
- end
- data
- x_label
- y_label
type: object
sle_impact_summary:
properties:
ap:
items:
properties:
ap_mac:
minLength: 1
type: string
degraded:
type: number
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
required:
- ap_mac
- name
- duration
- degraded
- total
title: sle_impact_summary_ap
minItems: 1
type: array
uniqueItems: true
band:
items:
properties:
band:
minLength: 1
type: string
degraded:
type: number
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
required:
- band
- name
- duration
- degraded
- total
title: sle_impact_summary_band
minItems: 1
type: array
uniqueItems: true
classifier:
type: string
device_os:
items:
properties:
degraded:
type: number
device_os:
type: string
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
required:
- device_os
- name
- duration
- degraded
- total
title: sle_impact_summary_device_os
minItems: 1
type: array
uniqueItems: true
device_type:
items:
properties:
degraded:
type: number
device_type:
type: string
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
required:
- device_type
- name
- duration
- degraded
- total
title: sle_impact_summary_device_type
minItems: 1
type: array
uniqueItems: true
end:
type: number
failure:
type: string
metric:
minLength: 1
type: string
start:
type: number
wlan:
items:
properties:
degraded:
type: number
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
wlan_id:
minLength: 1
type: string
required:
- wlan_id
- name
- duration
- degraded
- total
title: sle_impact_summary_wlan
minItems: 1
type: array
uniqueItems: true
required:
- start
- end
- metric
- classifier
- failure
- ap
- wlan
- device_os
- device_type
- band
type: object
sle_impacted_applications:
properties:
apps:
items:
properties:
app:
type: string
degraded:
type: integer
duration:
type: integer
name:
type: string
threshold:
type: integer
total:
type: integer
type: object
type: array
classifier:
type: string
end:
type: integer
failure:
type: string
limit:
type: string
metric:
type: string
page:
type: integer
start:
type: integer
total_count:
type: integer
type: object
sle_impacted_aps:
properties:
aps:
items:
properties:
ap_mac:
minLength: 1
type: string
degraded:
type: number
duration:
type: number
name:
minLength: 1
type: string
total:
type: number
required:
- ap_mac
- name
- duration
- degraded
- total
minItems: 1
type: array
uniqueItems: true
classifier:
type: string
end:
type: number
failure:
type: string
limit:
type: number
metric:
minLength: 1
type: string
page:
type: number
start:
type: number
total_count:
type: number
required:
- start
- end
- metric
- classifier
- failure
- total_count
- page
- limit
- aps
type: object
sle_impacted_chassis:
properties:
chassis:
items:
properties:
chassis:
type: string
degraded:
type: number
duration:
type: number
role:
type: string
switch_mac:
type: string
switch_name:
type: string
total:
type: number
type: object
type: array
classifier:
type: string
end:
type: integer
failure:
type: string
limit:
type: integer
metric:
type: string
page:
type: integer
start:
type: integer
total_count:
type: integer
type: object
sle_impacted_clients:
properties:
classifier:
type: string
clients:
items:
properties:
degraded:
type: integer
duration:
type: integer
mac:
type: string
name:
type: string
switches:
items:
properties:
interfaces:
items:
type: string
type: array
switch_mac:
type: string
switch_name:
type: string
type: object
type: array
total:
type: integer
type: object
type: array
end:
type: integer
failure:
type: string
limit:
type: integer
metric:
type: string
page:
type: integer
start:
type: integer
total_count:
type: integer
type: object
sle_impacted_gateways:
properties:
classifier:
type: string
end:
type: integer
failure:
type: string
gateways:
items:
properties:
degraded:
type: number
duration:
type: integer
gateway_mac:
type: string
gateway_model:
type: string
gateway_version:
type: string
name:
type: string
total:
type: integer
type: object
type: array
limit:
type: integer
metric:
type: string
page:
type: integer
start:
type: integer
total_count:
type: integer
type: object
sle_impacted_interfaces:
properties:
classifier:
type: string
end:
type: integer
failure:
type: string
interfaces:
items:
properties:
degraded:
type: number
duration:
type: number
interface_name:
type: string
switch_mac:
type: string
switch_name:
type: string
total:
type: number
type: object
type: array
limit:
type: integer
metric:
type: string
page:
type: integer
start:
type: integer
total_count:
type: integer
type: object
sle_impacted_switches:
properties:
classifier:
type: string
end:
type: integer
failure:
type: string
limit:
type: integer
metric:
type: string
page:
type: integer
start:
type: integer
switches:
items:
properties:
degraded:
type: number
duration:
type: number
interface:
items:
type: string
type: array
name:
type: string
switch_mac:
type: string
switch_model:
type: string
switch_version:
type: string
total:
type: number
type: object
type: array
total_count:
type: integer
type: object
sle_impacted_users:
properties:
classifier:
type: string
end:
type: number
failure:
type: string
limit:
type: number
metric:
minLength: 1
type: string
page:
type: number
start:
type: number
total_count:
type: number
users:
items:
properties:
ap_mac:
minLength: 1
type: string
ap_name:
minLength: 1
type: string
degraded:
type: number
device_os:
minLength: 1
type: string
device_type:
minLength: 1
type: string
duration:
type: number
mac:
minLength: 1
type: string
name:
minLength: 1
type: string
ssid:
minLength: 1
type: string
total:
type: number
wlan_id:
minLength: 1
type: string
required:
- name
- mac
- ap_mac
- ap_name
- wlan_id
- ssid
- device_type
- device_os
- duration
- degraded
- total
minItems: 1
type: array
uniqueItems: true
required:
- start
- end
- metric
- classifier
- failure
- total_count
- page
- limit
- users
type: object
sle_summary:
properties:
classifiers:
items:
$ref: '#/components/schemas/sle_classifier'
type: array
uniqueItems: true
end:
type: number
events:
items:
type: object
type: array
impact:
properties:
num_aps:
type: number
num_users:
type: number
total_aps:
type: number
total_users:
type: number
required:
- num_users
- num_aps
- total_users
- total_aps
type: object
sle:
properties:
interval:
type: number
name:
minLength: 1
type: string
samples:
properties:
degraded:
items:
type: number
type: array
total:
items:
type: number
type: array
value:
items:
type: number
type: array
required:
- total
- degraded
- value
type: object
x_label:
minLength: 1
type: string
y_label:
minLength: 1
type: string
required:
- name
- x_label
- y_label
- interval
- samples
type: object
start:
type: number
required:
- start
- end
- sle
- impact
- classifiers
- events
type: object
sle_threshold:
properties:
default:
readOnly: true
type: number
direction:
minLength: 1
readOnly: true
type: string
maximum:
type: number
metric:
minLength: 1
readOnly: true
type: string
minimum:
type: number
threshold:
minLength: 1
readOnly: true
type: string
units:
minLength: 1
readOnly: true
type: string
title: sle_threshold
type: object
sso:
description: SSO
properties:
created_time:
readOnly: true
type: number
custom_logout_url:
description: optional, a URL we will redirect the user after user logout
from Mist (for some IdP which supports a custom logout URL that is different
from SP-initiated SLO process)
type: string
default_role:
description: "default role to assign if there\u2019s no match. By default,\
\ an assertion is treated as invalid when there\u2019s no role matched"
type: string
domain:
type: string
id:
format: uuid
readOnly: true
type: string
idp_cert:
description: if `idp_type`==`saml`. IDP Cert (used to verify the signed
response)
type: string
idp_sign_algo:
description: if `idp_type`==`saml`. Signing algorithm for SAML Assertion
type: string
idp_sso_url:
description: IDP Single-Sign-On URL
type: string
idp_type:
default: saml
enum:
- saml
- ldap
- oauth
- mxedge_proxy
type: string
ignore_unmatched_roles:
description: ignore any unmatched roles provided in assertion. By default,
an assertion is treated as invalid for any unmatched role
type: boolean
issuer:
description: if `idp_type`==`saml`. IDP issuer URL
type: string
ldap_base_dn:
description: if `idp_type`==`ldap`
type: string
ldap_bind_dn:
description: if `idp_type`==`ldap`
type: string
ldap_bind_password:
description: if `idp_type`==`ldap`
type: string
ldap_certs:
description: if `idp_type`==`ldap`
items:
type: string
type: array
ldap_client_cert:
description: if `idp_type`==`ldap`
type: string
ldap_client_key:
description: if `idp_type`==`ldap`
type: string
ldap_group_attr:
description: Only if `ldap_type`==`custom`
type: string
ldap_group_dn:
description: Only if `ldap_type`==`custom`
type: string
ldap_group_filter:
description: Only if `ldap_type`==`custom`
type: string
ldap_server_hosts:
description: if `idp_type`==`ldap`
items:
type: string
type: array
ldap_type:
default: azure
description: if `idp_type`==`ldap`
enum:
- azure
- okta
- google
- custom
type: string
ldap_user_filter:
description: Only if `ldap_type`==`custom`
type: string
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
mxedge_proxy:
description: if `idp_type`==`mxedge_proxy`, this requires `mist_nac` to
be enabled on the mxcluster
properties:
acct_servers:
items:
properties:
host:
example: 1.2.3.4
type: string
port:
default: 1813
type: integer
secret:
example: testing123
type: string
type: object
type: array
auth_servers:
items:
properties:
host:
example: 1.2.3.4
type: string
port:
default: 1812
type: integer
secret:
example: testing123
type: string
type: object
type: array
mxcluster_id:
example: 572586b7-f97b-a22b-526c-8b97a3f609c4
format: uuid
type: string
operator_name:
description: Operator name as Radius attribute while proxying
type: string
proxy_hosts:
description: public hostname/IPs
example:
- mxedge1.corp.com
- 63.1.3.5
items:
type: string
type: array
ssids:
description: SSIDs that support eduroam
example:
- eduroam_test, eduroam_main
items:
default: edur
type: string
type: array
type: object
name:
description: name
type: string
nameid_format:
default: email
description: if `idp_type`==`saml`
enum:
- email
- unspecified
type: string
oauth_cc_client_id:
description: if `oauth_type`==`okta`, Client Credentials
example: e60da615-7def-4c5a-8196-43675f45e174
type: string
oauth_cc_client_secret:
description: if `oauth_type`==`okta`, oauth_cc_client_secret is RSA private
key, of the form "-----BEGIN RSA PRIVATE KEY--...."
example: akL8Q~5kWFMVFYl4TFZ3fi~7cMdyDONi6cj01cpH
type: string
oauth_discovery_url:
description: if `idp_type`==`oauth`
type: string
oauth_ropc_client_id:
description: ropc = Resource Owner Password Credentials
example: 9ce04c97-b5b1-4ec8-af17-f5ed42d2daf7
type: string
oauth_ropc_secret:
description: oauth_ropc_client_secret can be empty if oauth_type is azure
example: blM9R~6kWFMVFYl4TFZ3fi~8cMdyDONi6cj01dqI
type: string
oauth_tenant_id:
description: if `oauth_type`==`okta`, oauth_tenant_id
example: dev-88336535
type: string
oauth_type:
default: azure
enum:
- azure
- okta
type: string
org_id:
$ref: '#/components/schemas/org_id'
role_attr_extraction:
description: "optional, custom role attribute parsing scheme\n\nSupported\
\ Role Parsing Schemes\nName | Scheme |
---|
cn | - The\
\ expected role attribute format in SAML Assertion is \u201CCN=cn,OU=ou1,OU=ou2,\u2026\
\u201D
- CN (the key) is case insensitive and exactly 1 CN is expected\
\ (or the entire entry will be ignored)
- E.g. if role attribute\
\ is \u201CCN=cn,OU=ou1,OU=ou2\u201D then parsed role value is \u201C\
cn\u201D
|
"
type: string
role_attr_from:
default: role
description: name of the attribute in SAML Assertion to extract role from
type: string
site_id:
$ref: '#/components/schemas/site_id'
type:
type: string
required:
- name
type: object
sso_role_msp:
description: SSO Role response
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
privileges:
items:
$ref: '#/components/schemas/privilege_msp'
minItems: 1
type: array
uniqueItems: true
site_id:
$ref: '#/components/schemas/site_id'
required:
- name
- privileges
type: object
sso_role_org:
description: SSO Role response
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
privileges:
items:
$ref: '#/components/schemas/privilege_org'
minItems: 1
type: array
uniqueItems: true
site_id:
$ref: '#/components/schemas/site_id'
required:
- name
- privileges
type: object
ssr_upgrade:
properties:
channel:
$ref: '#/components/schemas/ssr_upgrade_channel'
reboot_at:
description: eboot start time in epoch seconds, default is start_time, -1
disables reboot
type: integer
start_time:
description: 128T firmware download start time in epoch seconds, default
is now, -1 disables download
type: integer
version:
default: stable
description: 128T firmware version to upgrade (e.g. 5.3.0-93)
minLength: 1
type: string
required:
- version
type: object
ssr_upgrade_channel:
default: stable
description: upgrade channel to follow
enum:
- stable
- beta
- alpha
type: string
ssr_upgrade_multi:
properties:
channel:
$ref: '#/components/schemas/ssr_upgrade_channel'
device_ids:
description: list of 128T device IDs to upgrade
items:
format: uuid
type: string
type: array
reboot_at:
description: reboot start time in epoch seconds, default is start_time,
-1 disables reboot
type: integer
start_time:
description: 128T firmware download start time in epoch seconds, default
is now, -1 disables download
type: integer
strategy:
$ref: '#/components/schemas/ssr_upgrade_strategy'
version:
description: 128T firmware version to upgrade (e.g. 5.3.0-93)
minLength: 1
type: string
required:
- device_ids
type: object
ssr_upgrade_response:
properties:
channel:
minLength: 1
type: string
counts:
properties:
failed:
type: integer
queued:
type: integer
success:
type: integer
upgrading:
type: integer
required:
- queued
- upgrading
- success
- failed
title: ssr_upgrade_response_counts
type: object
device_type:
type: string
id:
minLength: 1
type: string
status:
minLength: 1
type: string
strategy:
minLength: 1
type: string
versions:
type: object
required:
- status
- strategy
- versions
- channel
- id
- counts
- device_type
type: object
ssr_upgrade_strategy:
default: big_bang
description: '* `big_bang`: upgrade all at once
* `serial`: one at a time'
enum:
- big_bang
- serial
title: ssr_upgrade_multi_strategy
type: string
strings:
items:
type: string
type: array
uniqueItems: true
suppressed_alarm:
properties:
applies:
description: 'if `scope`==`site`
Object defines the scope (within the org e.g. whole org, and/or some site-groups,
and/or some sites) for which the alarm service has to be suppressed for
some `duration`'
properties:
org_id:
description: UUID of the current org (if provided, the alarms will be
suppressed at org level)
format: uuid
type: string
site_ids:
description: List of UUID of the sites within the org (if provided,
the alarms will be suppressed for all the mentioned sites under the
org)
items:
format: uuid
type: string
type: array
sitegroup_ids:
description: List of UUID of the site groups within the org (if provided,
the alarms will be suppressed for all the sites under those site groups)
items:
format: uuid
type: string
type: array
type: object
duration:
default: 3600
description: duration, in seconds. Maximum duration is 86400 * 180 (180
days). 0 is to un-suppress alarms
maximum: 15552000
minimum: 0
type: number
scheduled_time:
description: poch_time in seconds, Default as now, accepted time range is
from now to now + 7 days
type: integer
scope:
$ref: '#/components/schemas/suppressed_alarm_scope'
type: object
suppressed_alarm_scope:
default: site
description: level of scope
enum:
- org
- site
type: string
switch:
description: 'Switch Configuration.
You can configure `port_usages` and `networks` settings at the device level,
but most of the time it''s better use the Site Setting to achieve better consistency
and be able to re-use the same settings across switches entries defined here
will "replace" those defined in Site Setting/Network Template'
properties:
acl_policies:
items:
$ref: '#/components/schemas/junos_acl_policies'
type: array
acl_tags:
additionalProperties:
$ref: '#/components/schemas/junos_acl_tags'
description: ACL Tags to identify traffic source or destination. Key name
is the tag name
properties:
any:
description: implicit, cannot override
properties:
type:
default: a
type: string
type: object
type: object
additional_config_cmds:
items:
type: string
type: array
created_time:
readOnly: true
type: number
deviceprofile_id:
format: uuid
type: string
dhcp_config:
$ref: '#/components/schemas/junos_dhcpd'
dhcp_snooping:
$ref: '#/components/schemas/junos_dhcp_snooping'
disable_auto_config:
default: false
description: for a claimed switch, we control the configs by default. This
option (disables the behavior)
type: boolean
dns_servers:
description: Global dns settings. To keep compatibility, dns settings in
`ip_config` and `oob_ip_config` will overwrite this setting
items:
type: string
type: array
dns_suffix:
description: Global dns settings. To keep compatibility, dns settings in
`ip_config` and `oob_ip_config` will overwrite this setting
items:
type: string
type: array
evpn_config:
$ref: '#/components/schemas/junos_evpn_config'
extra_routes:
$ref: '#/components/schemas/switch_extra_routes'
id:
format: uuid
readOnly: true
type: string
image1_url:
nullable: true
type: string
image2_url:
nullable: true
type: string
image3_url:
nullable: true
type: string
ip_config:
$ref: '#/components/schemas/junos_ip_config'
managed:
default: false
description: "for an adopted switch, we don\u2019t overwrite their existing\
\ configs automatically"
type: boolean
modified_time:
readOnly: true
type: number
name:
type: string
networks:
$ref: '#/components/schemas/junos_networks'
notes:
type: string
ntp_servers:
description: list of NTP servers specific to this device. By default, those
in Site Settings will be used
items:
type: string
type: array
oob_ip_config:
$ref: '#/components/schemas/junos_oob_ip_config'
org_id:
$ref: '#/components/schemas/org_id'
ospf_config:
$ref: '#/components/schemas/junos_ospf_config'
other_ip_configs:
additionalProperties:
$ref: '#/components/schemas/junos_other_ip_configs'
description: Property key is the network name
type: object
port_config:
additionalProperties:
$ref: '#/components/schemas/junos_port_config'
description: Property key is the port name or range (e.g. "ge-0/0/0-10")
type: object
port_mirroring:
properties:
port_mirror:
$ref: '#/components/schemas/junos_port_mirror'
type: object
port_usages:
additionalProperties:
$ref: '#/components/schemas/junos_port_usages'
description: Property key is the port profile name
properties:
dynamic:
$ref: '#/components/schemas/dynamic_port_usage'
type: object
radius_config:
$ref: '#/components/schemas/junos_radius_config'
role:
default: access
enum:
- access
- aggregation
type: string
router_id:
description: used for OSPF / BGP / EVPN
example: 10.2.1.10
type: string
site_id:
$ref: '#/components/schemas/site_id'
stp_config:
properties:
type:
default: rstp
enum:
- rstp
- vstp
title: switch_stp_config_type
type: string
type: object
switch_mgmt:
properties:
config_revert_timer:
default: 10
description: rollback timer for commit confirmed
maximum: 30
minimum: 1
type: integer
protect_re:
$ref: '#/components/schemas/protect_re'
title: device_switch_mgmt
use_router_id_as_source_ip:
default: false
description: whether to use it for snmp / syslog / tacplus / radius
type: boolean
vars:
$ref: '#/components/schemas/vars'
virtual_chassis:
description: required for preprovisioned Virtual Chassis
properties:
members:
description: list of Virtual Chassis members
items:
properties:
mac:
description: fpc0, same as the mac of device_id
example: aff827549235
type: string
vc_role:
description: Both vc_role master and backup will be matched to
routing-engine role in Junos preprovisioned VC config
enum:
- master
- linecard
- backup
type: string
title: switch_virtual_chassis_member
type: object
type: array
preprovisioned:
default: false
description: to configure whether the VC is preprovisioned or nonprovisioned
type: boolean
title: virtual_chassis_info
type: object
vrf_config:
$ref: '#/components/schemas/junos_vrf_config'
vrrp_config:
$ref: '#/components/schemas/junos_vrrp_config'
type: object
switch_extra_routes:
additionalProperties:
properties:
discard:
default: false
description: this takes precedence
type: boolean
metric:
example: null
nullable: true
type: integer
next_qualified:
additionalProperties:
properties:
metric:
nullable: true
type: integer
preference:
nullable: true
type: integer
type: object
example:
10.3.1.1:
metric: null
preference: 40
type: object
no_resolve:
default: false
type: boolean
preference:
example: 30
nullable: true
type: integer
via:
description: next-hop IP Address
type: string
type: object
description: Property key is the destination CIDR (e.g. "10.0.0.0/8")
example:
172.16.3.0/24:
via: 10.2.1.1
it_mgmt:
discard: false
metric: null
next_qualified:
10.3.1.1:
metric: null
preference: 40
no_resolve: false
preference: 30
via: 10.2.1.1
type: object
switch_matching:
description: Switch template
properties:
enable:
type: boolean
rules:
items:
$ref: '#/components/schemas/switch_matching_rule'
minItems: 1
type: array
uniqueItems: true
type: object
switch_matching_rule:
additionalProperties:
type: string
description: 'property key define the type of matching, value is the string
to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `match_model`, `match_model[0-6]`'
example:
match_model: EX4300
match_name[0:3]: abc
properties:
additional_config_cmds:
items:
example: set snmp community public
type: string
type: array
match_role:
description: role to match
example: access
type: string
name:
example: access_ex4300
type: string
port_config:
additionalProperties:
$ref: '#/components/schemas/junos_port_config'
description: Propery key is the interface name or interface range
example:
'*':
usage: default
ge-0/0/0-1:
ae_disable_lacp: false
ae_idx: 0
aggregated: true
critical: true
usage: uplink
ge-0/0/8-16,ge-1/0/0-47:
usage: ap
type: object
port_mirroring:
additionalProperties:
description: property key is the port mirroring rule name
properties:
input_networks_ingress:
example:
- iot
items:
type: string
type: array
input_port_ids_egress:
example:
- ge-0/0/5
- ge-0/0/6
items:
type: string
type: array
input_port_ids_ingress:
example:
- ge-0/0/4"
items:
type: string
type: array
output_port_id:
example: ge-0/0/3
type: string
type: object
type: object
switch_mgmt:
properties:
ap_affinity_threshold:
example: '10'
type: string
config_revert_timer:
default: 10
type: integer
dhcp_option_fqdn:
default: false
description: Enable to provide the FQDN with DHCP option 81
type: boolean
mxedge_proxy_host:
type: string
mxedge_proxy_port:
default: 2222
type: integer
use_mxedge_proxy:
default: false
type: boolean
title: switch_matching_switch_mgmt
type: object
type: object
switch_mgmt:
properties:
config_revert:
default: 10
type: integer
protect_re:
$ref: '#/components/schemas/protect_re'
root_password:
type: string
tacacs:
$ref: '#/components/schemas/tacacs'
switch_port_stats:
description: Switch port statistics
properties:
active:
description: Indicates if interface is active/inactive
type: boolean
auth_state:
description: if `up`==`true` and has Authenticator role
enum:
- init
- authenticated
- authenticating
- held
type: string
for_site:
readOnly: true
type: boolean
full_duplex:
description: indicates full or half duplex
example: true
type: boolean
jitter:
description: Last sampled jitter of the interface
type: number
latency:
description: Last sampled latency of the interface
type: number
loss:
description: Last sampled loss of the interface
type: number
lte_iccid:
description: LTE ICCID value, Check for null/empty
nullable: true
type: string
lte_imei:
description: LTE IMEI value, Check for null/empty
nullable: true
type: string
lte_imsi:
description: LTE IMSI value, Check for null/empty
nullable: true
type: string
mac:
example: 5c4527a96580
readOnly: true
type: string
mac_count:
description: Number of mac addresses in the forwarding table
type: integer
mac_limit:
description: Limit on number of dynamically learned macs
type: integer
neighbor_mac:
description: chassis identifier of the chassis type listed
example: 64d814353400
readOnly: true
type: string
neighbor_port_desc:
description: "description supplied by the system on the interface E.g. \u201C\
GigabitEthernet2/0/39\u201D"
example: GigabitEthernet1/0/21
readOnly: true
type: string
neighbor_system_name:
description: "name supplied by the system on the interface E.g. neighbor\
\ system name E.g. \u201CKumar-Acc-SW.mist.local\u201D"
example: CORP-D-SW-2
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
poe_disabled:
description: is the POE configured not be disabled.
readOnly: true
type: boolean
poe_mode:
enum:
- 802.3af
- 802.3at
- 802.3bt
type: string
poe_on:
description: is the device attached to POE
type: boolean
port_id:
example: ge-0/0/0
readOnly: true
type: string
port_mac:
description: interface mac address
example: 5c4527a96580
readOnly: true
type: string
port_usage:
description: gateway port usage
enum:
- lan
type: string
power_draw:
description: Amount of power being used by the interface at the time the
command is executed. Unit in watts.
type: number
rx_bcast_pkts:
description: Broadcast input packets
type: integer
rx_bps:
description: Input rate
type: integer
rx_bytes:
description: rx bytes
example: 4563443626
readOnly: true
type: integer
rx_errors:
description: Input errors
type: integer
rx_mcast_pkts:
description: Multicast input packets
type: integer
rx_pkts:
description: rx packets
readOnly: true
type: integer
site_id:
$ref: '#/components/schemas/site_id'
speed:
description: port speed
example: 1000
readOnly: true
type: integer
stp_role:
description: if `up`==`true`
enum:
- designated
- backup
- alternate
- root
- root-prevented
type: string
stp_state:
description: if `up`==`true`
enum:
- forwarding
- blocking
- learning
- listening
- disabled
type: string
tx_bcast_pkts:
description: Broadcast output packets
type: integer
tx_bps:
description: Output rate
type: integer
tx_bytes:
description: tx bytes
example: 11299516780
readOnly: true
type: integer
tx_errors:
description: Output errors
type: integer
tx_mcast_pkts:
description: Multicast output packets
type: integer
tx_pkts:
description: tx packets
example: 492176
readOnly: true
type: integer
type:
description: device type
enum:
- ap
- ble
- switch
- gateway
- mxedge
- nac
example: gateway
title: switch_port_stats_type
type: string
unconfigured:
description: indicates if interface is unconfigured
readOnly: true
type: boolean
up:
description: indicates if interface is up
readOnly: true
type: boolean
xcvr_model:
description: Optic Slot ModelName, Check for null/empty
example: SFP+-10G-SR
type: string
xcvr_part_number:
description: Optic Slot Partnumber, Check for null/empty
example: 740-021487
type: string
xcvr_serial:
description: Optic Slot SerialNumber, Check for null/empty
example: N6AA9HT
type: string
required:
- mac
- neighbor_mac
- org_id
- port_id
- port_mac
- rx_bytes
- rx_pkts
- site_id
- tx_bytes
- tx_pkts
type: object
switch_search:
properties:
ext_ip:
type: string
hostname:
items:
type: string
type: array
ip:
type: string
last_hostname:
type: string
mac:
type: string
model:
type: string
num_members:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: number
type:
type: string
uptime:
type: integer
version:
type: string
type: object
switch_stats:
description: Switch statistics
properties:
ap_redundancy:
$ref: '#/components/schemas/switch_stats_ap_redundancy'
clients:
items:
$ref: '#/components/schemas/switch_stats_client'
type: array
cpu_stat:
$ref: '#/components/schemas/cpu_stat'
has_pcap:
description: whether the switch supports packet capture
example: false
type: boolean
hostname:
description: hostname reported by the device
example: sj-sw1
type: string
if_stat:
additionalProperties:
$ref: '#/components/schemas/switch_stats_if_stat'
description: Property key is the interface name
type: object
ip:
example: 10.2.11.137
type: string
ip_stat:
$ref: '#/components/schemas/ip_stat'
last_seen:
example: 1553203563
type: integer
last_trouble:
$ref: '#/components/schemas/last_trouble'
mac:
$ref: '#/components/schemas/memory_stat'
model:
example: EX4600
type: string
module_stat:
items:
$ref: '#/components/schemas/module_stat'
minItems: 1
type: array
uniqueItems: true
name:
description: device name if configured
example: sj-sw1
type: string
num_clients:
$ref: '#/components/schemas/switch_stats_num_clients'
serial:
example: TC3714190003
type: string
status:
example: connected
type: string
type:
example: switch
type: string
uptime:
example: 13501
type: number
version:
example: 18.4R1.8
type: string
type: object
switch_stats_ap_redundancy:
properties:
modules:
additionalProperties:
$ref: '#/components/schemas/switch_stats_ap_redundancy_module'
description: for a VC / stacked switches.
type: object
num_aps:
example: 15
type: integer
num_aps_with_switch_redundancy:
example: 8
type: integer
type: object
switch_stats_ap_redundancy_module:
properties:
num_aps:
example: 15
type: integer
num_aps_with_switch_redundancy:
example: 8
type: integer
type: object
switch_stats_client:
properties:
device_mac:
type: string
hostname:
type: string
mac:
type: string
port_id:
type: string
type: object
switch_stats_if_stat:
properties:
ips:
$ref: '#/components/schemas/strings'
port_id:
example: ge-0/0/0
type: string
rx_bytes:
type: integer
rx_pkts:
type: integer
tx_bytes:
type: integer
tx_pkts:
type: integer
up:
type: boolean
type: object
switch_stats_num_clients:
properties:
total:
additionalProperties:
description: propery key is the FPC number
properties:
num_aps:
type: string
num_clients:
type: string
type: object
properties:
num_aps:
type: string
num_clients:
type: string
type: object
type: object
synthetic_test:
properties:
email:
example: test@mist.com
format: email
type: string
title: synthetic_test
type: object
synthetic_test_device:
properties:
hostname:
description: if `type`==`dns`
type: string
ip:
description: if `type`==`arp`
type: string
password:
description: if `type`==`radius`
type: string
port_id:
description: if `type`==`ssr`
type: string
type:
$ref: '#/components/schemas/synthetic_test_type'
url:
description: if `type`==`curl`
type: string
username:
description: if `type`==`radius`
type: string
vlan_id:
description: required for AP
type: integer
required:
- type
type: object
synthetic_test_info:
properties:
by:
example: user
type: string
device_type:
enum:
- ap
- switch
- gateway
type: string
failed:
example: false
type: boolean
latency:
example: 40
type: integer
mac:
type: string
port_id:
example: ge-0/0/2
type: string
reason:
example: interface not ready to perform test
type: string
rx_mbps:
example: 322
type: integer
start_time:
example: 1675718807
type: integer
status:
type: string
timestamp:
example: 1675718807
type: integer
tx_mbps:
example: 199
type: integer
type:
$ref: '#/components/schemas/synthetic_test_type'
vlan_id:
example: 20
type: integer
type: object
synthetic_test_radius_server:
properties:
password:
description: Specify the password associated with the username
type: string
profile:
default: dot1x
description: Specify the access profile associated with the subscriber
type: string
user:
description: Specify the subscriber username to test
type: string
required:
- user
- password
type: object
synthetic_test_type:
enum:
- dns
- arp
- dhcp
- curl
- radius
- speedtest
- dhcp6
type: string
tacacs:
properties:
acct_servers:
items:
$ref: '#/components/schemas/tacacs_acct_server'
type: array
enabled:
type: boolean
network:
description: which network the TACACS server resides
type: string
tacplus_servers:
items:
$ref: '#/components/schemas/tacacs_auth_server'
type: array
type: object
tacacs_acct_server:
properties:
host:
type: string
port:
type: string
secret:
type: string
timeout:
default: 10
type: integer
type: object
tacacs_auth_server:
properties:
host:
type: string
port:
type: string
secret:
type: string
timeout:
default: 10
type: integer
type: object
template:
description: Template
properties:
applies:
description: where this template should be applied to, can be org_id, site_ids,
sitegroup_ids
properties:
org_id:
$ref: '#/components/schemas/org_id'
site_ids:
description: list of site ids
items:
format: uuid
type: string
type: array
sitegroup_ids:
description: list of sitegroup ids
items:
format: uuid
type: string
type: array
title: template_applies
type: object
created_time:
readOnly: true
type: number
deviceprofile_ids:
description: list of Device Profile ids
items:
format: uuid
type: string
type: array
exceptions:
description: where this template should not be applied to (takes precedence)
properties:
site_ids:
description: list of site ids
items:
format: uuid
type: string
type: array
sitegroup_ids:
description: list of sitegroup ids
items:
format: uuid
type: string
type: array
title: template_exceptions
type: object
filter_by_deviceprofile:
description: whether to further filter by Device Profile
type: boolean
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
type: string
org_id:
$ref: '#/components/schemas/org_id'
required:
- name
type: object
test_telstra:
properties:
telstra_client_id:
description: Telstra client id
example: '123456'
type: string
telstra_client_secret:
description: Telstra client secret
example: abcdef
type: string
to:
description: Phone number of the recipient of SMS with country code
example: '+911122334455'
type: string
required:
- telstra_client_id
- telstra_client_secret
- to
title: test_telstra
type: object
test_twilio:
properties:
from:
description: One of the numbers you have in your Twilio account
example: '+185051234567'
type: string
to:
description: Phone number of the recipient of SMS
example: '+19999999999'
type: string
twilio_auth_token:
description: Auth Token associated with twilio account
example: 2135be04736a1a0a314bce432d61721a
type: string
twilio_sid:
description: Twilio Account SID
example: AC5f4366878d193fb4865ab151739999eb
type: string
required:
- twilio_sid
- twilio_auth_token
- from
- to
title: test_twilio
type: object
ticket:
description: Support Ticket
properties:
case_number:
readOnly: true
type: string
comments:
items:
properties:
attachments:
items:
properties:
content_type:
type: string
content_url:
type: string
size:
type: integer
type: object
type: array
author:
type: string
comment:
type: string
created_at:
type: integer
required:
- author
- comment
- created_at
type: object
type: array
created_at:
readOnly: true
type: integer
id:
format: uuid
readOnly: true
type: string
requester:
readOnly: true
type: string
requester_email:
description: email of the requester
format: email
type: string
status:
description: "Status open: ticket is open, Mist is working on it \n* pending:\
\ ticket is open and Requester attention is needed (e.g. Mist is asking\
\ for some more information) \n* solved: ticket is marked as solved /\
\ considered by Mist (requester can update it, causing it to re-open;\
\ or rate it) \n* closed: ticket is archived and cannot be changed"
enum:
- open
- pending
- solved
- closed
title: ticket_status
type: string
subject:
type: string
type:
description: question (default) / bug / critical
type: string
updated_at:
readOnly: true
type: integer
required:
- subject
- type
type: object
ticket_comment:
properties:
comment:
example: this is urgent
type: string
type: object
ticket_comment_import_file:
properties:
comment:
example: this is urgent
type: string
file:
format: binary
type: string
type: object
time_of_day:
default: any
description: any / HH:MM (24-hour format)
type: string
tunterm_dhcpd_config:
additionalProperties:
properties:
enabled:
default: false
type: boolean
servers:
items:
type: string
type: array
type:
$ref: '#/components/schemas/tunterm_dhcpd_type'
type: object
description: DHCP server/relay configuration of Mist Tunneled VLANs. Property
key is the VLAN ID
properties:
enabled:
default: false
type: boolean
servers:
items:
type: string
type: array
type:
$ref: '#/components/schemas/tunterm_dhcpd_type'
type: object
tunterm_dhcpd_type:
default: relay
enum:
- relay
title: tunterm_dhcpd_type
type: string
tunterm_monitoring:
properties:
host:
description: can be ip, ipv6, hostname
example: 10.2.8.15
minLength: 1
type: string
port:
description: when `protocol`==`tcp`
example: 80
type: integer
protocol:
enum:
- arp
- ping
- tcp
example: tcp
minLength: 1
title: tuntern_monitoring_protocol
type: string
timeout:
default: 300
example: 300
type: integer
type: object
tunterm_port_config:
description: ethernet port configurations
properties:
downstream_ports:
description: list of ports to be used for downstream (to AP) purpose
example:
- '2'
- '3'
items:
type: string
type: array
separate_upstream_downstream:
default: false
description: weather to separate upstream / downstream ports. default is
false where all ports will be used.
type: boolean
upstream_port_vlan_id:
default: 1
description: native VLAN id for upstream ports
example: 30
type: integer
upstream_ports:
description: list of ports to be used for upstrea purpose (to LAN)
example:
- '0'
- '1'
items:
type: string
type: array
type: object
two_factor:
properties:
two_factor:
example: '123456'
type: string
required:
- two_factor
title: two_factor
type: object
two_factor_code:
properties:
two_factor:
example: 123456
type: string
required:
- two_factor
type: object
ui_settings:
description: UI Settings
properties:
created_time:
example: 1508823803
readOnly: true
type: number
defaultScopeId:
example: 67970e46-4e12-11e6-9188-0242ad112847
type: string
defaultScopeType:
example: site
type: string
defaultTimeRange:
properties:
end:
example: 1508828400
type: integer
endDate:
example: 10/23/2017
type: string
interval:
example: 1d
type: string
name:
example: This Week
type: string
shortName:
example: thisWeek
type: string
start:
example: 1508655600
type: integer
usePreset:
example: true
type: boolean
type: object
description:
example: Description of the databoard
type: string
for_site:
example: true
readOnly: true
type: boolean
id:
example: 3bdcc7e8-c04d-4512-b4fc-093da9057eb0
format: uuid
readOnly: true
type: string
isCustomDataboard:
type: boolean
isScopeLinked:
type: boolean
isTimeRangeLinked:
type: boolean
modified_time:
example: 1508823803
readOnly: true
type: number
name:
example: New Databoard
type: string
org_id:
$ref: '#/components/schemas/org_id'
purpose:
example: databoard
type: string
site_id:
$ref: '#/components/schemas/site_id'
tiles:
items:
properties:
chartBand:
example: 2.4 ghz
type: string
chartColor:
example: '#00B4AD'
type: string
chartDirection:
example: tx + rx
type: string
chartRankBy:
type: string
chartType:
example: timeSeries
type: string
colspan:
example: 5
type: integer
column:
example: 1
type: integer
hideEmptyRows:
type: boolean
id:
example: 7a9ab38c-cfc3-483d-b51a-0aec571fadc0
format: uuid
type: string
metric:
properties:
apiName:
example: client-dhcp-latency
type: string
type: object
name:
example: New Analysis
type: string
row:
example: 1
type: integer
rowspan:
example: 2
type: integer
scopeId:
example: e0c767834b4c
type: string
scopeType:
example: client
type: string
sortedColumns: {}
timeRange:
properties:
end:
example: 1508823743
type: number
endDate:
example: 10/23/2017
type: string
interval:
example: 1d
type: string
name:
example: Past 7 Days
type: string
shortName:
example: 7d
type: string
start:
example: 1508223600
type: integer
usePreset:
example: true
type: boolean
type: object
trendType:
example: line
type: string
vizType:
example: averageTimeSeriesChart
type: string
type: object
minItems: 1
type: array
uniqueItems: true
required:
- created_time
- description
- for_site
- id
- modified_time
- org_id
- purpose
- site_id
type: object
unconnected_client_stats:
description: Unconnected clients statistics
properties:
ap_mac:
description: mac address of the AP that heard the client
type: string
last_seen:
description: last seen timestamp
type: number
mac:
description: mac address of the (unconnected) client
type: string
manufacture:
description: device manufacture, through fingerprinting or OUI
type: string
map_id:
description: map_id of the client (if known), or null
format: uuid
nullable: true
type: string
rssi:
description: client RSSI observered by the AP that heard the client (in
dBm)
type: integer
x:
description: x (in pixels) of user location on the map (if known)
type: integer
y:
description: y (in pixels) of user location on the map (if known)
type: integer
required:
- mac
- ap_mac
- y
- rssi
- manufacture
- last_seen
type: object
unconnected_client_stats_array:
items:
$ref: '#/components/schemas/unconnected_client_stats'
type: array
upgrade_bios:
properties:
reboot:
default: false
description: Reboot device immediately after upgrade is completed
type: boolean
version:
description: specific bios version
example: CDEN_P_EX1_00.20.01.00
type: string
type: object
upgrade_bios_multi:
properties:
device_ids:
description: list of device id to upgrade bios
items:
example: 00000000-0000-0000-1000-5c5b35584a6f
format: uuid
type: string
type: array
models:
description: list of device model to upgrade bios
items:
example: EX4400-48T
type: string
type: array
reboot:
default: false
description: Reboot device immediately after upgrade is completed
type: boolean
version:
description: specific bios version
example: CDEN_P_EX1_00.15.01.00
type: string
type: object
use_auto_ap_values:
properties:
accept:
default: false
description: If accept is true, accepts placement for devices in list otherwise.
If false, reject for devices in list.
type: boolean
for:
default: placement
description: The selector to choose auto placement or auto orientation.
enum:
- placement
- orientation
title: use_auto_ap_values_for
type: string
macs:
description: A list of macs to accept/reject. If a list is not provided
the API will accept/reject for the full map.
items:
type: string
type: array
type: object
user_apitoken:
description: User API Token
properties:
created_time:
example: 1626875902
readOnly: true
type: integer
id:
example: 864f351a-1377-4ad9-83f8-72f3fe6199ba
format: uuid
readOnly: true
type: string
key:
example: 1qkb...QQCL
readOnly: true
type: string
last_used:
example: 1690115110
nullable: true
readOnly: true
type: integer
name:
description: name of the token
example: org_token_xyz
type: string
type: object
user_mac:
properties:
blacklisted:
default: false
type: boolean
cross_site:
description: For Guest
type: boolean
email:
example: john@example.com
format: email
type: string
expire_time:
example: 1709336127
type: integer
for_guest_wifi:
description: For Guest
type: boolean
labels:
example:
- byod
items:
type: string
type: array
mac:
description: only non-local-admin MAC is accepted
example: 5684dae9ac8b
type: string
name:
example: john's phone
type: string
site_id:
description: For Guest, if `cross_site`==`false`
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
vlan_id:
example: 30
type: integer
type: object
user_mac_array:
items:
$ref: '#/components/schemas/user_mac'
type: array
username_password:
properties:
password:
type: string
username:
type: string
type: object
utils_bounce_port:
properties:
port:
description: the port to bounce
type: string
ports:
description: list of ports to bounce
items:
type: string
type: array
type: object
utils_cable_test:
properties:
port:
description: the port to run the cable test
type: string
required:
- port
type: object
utils_clear_arp:
properties:
ip:
description: The IP address for which to clear an ARP entry. port_id must
be specified. Both vlan and ip cannot be specified.
example: 10.1.1.1
type: string
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
port_id:
description: The device interface on which to clear the ARP cache.
example: wan
type: string
vlan:
description: The VLAN on which to clear the ARP cache. port_id must be specified.
Both vlan and ip cannot be specified.
example: 1000
type: integer
type: object
utils_clear_bgp:
properties:
neighbor:
description: neighbor ip-address or 'all'
type: string
type:
default: hard
enum:
- hard
- soft
- in
- out
title: utils_clear_bgp_type
type: string
vrf:
description: vrf name
type: string
required:
- neighbor
- type
type: object
utils_clear_bpdu:
properties:
port:
description: the port on which to clear the detected BPDU error, or `all`
for all ports
type: string
type: object
utils_clear_macs:
properties:
ports:
description: a list of ports on which to clear mac addresses. must include
logical unit number
items:
type: string
type: array
type: object
utils_devices_restart:
properties:
member:
description: optional for VC member
type: string
node:
description: 'only for SSR: if node is not present, both nodes are restarted
for other devices: node should not be present'
type: string
type: object
utils_devices_restart_multi:
properties:
device_ids:
items:
format: uuid
type: string
type: array
node:
description: 'only for SSR: if node is not present, both nodes are restarted
for other devices: node should not be present'
type: string
required:
- device_ids
type: object
utils_ping:
properties:
count:
default: 10
type: integer
egress_interface:
description: Interface through which packet needs to egress
type: string
host:
example: 1.1.1.1
format: ipv4
type: string
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
size:
default: 56
maximum: 65535
minimum: 56
type: integer
required:
- host
type: object
utils_release_dhcp:
properties:
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
port:
description: The nework interface on which to release the current DHCP release
example: wan-interface
minLength: 1
type: string
required:
- port
type: object
utils_reset_radio_config:
properties:
bands:
description: list of bands
items:
type: string
type: array
force:
default: false
description: whether to reset those with radio disabled. default is false
(i.e. if user intentionally disables a radio, honor it)
type: boolean
required:
- bands
type: object
utils_rrm_optimize:
properties:
bands:
description: list of bands
items:
type: string
type: array
macs:
description: targeting AP (neighbor APs may get changed, too), default is
empty for ALL APs
items:
example: 5c5b35000001
type: string
type: array
txpower_only:
default: false
description: only changng TX Power (will not disconnect clients)
type: boolean
required:
- bands
type: object
utils_send_ble_beacon:
properties:
beacon_frame:
example: 68b329da9893e34099c7d8ad5cb9c940
type: string
beacon_freq:
example: 100
type: integer
duration:
example: 10
maximum: 60
minimum: 1
type: integer
macs:
example:
- 5c5b35584a6f
- 5c5b350ea3b3
items:
type: string
type: array
map_ids:
example:
- 845a23bf-bed9-e43c-4c86-6fa474be7ae5
items:
type: string
type: array
type: object
utils_send_support_logs:
properties:
info:
default: full
description: 'optional choice: process, outbound-ssh, and full (default)'
enum:
- process
- outbound-ssh
- messages
- code-dumps
- full
- var-logs
- jma-logs
type: string
node:
description: 'optional: for SSR, if node is not present, both nodes support
files are uploaded'
type: string
num_messages_files:
default: 1
description: 'optional: number of most recent messages files to upload.'
maximum: 10
minimum: 1
type: integer
type: object
utils_service_ping:
properties:
count:
default: 10
type: integer
host:
format: ipv4
type: string
service:
description: ping packet takes the same path as the service
type: string
size:
default: 56
maximum: 65535
minimum: 56
type: integer
tenant:
description: tenant context in which the packet is sent
type: string
required:
- host
- service
type: object
utils_show_arp:
properties:
ip:
example: 192.168.30.7
type: string
port:
example: ge-0/0/0.0
type: string
vrf:
example: guest
type: string
type: object
utils_show_evpn_database:
properties:
mac:
description: client mac filter
example: f8c1165c6400
type: string
port_id:
description: interface name
example: ge-0/0/0.0
type: string
type: object
utils_show_mac_table:
properties:
mac_address:
example: f8c1165c6400
type: string
port:
example: ge-0/0/0.0
type: string
vlan_id:
example: ge-0/0/0.0
type: string
type: object
utils_show_route:
properties:
neighbor:
description: IP of the neighbor
type: string
node:
$ref: '#/components/schemas/ha_cluster_node'
prefix:
description: route prefix
type: string
protocol:
default: bgp
description: only bgp is supported
type: string
route:
description: 'if specified, dump bot received and advertised, if not specified,
both will be shown
* for SSR, show bgp neighbors 10.250.18.202 received-routes/advertised-routes
* for SRX, show route receive-protocol/advertise-protocol bgp 192.168.255.12'
type: string
vrf:
description: VRF name
type: string
type: object
utils_show_service_path:
description: The exact service name for which to display the service path
properties:
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
service_name:
example: any
type: string
type: object
utils_show_session:
properties:
node:
$ref: '#/components/schemas/ha_cluster_node_enum'
service_name:
description: The exact service name for which to display the active sessions
example: any
type: string
type: object
utils_traceroute:
properties:
host:
description: host name
type: string
network:
default: internal
description: for SSR, optional, the source to initiate traceroute from
type: string
port:
default: 33434
description: when `protocol`==`udp`, the udp port to use
type: integer
protocol:
default: udp
enum:
- udp
type: string
timeout:
default: 60
description: maximum time in seconds to wait for the response
type: integer
vrf:
description: for SRX, optional, the source to initiate traceroute from.
by default, master VRF/RI is assumed
type: string
type: object
utils_tunterm_bounce_port:
properties:
hold_time:
description: in milli seconds, hold time between multiple port bounces
type: integer
ports:
description: list of ports to bounce
items:
type: string
type: array
required:
- ports
type: object
utils_zeroise_fips:
properties:
password:
description: FIPS zeroize password
type: string
required:
- password
type: object
vars:
additionalProperties:
type: string
description: a dictionary of name->value, the vars can then be used in Wlans.
This can overwrite those from Site Vars
example:
RADIUS_IP1: 172.31.2.5
RADIUS_SECRET: 11s64632d
type: object
vbeacon:
description: vBeacon
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
major:
description: bluetooth tag major
example: 1356
type: integer
map_id:
description: map where the device belongs to
example: 63eda950-c6da-11e4-a628-60f81dd250cc
format: uuid
type: string
message:
description: a message that can be displayed when the sdkclient gets near
the vbeacon
example: Welcome to Mist
type: string
minor:
description: bluetooth tag minor
example: 21
type: integer
modified_time:
readOnly: true
type: number
name:
description: name / label of the device
example: conference room
type: string
org_id:
$ref: '#/components/schemas/org_id'
power:
default: 4
description: required if `power_mode`==`custom`, -30 - 100, in dBm. For
default power_mode, power = 4 dBm.
maximum: 100
minimum: -30
type: integer
power_mode:
$ref: '#/components/schemas/ap_ble_power_mode'
site_id:
$ref: '#/components/schemas/site_id'
url:
description: URL to show, optional
example: http://www.mist.com/any
type: string
uuid:
description: bluetooth tag UUID
example: 31375aeb-b8d3-1ea6-83bf-a31eb04e1c38
format: uuid
type: string
wayfinding_nodename:
description: the name to be used in wayfinding_path or wayfinding_grid blob
example: node1
type: string
x:
description: x in pixel
example: 53.5
type: number
y:
description: y in pixel
example: 173.1
type: number
type: object
version:
properties:
version:
type: string
type: object
virtual_chassis_config:
description: Virtual Chassis
properties:
members:
items:
properties:
mac:
description: fpc0, same as the mac of device_id
type: string
member:
description: to create a preprovisionned virtual chassis
type: integer
vc_ports:
items:
type: string
type: array
vc_role:
enum:
- master
- backup
- linecard
type: string
required:
- mac
- vc_ports
- vc_role
title: virtual_chassis_member
type: object
type: array
preprovisioned:
default: false
description: To create the Virtual Chassis in Pre-Provisioned mode
type: boolean
type: object
virtual_chassis_port:
properties:
members:
items:
properties:
member:
type: number
vc_ports:
items:
type: string
type: array
required:
- member
title: config_vc_port_member
type: object
minItems: 1
type: array
uniqueItems: true
op:
enum:
- set
- delete
minLength: 1
title: VC Port Operation
type: string
required:
- op
- members
type: object
virtual_chassis_update:
description: Virtual Chassis
properties:
member:
description: Only if `op`==`renumber`
type: integer
members:
items:
properties:
mac:
description: Required if `op`==`add` or `op`==`preprovision`.
type: string
member:
description: Required if `op`==`remove` or `op`==`preprovision`. Optional
if `op`==`add`
type: integer
vc_ports:
description: Required if `op`==`add` or `op`==`preprovision`
items:
type: string
type: array
vc_role:
description: Required if `op`==`add` or `op`==`preprovision`
enum:
- master
- backup
- linecard
type: string
title: virtual_chassis_member_update
type: object
type: array
new-member:
description: Only if `op`==`renumber`
type: integer
op:
enum:
- add
- remove
- renumber
- preprovision
type: string
type: object
vpn:
properties:
created_time:
type: integer
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: integer
name:
minLength: 1
type: string
org_id:
$ref: '#/components/schemas/org_id'
paths:
additionalProperties:
properties:
bfd_profile:
default: broadband
enum:
- broadband
- lte
title: vpn_path_bfd_profile
type: string
ip:
description: if different from the wan port
type: string
pod:
default: 1
example: 2
maximum: 128
minimum: 1
type: integer
type: object
title: vpn_path
type: object
required:
- name
- paths
type: object
vrf_extra_routes:
additionalProperties:
properties:
via:
description: Next-hop address
format: ipv4
type: string
type: object
description: Property key is the destination CIDR (e.g. "10.0.0.0/8")
example:
0.0.0.0/0:
via: 192.168.1.10
type: object
wantunnel_stats:
properties:
auth_algo:
description: authentication algorithm
type: string
encrypt_algo:
description: encryption algorithm
type: string
ike_version:
description: ike version
type: string
ip:
description: ip address
type: string
last_event:
description: reason of why the tunnel is down
type: string
mac:
description: router mac address
type: string
node:
description: node0/node1
type: string
org_id:
$ref: '#/components/schemas/org_id'
peer_host:
description: peer host
type: string
peer_ip:
description: peer ip address
type: string
priority:
enum:
- primary
- secondary
type: string
protocol:
enum:
- ipsec
- gre
title: wan_tunnel_protocol
type: string
rx_bytes:
type: integer
rx_pkts:
type: integer
site_id:
$ref: '#/components/schemas/site_id'
tunnel_name:
description: Mist Tunnel Name
type: string
tx_bytes:
type: integer
tx_pkts:
type: integer
up:
type: boolean
uptime:
description: duration from first (or last) SA was established
type: integer
wan_name:
description: wan interface name
example: wan
type: string
type: object
wayfinding_import_json:
oneOf:
- $ref: '#/components/schemas/map_jibestream'
- $ref: '#/components/schemas/map_micello'
webhook:
properties:
created_time:
readOnly: true
type: number
enabled:
default: true
description: whether webhook is enabled
type: boolean
for_site:
readOnly: true
type: boolean
headers:
description: 'if `type`=`http-post`, additional custom HTTP headers to add
the headers name and value must be string, total bytes of headers name
and value must be less than 1000'
nullable: true
type: object
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
name:
description: name of the webhook
nullable: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
secret:
description: "only if `type`=`http-post`\nwhen `secret` is provided, two\
\ HTTP headers will be added:\n * X-Mist-Signature-v2: HMAC_SHA256(secret,\
\ body)\n * X-Mist-Signature: HMAC_SHA1(secret, body)"
nullable: true
type: string
site_id:
$ref: '#/components/schemas/site_id'
splunk_token:
description: 'required if `type`=`splunk`
If splunk_token is not defined for a type Splunk webhook, it will not
send, regardless if the webhook receiver is configured to accept it.'''
nullable: true
type: string
topics:
description: N.B. For org webhooks, only device-events/alarms/audits/client-join/client-sessions/nac-sessions/nac-events
topics are supported.
items:
enum:
- alarms
- audits
- client-info
- client-join
- client-latency
- client-sessions
- device-events
- device-updowns
- mxedge-events
- nac-accounting
- nac-events
- occupancy-alerts
- rssizone
- sdkclient-scan-data
- site-sle
- vbeacon
- zone
- location
- location-asset
- location-client
- location-sdk
- asset-raw
- asset-raw-rssi
- discovered-raw-rssi
- wifi-conn-raw
- wifi-unconn-raw
title: webhook_topic
type: string
type: array
type:
default: http-post
enum:
- http-post
- splunk
- google-pubsub
- aws-sns
title: webhook_type
type: string
url:
nullable: true
type: string
verify_cert:
default: true
description: when url uses HTTPS, whether to verify the certificate
type: boolean
type: object
webhook_alarms:
description: "**N.B.**: Fields like `aps`, `bssids`, `ssids` are event specific.\
\ They are relevant to this event type ( rogue-ap-detected). For a different\
\ event type, different fields may be sent. These don\u2019t contain all affected\
\ entities and are representative samples of entities (capped at 10). For\
\ marvis action related events, we expose `details` to include more event\
\ specific details.\n\nEvents specific fields for other alarm event type can\
\ be found with API https://api.mist.com/api/v1/const/alarm_defs, under \u201C\
fields\u201D array of /alarm_defs response object."
properties:
events:
description: list of events
items:
properties:
aps:
items:
type: string
readOnly: true
type: array
bssids:
items:
type: string
readOnly: true
type: array
count:
description: If present, represents number of events of given type
occurred in current interval, default=1
readOnly: true
type: integer
event_id:
description: event id
format: uuid
readOnly: true
type: string
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
last_seen:
readOnly: true
type: number
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
ssids:
items:
type: string
readOnly: true
type: array
timestamp:
readOnly: true
type: integer
type:
description: event type
readOnly: true
type: string
update:
description: If presents, represents that this is an update to event
with given id sent earlier. default=false
readOnly: true
type: boolean
required:
- id
- last_seen
- org_id
- site_id
- timestamp
- type
title: webhook_alarm_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: alarms
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_asset_raw:
description: asset raw webhook sample
properties:
events:
description: list of events
items:
properties:
asset_id:
description: asset id
format: uuid
type: string
beam:
description: antenna index, from 1-8, clock-wise starting from the
LED
type: integer
device_id:
description: device where the asset reading is from
format: uuid
type: string
ibeacon_major:
description: iBeacon major
type: integer
ibeacon_minor:
description: iBeacon minor
type: integer
ibeacon_uuid:
description: iBeacon UUID
format: uuid
type: string
mac:
description: MAC of the beacon
type: string
map_id:
description: map id
format: uuid
type: string
mfg_company_id:
description: optional, BLE manufacturing company ID
type: number
mfg_data:
description: "optional, BLE manufacturing data in hex byte-string\
\ format (ie: \u201C112233AABBCC\u201D)"
type: string
rssi:
description: signal strength
type: number
service_data_data:
description: optional, data from service data
type: string
service_data_last_rx_time:
description: optional, last data transmit time from service data
type: integer
service_data_rx_cnt:
description: optional, data transmit count from service data
type: integer
service_data_uuid:
description: optional, UUID from service data
format: uuid
type: string
service_packets:
$ref: '#/components/schemas/service_packets'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: number
required:
- asset_id
- beam
- device_id
- mac
- map_id
- mfg_company_id
- mfg_data
- rssi
- site_id
- timestamp
title: webhook_asset_raw_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: asset-raw
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_audits:
description: audit webhook sample
properties:
events:
items:
properties:
admin_name:
type: string
device_id:
format: uuid
type: string
id:
format: uuid
type: string
message:
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
src_ip:
type: string
timestamp:
type: number
required:
- admin_name
- device_id
- id
- message
- org_id
- site_id
- src_ip
- timestamp
title: webhook_audit_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: audits
type: string
required:
- events
- topic
type: object
webhook_client_info:
properties:
events:
items:
properties:
ip:
description: IP address of client
type: string
mac:
description: "the client\u2019s mac"
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
description: time at which IP address was assigned E.g. 1703003956
type: number
title: webhook_client_info_event
type: object
type: array
topic:
enum:
- client-info
type: string
type: object
webhook_client_join:
description: client join webhook sample
properties:
events:
items:
properties:
ap:
description: mac address of the AP the client connected to
type: string
ap_name:
description: user-friendly name of the AP the client connected to.
type: string
band:
description: 5GHz or 2.4GHz band
type: string
bssid:
type: string
connect:
description: time when the user connects
type: integer
connect_float:
description: floating point connect timestamp with millisecond precision
type: number
mac:
description: "the client\u2019s mac"
type: string
org_id:
$ref: '#/components/schemas/org_id'
rssi:
description: RSSI when the client associated
type: number
site_id:
$ref: '#/components/schemas/site_id'
site_name:
type: string
ssid:
description: ESSID
type: string
timestamp:
type: number
version:
description: schema version of this message
type: number
wlan_id:
format: uuid
type: string
required:
- ap
- ap_name
- band
- bssid
- connect
- connect_float
- mac
- org_id
- rssi
- site_id
- site_name
- ssid
- timestamp
- version
- wlan_id
title: webhook_client_join_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: client-join
type: string
required:
- events
- topic
type: object
webhook_client_latency:
properties:
events:
items:
properties:
avg_auth:
example: 0.17170219
type: number
avg_dhcp:
example: 0.017828934
type: number
avg_dns:
example: 0.024532124
type: number
max_auth:
example: 0.18170219
type: number
max_dhcp:
example: 0.027828934
type: number
max_dns:
example: 0.022532124
type: number
min_auth:
example: 0.16050219
type: number
min_dhcp:
example: 0.015828934
type: number
min_dns:
example: 0.029532124
type: number
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
example: 1696401600
type: integer
title: webhook_client_latency_event
type: object
type: array
topic:
example: client-latency
type: string
type: object
webhook_client_sessions:
description: client session webhook sample
properties:
events:
items:
properties:
ap:
description: mac address of the AP the client roamed or disconnected
from
type: string
ap_name:
description: user-friendly name of the AP the client roamed or disconnected
from.
type: string
band:
description: 5GHz or 2.4GHz band
type: string
bssid:
type: string
client_family:
description: "device family E.g. \u201CMac\u201D, \u201CiPhone\u201D\
, \u201CApple watch\u201D"
type: string
client_manufacture:
description: "device manufacturer E.g. \u201CApple\u201D"
type: string
client_model:
description: "device model E.g. \u201C8+\u201D, \u201CXS\u201D"
type: string
client_os:
description: "device operating system E.g. \u201CMojave\u201D, \u201C\
Windows 10\u201D, \u201CLinux\u201D"
type: string
connect:
description: time when the user connects
type: integer
connect_float:
description: floating point connect timestamp with millisecond precision
type: number
disconnect:
description: time when the user disconnects
type: integer
disconnect_float:
description: floating point disconnect timestamp with millisecond
precision
type: number
duration:
description: the duration of the roamed or complete session indicated
by termination_reason field.
type: integer
mac:
description: "the client\u2019s mac"
type: string
next_ap:
description: the AP the client has roamed to.
type: string
org_id:
$ref: '#/components/schemas/org_id'
rssi:
description: latest average RSSI before the user disconnects
type: number
site_id:
$ref: '#/components/schemas/site_id'
site_name:
type: string
ssid:
type: string
termination_reason:
description: 1 disassociate - when the client disassociates. 2 inactive
- when the client is timeout. 3 roamed - when the client is roamed
between APs
type: integer
timestamp:
type: number
version:
description: schema version of this message
type: number
wlan_id:
format: uuid
type: string
required:
- ap
- ap_name
- band
- bssid
- client_family
- client_manufacture
- client_model
- client_os
- connect
- connect_float
- disconnect
- disconnect_float
- duration
- mac
- next_ap
- org_id
- rssi
- site_id
- site_name
- ssid
- termination_reason
- timestamp
- version
- wlan_id
title: webhook_client_sessions_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: client-sessions
type: string
required:
- events
- topic
type: object
webhook_delivery:
properties:
error:
description: error message, if there is one
type: string
id:
description: delivery ID
example: 55b0f02f-ebf6-4ad2-8b10-200508a97581
format: uuid
type: string
org_id:
$ref: '#/components/schemas/org_id'
req_headers:
description: HTTP request headers
example: '{"Content-Type":["application/json"],"User-Agent":["Mist-webhook"]}'
type: string
req_payload:
description: HTTP request payload
example: '{"topic":"audits","events":[{"admin_name":"John Doe john.doe@juniper.net","after":"{\"radio_config\":
{\"band_24\": {\"disabled\": false, \"allow_rrm_disable\": false, \"power_min\":
null, \"power_max\": null, \"power\": 10, \"preamble\": \"short\", \"channels\":
[1, 10], \"bandwidth\": 20}}}","before":"{\"radio_config\": {\"band_24\":
{\"disabled\": false, \"allow_rrm_disable\": false, \"power_min\": 8,
\"power_max\": 18, \"power\": null, \"preamble\": \"long\", \"channels\":
[1, 10], \"bandwidth\": 20}}}","id":"737909a2-04ff-4aeb-b9da-cc924e74a4dd","message":"Update
Site Settings","org_id":"fc7e2967-e7ef-41e6-b007-1217713de05a","site_id":"256c3a35-9cb7-436e-bc6d-314972645d95","site_name":"Test
Site","src_ip":"1.2.3.4","timestamp":1685956576.923601,"user_agent":"Mozilla/5.0
(Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/112.0.0.0 Safari/537.36"}]}'
type: string
req_url:
description: HTTP request URL
example: http://example.com
type: string
resp_body:
description: HTTP response body
example: Ok
type: string
resp_headers:
description: HTTP response headers
type: string
site_id:
$ref: '#/components/schemas/site_id'
status:
$ref: '#/components/schemas/webhook_delivery_status'
status_code:
example: 200
type: integer
timestamp:
example: 1687962508.583656
type: number
topic:
$ref: '#/components/schemas/webhook_delivery_topic'
webhook_id:
example: 7a11b901-f719-4c91-8aef-deb8699a6364
format: uuid
type: string
type: object
webhook_delivery_status:
description: webhook delivery status
enum:
- success
- failure
example: failure
type: string
webhook_delivery_topic:
description: webhook topic
enum:
- alarms
- audits
- device-updowns
- occupancy-alerts
- ping
example: audits
type: string
webhook_device_events:
description: device event webhook sample
properties:
events:
description: list of events
items:
properties:
ap:
description: (will be deprecated soon; please use mac instead) ap
mac
type: string
ap_name:
description: (will be deprecated soon; please use device_name instead)
ap name
type: string
audit_id:
description: (optional) audit id
format: uuid
type: string
device_name:
description: device name
type: string
device_type:
enum:
- ap
- switch
- gateway
type: string
ev_type:
description: (optional) event advisory (notice/warn)
enum:
- notice
- warn
type: string
mac:
description: device mac
type: string
org_id:
$ref: '#/components/schemas/org_id'
reason:
description: (optional) event reason
type: string
site_id:
$ref: '#/components/schemas/site_id'
site_name:
description: site name
type: string
text:
description: (optional) event description
type: string
timestamp:
description: time the event occurred e.g. 1565987313
type: integer
type:
description: event type
type: string
required:
- device_name
- device_type
- ev_type
- mac
- org_id
- timestamp
- type
title: webhook_device_event_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: device-events
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_device_updowns:
description: device up/down webhook sample
properties:
events:
items:
properties:
ap:
readOnly: true
type: string
ap_name:
readOnly: true
type: string
for_site:
readOnly: true
type: boolean
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
site_name:
readOnly: true
type: string
timestamp:
type: number
type:
readOnly: true
type: string
required:
- ap
- ap_name
- org_id
- site_id
- site_name
- timestamp
- type
title: webhook_device_updowns_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: device-updowns
type: string
required:
- events
- topic
type: object
webhook_discovered_raw_rssi:
properties:
events:
items:
properties:
ap_loc:
description: coordinates (if any) of reporting AP (updated once in
60s per client)
items:
type: number
type: array
beam:
description: antenna index, from 1-8, clock-wise starting from the
LED
type: integer
device_id:
description: device id of the reporting AP
format: uuid
type: string
ibeacon_major:
type: integer
ibeacon_minor:
type: integer
ibeacon_uuid:
format: uuid
type: string
is_asset:
type: boolean
mac:
description: MAC of the asset/ beacon
type: string
map_id:
format: uuid
type: string
mfg_company_id:
description: BLE manufacturing company ID
type: string
mfg_data:
description: "BLE manufacturing data in hex byte-string format (ie:\
\ \u201C112233AABBCC\u201D)"
type: string
org_id:
$ref: '#/components/schemas/org_id'
rssi:
description: signal strength
type: number
service_packets:
$ref: '#/components/schemas/service_packets'
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: integer
required:
- beam
- device_id
- mac
- map_id
- org_id
- rssi
- site_id
title: webhook_discovered_raw_rssi_event
type: object
type: array
topic:
type: string
required:
- topic
type: object
webhook_location:
description: location webhook sample
properties:
events:
description: list of events
items:
properties:
battery_voltage:
type: integer
eddystone_uid_instance:
type: string
eddystone_uid_namespace:
type: string
eddystone_url_url:
type: string
ibeacon_major:
type: integer
ibeacon_minor:
type: integer
ibeacon_uuid:
format: uuid
type: string
id:
description: unique id of the client (a client would have different
id for different org)
format: uuid
type: string
mac:
type: string
map_id:
description: map id
format: uuid
type: string
mfg_company_id:
description: optional, BLE manufacturing company ID
type: integer
mfg_data:
description: optional, BLE manufacturing data in hex byte-string format
(ie "112233AABBCC")
type: string
name:
description: name of the client, may be empty
type: string
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
description: timestamp of the event, epoch
type: integer
type:
type: string
wifi_beacon_extended_info:
description: optional, list of extended beacon info packets heard
from the client, frame and sequence control included with the payload
items:
properties:
frame_ctrl:
description: frame control field of 802.11 header
type: integer
payload:
description: Extended Info Payload associated with frame
type: string
seq_ctrl:
description: sequence control field of 802.11 header
type: integer
type: object
type: array
x:
description: x, in meter
type: integer
y:
description: y, in meter
type: integer
required:
- id
- map_id
- site_id
- timestamp
- type
- x
- y
title: webhook_location_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: location
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_location_asset:
description: Location Asset sample
properties:
events:
description: list of events
items:
properties:
battery_voltage:
example: 3370
type: integer
eddystone_uid_instance:
example: 5c5b35000001
type: string
eddystone_uid_namespace:
example: 2818e3868dec25629ede
type: string
eddystone_url_url:
example: https://www.abc.com
type: string
ibeacon_major:
example: 13
type: integer
ibeacon_minor:
example: 138
type: integer
ibeacon_uuid:
example: f3f17139-704a-f03a-2786-0400279e37c3
format: uuid
type: string
mac:
example: 7fc2936fd243
type: string
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
mfg_company_id:
description: optional, BLE manufacturing company ID
example: 935
type: integer
mfg_data:
description: "optional, BLE manufacturing data in hex byte-string\
\ format (ie: \u201C112233AABBCC\u201D)"
example: 648520a1020000
type: string
site_id:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
timestamp:
example: 1461220784
type: integer
type:
default: asset
type: string
x:
description: x, in meter
example: 13.5
type: number
y:
description: y, in meter
example: 3.2
type: number
topic:
default: location-asset
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_location_client:
description: Location Client sample
properties:
events:
description: list of events
items:
properties:
mac:
example: 5684dae9ac8b
type: string
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
site_id:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
timestamp:
example: 1461220784
type: integer
type:
default: wifi
type: string
wifi_beacon_extended_info:
description: optional, list of extended beacon info packets heard
from the client, frame and sequence control included with the payload
items:
properties:
frame_ctrl:
description: subfield of `wifi_beacon_extended_info`. frame
control field of 802.11 header
example: 776
type: integer
payload:
description: subfield of `wifi_beacon_extended_info`. Extended
Info Payload associated with frame
type: string
seq_ctrl:
description: subfield of `wifi_beacon_extended_info`. sequence
control field of 802.11 header
example: 776
type: integer
type: object
type: array
x:
description: x, in meter
example: 13.5
type: number
y:
description: y, in meter
example: 3.2
type: number
topic:
default: location-client
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_location_sdk:
description: Location SDK sample
properties:
events:
description: list of events
items:
properties:
id:
example: de87bf9d-183f-e383-cc68-6ba43947d403
format: uuid
type: string
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
name:
example: optional
type: string
site_id:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
timestamp:
example: 1461220784
type: integer
type:
default: sdk
type: string
x:
description: x, in meter
example: 13.5
type: number
y:
description: y, in meter
example: 3.2
type: number
topic:
default: location-sdk
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_location_unclient:
description: Location Unconnected Client sample
properties:
events:
description: list of events
items:
properties:
mac:
example: 5684dae9ac8b
type: string
map_id:
example: 845a23bf-bed9-e43c-4c86-6fa474be7ae5
format: uuid
type: string
site_id:
example: 4ac1dcf4-9d8b-7211-65c4-057819f0862b
format: uuid
type: string
timestamp:
example: 1461220784
type: integer
type:
default: wifi
type: string
wifi_beacon_extended_info:
description: optional, list of extended beacon info packets heard
from the client, frame and sequence control included with the payload
items:
properties:
frame_ctrl:
description: subfield of `wifi_beacon_extended_info`. frame
control field of 802.11 header
example: 776
type: integer
payload:
description: subfield of `wifi_beacon_extended_info`. Extended
Info Payload associated with frame
type: string
seq_ctrl:
description: subfield of `wifi_beacon_extended_info`. sequence
control field of 802.11 header
example: 776
type: integer
type: object
type: array
x:
description: x, in meter
example: 13.5
type: number
y:
description: y, in meter
example: 3.2
type: number
topic:
default: location-unclient
description: topic subscribed to
type: string
required:
- events
- topic
type: object
webhook_nac_accounting:
description: nac-accounting webhook sample
properties:
events:
items:
properties:
ap:
description: mac address of the AP the client roamed or disconnected
from
example: 5c5b355005be
type: string
auth_type:
description: radius authentication type
example: eap-tls
type: string
bssid:
description: "it\u2019s the MAC physical address of the access point"
example: 5c5b35546bb4
type: string
client_ip:
description: IP Address of client
example: 172.16.87.4
type: string
client_type:
description: "client type E.g. \u201Cwired\u201D, \u201Cwireless\u201D\
, \u201Cvty\u201D"
example: wireless
type: string
mac:
description: "the client\u2019s mac"
example: 6e795836d5f9
type: string
nas_vendor:
description: "NAS Device vendor name E.g. \u201CJuniper\u201D, \u201C\
Cisco\u201D"
example: juniper-mist
type: string
org_id:
$ref: '#/components/schemas/org_id'
rx_pkts:
description: number of packets received
example: 9523
type: integer
site_id:
$ref: '#/components/schemas/site_id'
ssid:
description: ESSID
example: Test-CMR SSID
type: string
timestamp:
description: sampling time (in epoch)
example: 1547235620.89
type: number
tx_pkts:
description: number of packets sent
example: 5233
type: integer
type:
description: "type of event. E.g. \u201CACCOUNTING_START\u201D, \u201C\
ACCOUNTING_UPDATE\u201D, \u201CACCOUNTING_STOP\u201D"
example: NAC_ACCOUNTING_STOP
type: string
username:
description: username authenticated with
example: hi
type: string
title: webhook_nac_accounting_event
type: object
type: array
topic:
default: nac-accounting
type: string
type: object
webhook_nac_events:
properties:
events:
items:
properties:
ap:
description: random mac
example: 5c5b35513227
type: string
auth_type:
description: authentication type, e.g. "eap-tls", "eap-ttls", "eap-teap",
"mab", "device-auth"
example: 802.1X
type: string
bssid:
description: BSSID
example: 5c5b355fafcc
type: string
dryrun_nacrule_id:
description: NAC Policy Dry Run Rule ID, if present and matched
example: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264012
format: uuid
type: string
dryrun_nacrule_matched:
description: True - if dryrun rule present and matched with priority,
False - if not matched or not present
type: boolean
idp_id:
description: SSO ID, if present and used
example: 912ef72e-2239-4996-b81e-469e87a27cd6
format: uuid
type: string
idp_role:
description: IDP returned roles/groups for the user
example:
- itsuperusers
- vip
items:
type: string
type: array
mac:
description: MAC address
example: ac3eb179e535
type: string
nacrule_id:
description: NAC Policy Rule ID, if matched
example: 32f27e7d-ff26-4a9b-b3d1-ff9bcb264c62
format: uuid
type: string
nacrule_matched:
description: NAC Policy Rule Matched
type: boolean
nas_vendor:
description: vendor of NAS device
example: juniper-mist
type: string
org_id:
$ref: '#/components/schemas/org_id'
random_mac:
description: AP MAC
type: boolean
resp_attrs:
description: Radius attributes returned by NAC to NAS Devive
example:
- Tunnel-Type=VLAN
- Tunnel-Medium-Type=IEEE-802
- Tunnel-Private-Group-Id=750
- User-Name=anonymous
items:
type: string
type: array
site_id:
description: site id if assigned, null if not assigned
example: 441a1214-6928-442a-8e92-e1d34b8ec6a6
format: uuid
type: string
ssid:
description: SSID
example: '##mist_nac'
type: string
timestamp:
description: start time, in epoch
example: 1691512031.358188
type: number
type:
description: event type, e.g. NAC_CLIENT_PERMIT
example: NAC_CLIENT_PERMIT
type: string
username:
description: Username presented by the client
example: user@deaflyz.net
type: string
vlan:
description: Vlan ID
example: '750'
type: string
title: webhook_nac_events_event
type: object
type: array
topic:
default: nac-events
type: string
type: object
webhook_occupancy_alerts:
description: occupancy alert webhook sample
properties:
events:
items:
properties:
alert_events:
description: list of occupancy alerts for non-compliance zones within
the site detected around the same time
items:
properties:
current_occupancy:
type: integer
map_id:
format: uuid
type: string
occupancy_limit:
type: integer
org_id:
$ref: '#/components/schemas/org_id'
timestamp:
type: number
type:
description: event type (COMPLIANCE-VIOLATION / COMPLIANCE-OK)
enum:
- COMPLIANCE-VIOLATION
- COMPLIANCE-OK
title: webhook_occupancy_alert_type
type: string
zone_id:
format: uuid
type: string
zone_name:
type: string
required:
- current_occupancy
- map_id
- occupancy_limit
- org_id
- timestamp
- type
- zone_id
- zone_name
type: object
minItems: 1
readOnly: true
type: array
uniqueItems: true
for_site:
readOnly: true
type: boolean
site_id:
$ref: '#/components/schemas/site_id'
site_name:
readOnly: true
type: string
required:
- site_id
- site_name
title: webhook_occupancy_alerts_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: occupancy-alerts
type: string
required:
- events
- topic
type: object
webhook_ping:
description: ping webhook
properties:
events:
items:
properties:
id:
format: uuid
type: string
name:
type: string
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
type: number
required:
- id
- name
- site_id
- timestamp
title: webhook_ping_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: ping
type: string
required:
- events
- topic
type: object
webhook_sdkclient-scan-data:
properties:
events:
items:
properties:
connection_ap:
description: mac address of the AP the client is connected to
minLength: 1
type: string
connection_band:
description: 5GHz or 2.4GHz band, of the BSSID the client is connected
to
minLength: 1
type: string
connection_bssid:
description: BSSID of the AP the client is connected to
minLength: 1
type: string
connection_channel:
description: channel of the band the client is connected to
type: integer
connection_rssi:
description: "RSSI of the client\u2019s connection to the AP/BSSID"
type: number
last_seen:
description: time client last seen with scan data
type: number
mac:
description: "the client\u2019s mac"
minLength: 1
type: string
scan_data:
items:
properties:
ap:
description: mac address of the AP associated with the BSSID
scanned
minLength: 1
type: string
band:
description: 5GHz or 2.4GHz band, associated with the BSSID
scanned
enum:
- '2.4'
- '5'
minLength: 1
type: string
bssid:
description: "BSSID found during client\u2019s background scan\
\ for wifi"
minLength: 1
type: string
channel:
description: channel of the band found in the scan
type: integer
rssi:
description: "client\u2019s RSSI relative to the BSSID scanned"
type: number
ssid:
description: ESSID containing the BSSID scanned
minLength: 1
type: string
timestamp:
description: time the scan of the particular BSSID occurred
type: number
required:
- ap
- bssid
- band
- channel
- rssi
- ssid
- timestamp
type: object
minItems: 1
type: array
uniqueItems: true
site_id:
$ref: '#/components/schemas/site_id'
required:
- connection_ap
- connection_band
- connection_channel
- connection_bssid
- mac
- connection_rssi
- site_id
- last_seen
title: webhook_sdkclient-scan-data_event
type: object
minItems: 1
readOnly: true
type: array
uniqueItems: true
topic:
default: sdkclient-scan-data
enum:
- sdkclient-scan-data
minLength: 1
type: string
required:
- topic
- events
type: object
webhook_site_sle:
properties:
events:
items:
properties:
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
sle:
properties:
ap-availability:
example: 0.6
type: number
successful-connect:
example: 0.7
type: number
time-to-connect:
example: 0.9
type: number
title: webhook_site_sle_event_sle
type: object
timestamp:
example: 1694620800
type: integer
title: webhook_site_sle_event
type: object
type: array
topic:
example: site-sle
type: string
type: object
webhook_zone:
description: zone webhook sample
properties:
events:
description: list of events
items:
properties:
asset_id:
description: uuid of named asset
format: uuid
type: string
id:
description: uuid of SDK-client
format: uuid
type: string
mac:
description: mac address of wifi client or asset
type: string
map_id:
description: map id
format: uuid
type: string
name:
description: name of the client, may be empty
type: string
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
description: timestamp of the event, epoch
type: integer
trigger:
description: enter / exit
enum:
- enter
- exit
type: string
type:
type: string
zone_id:
description: zone id
format: uuid
type: string
required:
- id
- map_id
- site_id
- timestamp
- trigger
- type
- zone_id
title: webhook_zone_event
type: object
minItems: 1
type: array
uniqueItems: true
topic:
default: zone
description: topic subscribed to
type: string
required:
- events
- topic
type: object
wired_client.response:
properties:
device_mac:
items:
readOnly: true
type: string
readOnly: true
type: array
device_mac_port:
items:
properties:
device_mac:
minLength: 1
type: string
ip:
readOnly: true
type: string
port_id:
readOnly: true
type: string
port_parent:
type: string
start:
readOnly: true
type: string
vlan:
readOnly: true
type: integer
when:
readOnly: true
type: string
readOnly: true
type: object
minItems: 1
readOnly: true
type: array
uniqueItems: true
ip:
items:
readOnly: true
type: string
readOnly: true
type: array
mac:
readOnly: true
type: string
org_id:
$ref: '#/components/schemas/org_id'
port_id:
items:
readOnly: true
type: string
readOnly: true
type: array
site_id:
$ref: '#/components/schemas/site_id'
timestamp:
readOnly: true
type: number
vlan:
items:
readOnly: true
type: integer
readOnly: true
type: array
type: object
wlan:
description: 'WLAN
**Note**: portal_template will be forked out of wlan objects soon. To fetch
portal_template, please query portal_template_url. To update portal_template,
use Wlan Portal Template.'
properties:
acct_immediate_update:
default: false
description: enable coa-immediate-update and address-change-immediate-update
on the access profile.
type: boolean
acct_interim_interval:
default: 0
description: how frequently should interim accounting be reported, 60-65535.
default is 0 (use one specified in Access-Accept request from RADIUS Server).
Very frequent messages can affect the performance of the radius server,
600 and up is recommended when enabled
example: 0
maximum: 65535
minimum: 0
type: integer
acct_servers:
description: list of RADIUS accounting servers, optional, order matters
where the first one is treated as primary
items:
$ref: '#/components/schemas/radius_acct_server'
type: array
airwatch:
$ref: '#/components/schemas/wlan_airwatch'
allow_ipv6_ndp:
default: true
description: only applicable when limit_bcast==true, which allows or disallows
ipv6 Neighbor Discovery packets to go through
type: boolean
allow_mdns:
default: false
description: only applicable when limit_bcast==true, which allows mDNS /
Bonjour packets to go through
type: boolean
allow_ssdp:
default: false
description: only applicable when `limit_bcast`==`tru`e, which allows SSDP
type: boolean
ap_ids:
description: list of device ids
items:
format: uuid
type: string
nullable: true
type: array
app_limit:
description: bandwidth limiting for apps (applies to up/down)
properties:
apps:
additionalProperties:
type: integer
description: "Map from app key to bandwidth in kbps. \nProperty key\
\ is the app key, defined in Get Application List"
example:
dropbox: 300
netflix: 60
type: object
enabled:
default: false
type: boolean
wxtag_ids:
additionalProperties:
type: integer
description: 'Map from wxtag_id of Hostname Wxlan Tags to bandwidth
in kbps
Property key is the wxtag id'
example:
f99862d9-2726-931f-7559-3dfdf5d070d3: 30
type: object
title: wlan_app_limit
type: object
app_qos:
$ref: '#/components/schemas/wlan_app_qos'
apply_to:
enum:
- site
- wxtags
- aps
title: wlan_apply_to
type: string
arp_filter:
default: false
description: whether to enable smart arp filter
type: boolean
auth:
$ref: '#/components/schemas/wlan_auth'
auth_server_selection:
default: ordered
description: When ordered, AP will prefer and go back to the first server
if possible
enum:
- ordered
- unordered
example: ordered
title: wlan_auth_server_selection
type: string
auth_servers:
description: list of RADIUS authentication servers, at least one is needed
if `auth type`==`eap`, order matters where the first one is treated as
primary
items:
$ref: '#/components/schemas/radius_auth_server'
type: array
auth_servers_nas_id:
description: optional, up to 48 bytes, will be dynamically generated if
not provided. used only for authentication servers
example: 5c5b350e0101-nas
nullable: true
type: string
auth_servers_nas_ip:
description: optional, NAS-IP-ADDRESS to use
example: 15.3.1.5
nullable: true
type: string
auth_servers_retries:
default: 2
description: "radius auth session retries. Following fast timers are set\
\ if \u201Cfast_dot1x_timers\u201D knob is enabled. \u2018retries\u2019\
\ are set to value of auth_servers_retries. \u2018max-requests\u2019 is\
\ also set when setting auth_servers_retries and is set to default value\
\ to 3."
example: 5
type: integer
auth_servers_timeout:
default: 5
description: "radius auth session timeout. Following fast timers are set\
\ if \u201Cfast_dot1x_timers\u201D knob is enabled. \u2018quite-period\u2019\
\ and \u2018transmit-period\u2019 are set to half the value of auth_servers_timeout.\
\ \u2018supplicant-timeout\u2019 is also set when setting auth_servers_timeout\
\ and is set to default value of 10."
type: integer
band:
deprecated: true
description: '`band` is deprecated and kept for backward compability. Use
bands instead'
type: string
band_steer:
default: false
description: whether to enable band_steering, this works only when band==both
type: boolean
band_steer_force_band5:
default: false
description: force dual-band capable client to connect to 5G
type: boolean
bands:
default:
- '24'
- '5'
description: list of radios that the wlan should apply to
items:
$ref: '#/components/schemas/dot11_band'
type: array
block_blacklist_clients:
default: false
description: whether to block the clients in the blacklist (up to first
256 macs)
type: boolean
bonjour:
$ref: '#/components/schemas/wlan_bonjour'
cisco_cwa:
$ref: '#/components/schemas/wlan_cisco_cwa'
client_limit_down:
description: kbps
type: integer
client_limit_down_enabled:
default: false
description: if downlink limiting per-client is enabled
type: boolean
client_limit_up:
description: kbps
type: integer
client_limit_up_enabled:
default: false
description: if uplink limiting per-client is enabled
type: boolean
coa_servers:
$ref: '#/components/schemas/coa_servers'
created_time:
readOnly: true
type: number
disable_11ax:
default: false
description: some old WLAN drivers may not be compatible
type: boolean
disable_ht_vht_rates:
default: false
description: to disable ht or vht rates
type: boolean
disable_uapsd:
default: false
description: whether to disable U-APSD
type: boolean
disable_v1_roam_notify:
default: false
description: disable sending v2 roam notification messages
type: boolean
disable_v2_roam_notify:
default: false
description: disable sending v2 roam notification messages
type: boolean
disable_wmm:
default: false
description: whether to disable WMM
type: boolean
dns_server_rewrite:
description: for radius_group-based DNS server (rewrite DNS request depending
on the Group RADIUS server returns)
nullable: true
properties:
enabled:
default: false
type: boolean
radius_groups:
additionalProperties:
type: string
description: 'map between radius_group and the desired DNS server (IPv4
only)
Property key is the RADIUS group, property value is the desired DNS
Server'
example:
contractor: 172.1.1.1
guest: 8.8.8.8
type: object
type: object
dtim:
default: 2
type: integer
dynamic_psk:
description: 'for dynamic PSK where we get per-user PSK from Radius
dynamic_psk allows PSK to be selected at runtime depending on context
(wlan/site/user/...) thus following configurations are assumed (currently)
- PSK will come from RADIUS server
- AP sends client MAC as username ans password (i.e. `enable_mac_auth`
is assumed)
- AP sends BSSID:SSID as Caller-Station-ID
- `auth_servers` is required
- PSK will come from cloud WLC if source is cloud_psks
- default_psk will be used if cloud WLC is not available
- `multi_psk_only` and `psk` is ignored
- `pairwise` can only be wpa2-ccmp (for now, wpa3 support on the roadmap)'
nullable: true
properties:
default_psk:
description: default PSK to use if cloud WLC is not available, 8-63
characters
example: foryoureyesonly
maxLength: 63
minLength: 8
type: string
default_vlan_id:
example: 999
nullable: true
type: integer
enabled:
default: false
type: boolean
force_lookup:
default: false
description: 'when 11r is enabled, we''ll try to use the cached PMK,
this can be disabled
`false` means auto'
type: boolean
source:
default: radius
enum:
- radius
- cloud_psks
example: cloud_psks
title: dynamic_psk_source
type: string
vlan_ids:
items:
maximum: 4094
minimum: 1
nullable: true
type: integer
type: array
type: object
dynamic_vlan:
description: for 802.1x
nullable: true
properties:
default_vlan_id:
default: 999
description: "vlan_id to use when there\u2019s no match from RADIUS"
example: 999
maximum: 4094
minimum: 1
nullable: true
type: integer
enabled:
default: false
description: whether to enable dynamic vlan
type: boolean
local_vlan_ids:
description: vlan_ids to be locally bridged
items:
maximum: 4094
minimum: 1
nullable: true
type: integer
type: array
type:
default: standard
description: standard (using Tunnel-Private-Group-ID, widely supported),
airespace-interface-name (Airespace/Cisco)
enum:
- standard
- airespace-interface-name
example: airespace-interface-name
title: wlan_dynamic_vlan_type
type: string
vlans:
additionalProperties:
type: string
description: "map between vlan_id (as string) to airespace interface\
\ names (comma-separated) or null for stndard mapping\n * if `dynamic_vlan.type`==`standard`,\
\ property key is the Vlan ID and property value is \"\"\n * if `dynamic_vlan.type`==`airespace-interface-name`,\
\ property key is the Vlan ID and property value is the Airespace\
\ Interface Name"
example:
'131': default
'322': fast,video
type: object
title: wlan_dynamic_vlan
type: object
enable_local_keycaching:
default: false
description: enable AP-AP keycaching via multicast
type: boolean
enable_wireless_bridging:
default: false
description: by default, we'd inspect all DHCP packets and drop those unrelated
to the wireless client itself in the case where client is a wireless bridge
(DHCP packets for other MACs will need to be orwarded), wireless_bridging
can be enabled
type: boolean
enable_wireless_bridging_dhcp_tracking:
default: false
description: if the client bridge is doing DHCP on behalf of other devices
(L2-NAT), enable dhcp_tracking will cut down DHCP response packets to
be forwarded to wireless
type: boolean
enabled:
default: true
description: if this wlan is enabled
type: boolean
fast_dot1x_timers:
default: false
description: "if set to true, sets default fast-timers with values calculated\
\ from \u2018auth_servers_timeout\u2019 and \u2018auth_server_retries\u2019\
."
type: boolean
for_site:
readOnly: true
type: boolean
hide_ssid:
default: false
description: whether to hide SSID in beacon
type: boolean
hostname_ie:
default: false
description: include hostname inside IE in AP beacons / probe responses
type: boolean
hotspot20:
$ref: '#/components/schemas/wlan_hotspot_20'
id:
format: uuid
readOnly: true
type: string
inject_dhcp_option_82:
properties:
circuit_id:
example: '{{SSID}}:{{AP_MAC}}'
type: string
enabled:
default: false
description: whether to inject option 82 when forwarding DHCP packets
type: boolean
type: object
interface:
default: all
description: where this WLAN will be connected to
enum:
- all
- eth0
- eth1
- eth2
- eth3
- wxtunnel
- mxtunnel
- site_mxedge
example: all
title: wlan_interface
type: string
isolation:
default: false
description: whether to stop clients to talk to each other
type: boolean
l2_isolation:
default: false
description: if isolation is enabled, whether to deny clients to talk to
L2 on the LAN
type: boolean
legacy_overds:
default: false
description: "legacy devices requires the Over-DS (for Fast BSS Transition)\
\ bit set (while our chip doesn\u2019t support it). Warning! Enabling\
\ this will cause problem for iOS devices."
type: boolean
limit_bcast:
default: false
description: whether to limit broadcast packets going to wireless (i.e.
only allow certain bcast packets to go through)
type: boolean
limit_probe_response:
description: limit probe response base on some heuristic rules
type: boolean
max_idletime:
default: 1800
description: max idle time in seconds
example: 1800
maximum: 86400
minimum: 60
type: integer
mist_nac:
$ref: '#/components/schemas/wlan_mist_nac'
modified_time:
readOnly: true
type: number
msp_id:
format: uuid
readOnly: true
type: string
mxtunnel:
description: when `interface`=`site_medge`, the definition of the Mist Tunnels
(key is the name)
type: object
mxtunnel_id:
deprecated: true
description: (deprecated, use mxtunnel_ids instead) when `interface`==`mxtunnel`,
id of the Mist Tunnel
format: uuid
type: string
mxtunnel_ids:
description: when `interface`=`mxtunnel`, id of the Mist Tunnel
format: uuid
items:
example: 08cd7499-5841-51c8-e663-fb16b6f3b45e
type: string
type: array
mxtunnel_name:
description: when `interface`=`site_medge`, name of the mxtunnel that in
mxtunnels under Site Setting
items:
default: default
example: default
type: string
type: array
no_static_dns:
default: false
description: "whether to only allow client to use DNS that we\u2019ve learned\
\ from DHCP response"
type: boolean
no_static_ip:
default: false
description: "whether to only allow client that we\u2019ve learned from\
\ DHCP exchange to talk"
type: boolean
org_id:
$ref: '#/components/schemas/org_id'
portal:
$ref: '#/components/schemas/wlan_portal'
portal_allowed_hostnames:
description: list of hostnames without http(s):// (matched by substring)
example:
- snapchat.com
- ibm.com
items:
type: string
type: array
portal_allowed_subnets:
description: list of CIDRs
example:
- 63.5.3.0/24
items:
type: string
type: array
portal_api_secret:
description: api secret (auto-generated) that can be used to sign guest
authorization requests
example: EIfPMOykI3lMlDdNPub2WcbqT6dNOtWwmYHAd6bY
nullable: true
type: string
portal_denied_hostnames:
description: list of hostnames without http(s):// (matched by substring),
this takes precedence over portal_allowed_hostnames
example:
- msg.snapchat.com
items:
type: string
type: array
portal_image:
description: Url of portal background image
format: uri
nullable: true
type: string
portal_sso_url:
nullable: true
type: string
portal_template_url:
description: N.B portal_template will be forked out of wlan objects soon.
To fetch portal_template, please query portal_template_url. To update
portal_template, use Wlan Portal Template.
nullable: true
readOnly: true
type: string
qos:
properties:
class:
default: best_effort
enum:
- background
- best_effort
- video
- voice
example: best_effort
type: string
overwrite:
default: false
description: whether to overwrite QoS
type: boolean
type: object
radsec:
$ref: '#/components/schemas/radsec'
rateset:
properties:
'24':
$ref: '#/components/schemas/wlan_datarates'
'5':
$ref: '#/components/schemas/wlan_datarates'
type: object
roam_mode:
default: none
enum:
- none
- NONE
- OKC
- 11r
example: none
type: string
schedule:
description: WLAN operating schedule, default is disabled
properties:
enabled:
default: false
type: boolean
hours:
additionalProperties:
type: string
description: "Property keyis mon / tue / wed / thu / fri / sat / sun\n\
Property value is time range in \u201CHH:MM-HH:MM\u201D (24-hour format),\
\ the minimum resolution is 30 minute is the 3 letters\
\ week day (\"mon\", \"tue\", ...)"
example:
fri: 09:00-17:00
mon: 09:00-17:00
type: object
type: object
site_id:
$ref: '#/components/schemas/site_id'
sle_excluded:
default: false
description: whether to exclude this WLAN from SLE metrics
type: boolean
ssid:
description: the name of the SSID
example: corporate
type: string
template_id:
format: uuid
nullable: true
type: string
thumbnail:
description: Url of portal background image thumbnail
format: uri
nullable: true
type: string
use_eapol_v1:
default: false
description: "if `auth.type`==\u2019eap\u2019 or \u2018psk\u2019, should\
\ only be set for legacy client, such as pre-2004, 802.11b devices"
type: boolean
vlan_enabled:
default: false
description: if vlan tagging is enabled
type: boolean
vlan_id:
maximum: 4094
minimum: 1
nullable: true
type: integer
vlan_ids:
description: "vlan_ids to use when there\u2019s no match from RA"
example:
- 3
- 4
- 5
items:
default: 999
maximum: 4094
minimum: 1
nullable: true
type: integer
type: array
vlan_pooling:
default: false
description: vlan pooling allows AP to place client on different VLAN using
a deterministic algorithm
type: boolean
wlan_limit_down:
description: kbps
type: integer
wlan_limit_down_enabled:
default: false
description: if downlink limiting for whole wlan is enabled
type: boolean
wlan_limit_up:
description: kbps
type: integer
wlan_limit_up_enabled:
default: false
description: if uplink limiting for whole wlan is enabled
type: boolean
wxtag_ids:
description: list of wxtag_ids
items:
format: uuid
type: string
nullable: true
type: array
wxtunnel_id:
description: when `interface`=`wxtunnel`, id of the WXLAN Tunnel
nullable: true
type: string
wxtunnel_remote_id:
description: when `interface`=`wxtunnel`, remote tunnel identifier
nullable: true
type: string
required:
- ssid
type: object
wlan_airwatch:
description: airwatch wlan settings
properties:
api_key:
description: API Key
example: aHhlbGxvYXNkZmFzZGZhc2Rmc2RmCg=="
type: string
console_url:
description: console URL
example: https://hs1.airwatchportals.com
type: string
enabled:
type: boolean
password:
description: password
example: user1
type: string
username:
description: username
example: test123
type: string
type: object
wlan_app_qos:
description: app qos wlan settings
properties:
apps:
additionalProperties:
properties:
dscp:
type: integer
dst_subnet:
description: subnet filter is not required but helps AP to only inspect
certain traffic (thus reducing AP load)
type: string
src_subnet:
description: subnet filter is not required but helps AP to only inspect
certain traffic (thus reducing AP load)
type: string
type: object
example:
skype-business-video:
dscp: 32
dst_subnet: 10.2.0.0/16
src_subnet: 10.2.0.0/16
type: object
enabled:
type: boolean
others:
items:
properties:
dscp:
example: 32
type: integer
dst_subnet:
example: 10.2.0.0/16
type: string
port_ranges:
example: 80,1024-6553
type: string
protocol:
example: udp
type: string
src_subnet:
example: 10.2.0.0/16
type: string
type: object
minItems: 1
type: array
uniqueItems: true
type: object
wlan_auth:
description: authentication wlan settings
properties:
anticlog_threshold:
default: 16
description: SAE anti-clogging token threshold
example: 16
maximum: 32
minimum: 16
type: integer
eap_reauth:
default: false
description: whether to trigger EAP reauth when the session ends
type: boolean
enable_mac_auth:
default: false
description: whether to enable MAC Auth, uses the same auth_servers
type: boolean
key_idx:
default: 1
description: when type=wep
maximum: 4
minimum: 1
type: integer
keys:
description: when type=wep, four 10-character or 26-character hex string,
null can be used. All keys, if provided, have to be in the same length
items:
nullable: true
type: string
type: array
multi_psk_only:
default: false
description: whether to only use multi_psk
type: boolean
owe:
type: string
pairwise:
default:
- wpa2-ccmp
description: when type=psk / eap, one or more of wpa2-ccmp / wpa1-tkip /
wpa1-ccmp / wpa2-tkip
items:
enum:
- wpa1-ccmp
- wpa2-tkip
- wpa1-tkip
- wpa2-ccmp
- wpa3
example: wpa3
nullable: true
type: string
title: wlan_auth_pairwise
type: array
private_wlan:
description: whether private wlan is enabled. only applicable to multi_psk
mode
type: boolean
psk:
description: when type=psk, 8-64 characters, or 64 hex characters
example: foryoureyesonly
maxLength: 64
minLength: 8
nullable: true
type: string
type:
default: open
enum:
- open
- psk
- wep
- eap
- eap192
- psk-tkip
- psk-wpa2-tkip
example: psk
title: wlan_auth_type
type: string
wep_as_secondary_auth:
description: enable WEP as secondary auth
type: boolean
required:
- type
type: object
wlan_bonjour:
description: bonjour gateway wlan settings
properties:
additional_vlan_ids:
description: additional VLAN IDs (on the LAN side or from other WLANs) should
we be forwarding bonjour queries/responses
items:
type: integer
type: array
enabled:
default: false
description: whether to enable bonjour for this WLAN. Once enabled, limit_bcast
is assumed true, allow_mdns is assumed false
type: boolean
services:
additionalProperties:
properties:
disable_local:
default: false
description: whether to prevent wireless clients to discover bonjour
devices on the same WLAN
type: boolean
radius_groups:
description: optional, if the service is further restricted for certain
RADIUS groups
items:
type: string
type: array
scope:
default: same_site
description: how bonjour services should be discovered for the same
WLAN
enum:
- same_site
- same_map
- same_ap
title: bonjour_scope
type: string
type: object
description: "what services are allowed. \nProperty key is the service name"
example:
airplay:
radius_groups:
- teachers
scope: same_ap
title: bonjour_service
type: object
required:
- services
- additional_vlan_ids
type: object
wlan_cisco_cwa:
description: 'Cisco CWA (central web authentication) required RADIUS with COA
in order to work. See CWA: https://www.cisco.com/c/en/us/support/docs/security/identity-services-engine/115732-central-web-auth-00.html'
properties:
allowed_hostnames:
description: list of hostnames without http(s):// (matched by substring)
items:
example: snapchat.com
type: string
type: array
allowed_subnets:
description: list of CIDRs
items:
example: 63.5.3.0/24
type: string
type: array
blocked_subnets:
description: list of blocked CIDRs
items:
example: 192.168.0.0/16
type: string
type: array
enabled:
default: false
type: boolean
type: object
wlan_datarates:
description: data rates wlan settings
properties:
ht:
description: MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is
least significant bit), e.g. 00ff 00f0 001f limits HT rates to MCS 0-7
for 1 stream, MCS 4-7 for 2 stream (i.e. MCS 12-15), MCS 1-5 for 3 stream
(i.e. MCS 16-20)
example: 00ff00ff00ff
nullable: true
type: string
legacy:
description: "list of supported rates (IE=1) and extended supported rates\
\ (IE=50) for custom template, append \u2018b\u2019 at the end to indicate\
\ a rate being basic/mandatory. If `template`==`custom` is configured\
\ and legacy does not define at least one basic rate, it will use `no-legacy`\
\ default values"
example:
- '6'
- '9'
- '12'
- '18'
- 24b
- '36'
- '48'
- '54'
items:
enum:
- '1'
- 1b
- '2'
- 2b
- '5.5'
- 5.5b
- '11'
- 11b
- '6'
- 6b
- '9'
- 9b
- '12'
- 12b
- '18'
- 18b
- '24'
- 24b
- '36'
- 36b
- '48'
- 48b
- '54'
- 54b
type: string
type: array
min_rssi:
description: Minimum RSSI for client to connect, 0 means not enforcing
example: -70
type: integer
template:
description: "* `no-legacy`: no 11b\n* `compatible`: all, like before, default\
\ setting that Broadcom/Atheros used\n* `legacy-only`: disable 802.11n\
\ and 802.11ac \n* `high-density`: no 11b, no low rates\n* `custom`: user\
\ defined"
nullable: true
type: string
vht:
description: MCS bitmasks for 4 streams (16-bit for each stream, MCS0 is
least significant bit), e.g. 03ff 01ff 00ff limits VHT rates to MCS 0-9
for 1 stream, MCS 0-8 for 2 streams, and MCS 0-7 for 3 streams.
example: 03ff03ff03ff01ff
type: string
type: object
wlan_hotspot_20:
description: hostspot 2.0 wlan settings
properties:
domain_name:
example:
- mist.com
items:
type: string
type: array
enabled:
description: whether to enable hotspot 2.0 config
type: boolean
nai_realms:
items:
type: string
type: array
operators:
description: list of operators to support
example:
- google
- att
items:
enum:
- ameriband
- att
- boingo
- charter
- eduroam
- global_reach
- google
- hughes_systique
- openroaming_legacy
- openroaming_settled
- openroaming_settlement_free
- single_digits
- tmobile
- verizon
type: string
type: array
rcoi:
example:
- 5A03BA0000
items:
type: string
type: array
venue_name:
description: venue name, default is site name
example: some_name
type: string
type: object
wlan_mist_nac:
properties:
enabled:
default: false
description: 'when enabled:
* `auth_servers` is ignored
* `acct_servers` is ignored
* `auth_servers_*` are ignored
* `coa_servers` is ignored
* `radsec` is ignored
* `coa_enabled` is assumed'
type: boolean
type: object
wlan_portal:
description: portal wlan settings
properties:
amazon_client_id:
description: amazon OAuth2 client id. This is optional. If not provided,
it will use a default one.
nullable: true
type: string
amazon_client_secret:
description: amazon OAuth2 client secret. If amazon_client_id was provided,
provide a correspoinding value. Else leave blank.
nullable: true
type: string
amazon_email_domains:
description: Matches authenticated user email against provided domains.
If null or [], all authenticated emails will be allowed.
items:
type: string
type: array
amazon_enabled:
default: false
description: whether amazon is enabled as a login method
type: boolean
amazon_expire:
default: null
description: interval for which guest remains authorized using amazon auth
(in minutes), if not provided, uses expire`
nullable: true
type: number
auth:
default: none
description: authentication scheme
enum:
- none
- external
- sso
example: none
title: wlan_portal_auth
type: string
azure_client_id:
description: 'Required if `azure_enabled`==`true`.
Azure active directory app client id'
nullable: true
type: string
azure_client_secret:
description: 'Required if `azure_enabled`==`true`.
Azure active directory app client secret'
nullable: true
type: string
azure_enabled:
default: false
description: whether Azure Active Directory is enabled as a login method
type: boolean
azure_expire:
default: null
description: interval for which guest remains authorized using azure auth
(in minutes), if not provided, uses expire`
nullable: true
type: number
azure_tenant_id:
description: 'Required if `azure_enabled`==`true`.
Azure active directory tenant id.'
nullable: true
type: string
broadnet_password:
description: when `sms_provider`==`broadnet`
example: password
type: string
broadnet_sid:
default: MIST
description: when `sms_provider`==`broadnet`
example: MIST
type: string
broadnet_user_id:
description: when `sms_provider`==`broadnet`
example: juniper
type: string
bypass_when_cloud_down:
default: false
description: whether to bypass the guest portal when cloud not reachable
(and apply the default policies)
type: boolean
clickatell_api_key:
description: when `sms_provider`==`clickatell`
type: string
cross_site:
default: false
description: whether to allow guest to roam between WLANs (with same `WLAN.ssid`,
regardless of variables) of different sites of same org without reauthentication
(disable random_mac for seamless roaming)
type: boolean
email_enabled:
description: whether email (access code verification) is enabled as a login
method
type: boolean
enabled:
default: false
description: whether guest portal is enabled
type: boolean
expire:
default: 1440
description: how long to remain authorized, in minutes
example: 1440
type: number
external_portal_url:
description: external portal URL (e.g. https://host/url) where we can append
our query parameters to
type: string
facebook_client_id:
description: 'Required if `facebook_enabled`==`true`.
Facebook OAuth2 app id. This is optional. If not provided, it will use
a default one.'
nullable: true
type: string
facebook_client_secret:
description: 'Required if `facebook_enabled`==`true`.
Facebook OAuth2 app secret. If facebook_client_id was provided, provide
a correspoinding value. Else leave blank.'
nullable: true
type: string
facebook_email_domains:
description: Matches authenticated user email against provided domains.
If null or [], all authenticated emails will be allowed.
items:
type: string
type: array
facebook_enabled:
default: false
description: whether facebook is enabled as a login method
type: boolean
facebook_expire:
default: null
description: interval for which guest remains authorized using facebook
auth (in minutes), if not provided, uses expire`
nullable: true
type: number
forward:
default: false
description: whether to forward the user to another URL after authorized
type: boolean
forward_url:
description: the URL to forward the user to
example: http://abc.com/promotions
nullable: true
type: string
google_client_id:
description: Google OAuth2 app id. This is optional. If not provided, it
will use a default one.
nullable: true
type: string
google_client_secret:
description: Google OAuth2 app secret. If google_client_id was provided,
provide a correspoinding value. Else leave blank.
nullable: true
type: string
google_email_domains:
description: Matches authenticated user email against provided domains.
If null or [], all authenticated emails will be allowed.
example:
- mydomain.edu
- mydomain.org
items:
type: string
type: array
google_enabled:
default: false
description: whether google is enabled as login method
type: boolean
google_expire:
default: null
description: interval for which guest remains authorized using google auth
(in minutes), if not provided, uses expire`
nullable: true
type: number
gupshup_password:
description: when `sms_provider`==`gupshup`
type: string
gupshup_userid:
description: when `sms_provider`==`gupshup`
type: string
microsoft_client_id:
description: microsoft 365 OAuth2 client id. This is optional. If not provided,
it will use a default one.
nullable: true
type: string
microsoft_client_secret:
description: microsoft 365 OAuth2 client secret. If microsoft_client_id
was provided, provide a correspoinding value. Else leave blank.
nullable: true
type: string
microsoft_email_domains:
description: Matches authenticated user email against provided domains.
If null or [], all authenticated emails will be allowed.
items:
type: string
type: array
microsoft_enabled:
default: false
description: whether microsoft 365 is enabled as a login method
type: boolean
microsoft_expire:
default: null
description: interval for which guest remains authorized using microsoft
auth (in minutes), if not provided, uses expire`
nullable: true
type: number
passphrase_enabled:
default: false
description: whether password is enabled
type: boolean
passphrase_expire:
default: null
description: interval for which guest remains authorized using passphrase
auth (in minutes), if not provided, uses `expire`
nullable: true
type: number
password:
description: passphrase
example: let me in
nullable: true
type: string
portal_allowed_hostnames:
description: list of hostnames without http(s):// (matched by substring)
type: string
portal_allowed_subnets:
description: list of CIDRs
type: string
portal_api_secret:
description: api secret (auto-generated) that can be used to sign guest
authorization requests
type: string
portal_denied_hostnames:
description: list of hostnames without http(s):// (matched by substring),
this takes precedence over portal_allowed_hostnames
type: string
portal_image:
description: Url of portal background image
example: https://url/to/image.png
type: string
portal_sso_url:
description: for SAML, this is used as the ACS URL
type: string
predefined_sponsors_enabled:
default: true
description: whether to show list of sponsor emails mentioned in `sponsors`
object as a dropdown. If both `sponsor_notify_all` and `predefined_sponsors_enabled`
are false, behaviour is acc to `sponsor_email_domains`
type: boolean
privacy:
default: true
type: boolean
puzzel_password:
description: when `sms_provider`==`puzzel`
type: string
puzzel_service_id:
description: when `sms_provider`==`puzzel`
type: string
puzzel_username:
description: when `sms_provider`==`puzzel`
type: string
smsMessageFormat:
type: string
sms_enabled:
default: false
description: whether sms is enabled as a login method
type: boolean
sms_expire:
default: null
description: interval for which guest remains authorized using sms auth
(in minutes), if not provided, uses expire`
nullable: true
type: number
sms_provider:
default: manual
enum:
- manual
- twilio
- broadnet
- clickatell
- puzzel
- gupshup
- telstra
example: twilio
type: string
sponsor_auto_approve:
default: false
description: whether to automatically approve guest and allow sponsor to
revoke guest access, needs predefined_sponsors_enabled enabled and sponsor_notify_all
disabled
type: boolean
sponsor_email_domains:
description: list of domain allowed for sponsor email. Required if `sponsor_enabled`
is `true` and `sponsors` is empty.
example:
- reserved.net
- reserved.org
items:
type: string
type: array
sponsor_enabled:
default: false
description: whether sponsor is enabled
type: boolean
sponsor_expire:
default: null
description: interval for which guest remains authorized using sponsor auth
(in minutes), if not provided, uses expire`
nullable: true
type: number
sponsor_link_validity_duration:
default: 60
description: how long to remain valid sponsored guest request approve/deny
link received in email, in minutes.
example: 30
type: integer
sponsor_notify_all:
default: false
description: whether to notify all sponsors that are mentioned in `sponsors`
object. Both `sponsor_notify_all` and `predefined_sponsors_enabled` should
be true in order to notify sponsors. If true, email sent to 10 sponsors
in no particular order.
type: boolean
sponsor_status_notify:
default: false
description: if enabled, guest will get email about sponsor's action (approve/deny)
type: boolean
sponsors:
additionalProperties:
type: string
description: 'object of allowed sponsors email with name. Required if `sponsor_enabled`
is `true` and `sponsor_email_domains` is empty.
Property key is the sponsor email, Property value is the sponsor name'
example:
sponsor1@company.com: FirstName1 LastName1
sponsor2@company.com: FirstName2 LastName2
type: object
sso_default_role:
description: "default role to assign if there\u2019s no match. By default,\
\ an assertion is treated as invalid when there\u2019s no role matched"
type: string
sso_forced_role:
type: string
sso_idp_cert:
description: IDP Cert (used to verify the signed response)
type: string
sso_idp_sign_algo:
description: signing algorithm for SAML Assertion
type: string
sso_idp_sso_url:
description: IDP Single-Sign-On URL
type: string
sso_issuer:
description: IDP issuer URL
type: string
sso_nameid_format:
default: email
enum:
- email
- unspecified
type: string
telstra_client_id:
description: when `sms_provider`==`telstra`, Client ID provided by Telstra
type: string
telstra_client_secret:
description: when `sms_provider`==`telstra`, Client secret provided by Telstra
type: string
thumbnail:
description: Url of portal background image thumbnail
type: string
twilio_auth_token:
description: when `sms_provider`==`twilio`, Auth token account with twilio
account
example: af9dac44c344a875ab5d31cb7abcdefg
nullable: true
type: string
twilio_phone_number:
description: when `sms_provider`==`twilio`, Twilio phone number associated
with the account. See example for accepted format.
example: '+18548888888'
nullable: true
type: string
twilio_sid:
description: when `sms_provider`==`twilio`, Account SID provided by Twilio
example: AC72ec6ba0ec5af30e6731c5e47abcdefgh
nullable: true
type: string
type: object
wlan_portal_template:
description: portal template wlan settings
properties:
accessCodeAlternateEmail:
description: "\u201CPlease provide valid alternate email\u201D"
type: string
alignment:
description: "defines alignment on portal. \u201Cleft\u201D is default."
type: string
authButtonAmazon:
description: label for Amazon auth button
type: string
authButtonAzure:
description: label for Azure auth button
type: string
authButtonEmail:
description: label for Email auth button
type: string
authButtonFacebook:
description: label for Facebook auth button
type: string
authButtonGoogle:
description: label for Google auth button
type: string
authButtonMicrosoft:
description: label for Microsoft auth button
type: string
authButtonPassphrase:
description: label for passphrase auth button
type: string
authButtonSms:
description: label for SMS auth button
type: string
authButtonSponsor:
description: label for Sponsor auth button
type: string
authLabel:
description: "\u201CConnect to WiFi with\u201D"
type: string
backLink:
description: label of the link to go back to /logon
type: string
color:
description: "\u201C#1074bc\u201D"
type: string
colorDark:
description: "\u201C#0b5183\u201D"
type: string
colorLight:
description: "\u201C#3589c6\u201D"
type: string
company:
default: false
description: whether company field is required
type: boolean
companyError:
description: error message when company not provided
type: string
companyLabel:
description: label of company field
type: string
email:
default: false
description: whether email field is required
type: boolean
emailAccessDomainError:
description: "error message when a user has valid social login but doesn\u2019\
t match specified email domains."
type: string
emailCancel:
description: Label for cancel confirmation code submission using email auth
type: string
emailCodeCancel:
type: string
emailCodeError:
description: "\u201CPlease provide valid alternate email\u201D"
type: string
emailCodeFieldLabel:
description: "\u201CConfirmation Code\u201D"
type: string
emailCodeMessage:
description: "\u201CEnter the access number that was sent to your email\
\ address.\u201D"
type: string
emailCodeSubmit:
description: "\u201CSign In"
type: string
emailCodeTitle:
description: "\u201CAccess Code\u201D"
type: string
emailError:
description: error message when email not provided
type: string
emailFieldLabel:
description: "\u201CEnter your email address\u201D"
type: string
emailLabel:
description: label of email field
type: string
emailMessage:
description: "\u201CWe will email you an authentication code which you can\
\ use to connect to the WiFi network.\u201D"
type: string
emailSubmit:
description: Label for confirmation code submit button using email auth
type: string
emailTitle:
description: "\u201CSign in with Email\u201D"
type: string
field1:
description: whether to ask field1
type: boolean
field1Error:
description: error message when field1 not provided
type: string
field1Label:
description: label of field1
type: string
field1Required:
description: whether field1 is required field
type: boolean
field2:
description: whether to ask field2
type: boolean
field2Error:
description: error message when field2 not provided
type: string
field2Label:
description: label of field2
type: string
field2Required:
description: whether field2 is required field
type: boolean
field3:
description: whether to ask field3
type: boolean
field3Error:
description: error message when field3 not provided
type: string
field3Label:
description: label of field3
type: string
field3Required:
description: whether field3 is required field
type: boolean
field4:
description: whether to ask field4
type: boolean
field4Error:
description: error message when field4 not provided
type: string
field4Label:
description: label of field4
type: string
field4Required:
description: whether field4 is required field
type: boolean
message:
description: "\u201CPlease enjoy the complimentary Wifi\u201D"
type: string
name:
default: false
description: whether name field is required
type: boolean
nameError:
description: error message when name not provided
type: string
nameLabel:
description: label of name field
type: string
optout:
default: false
description: "whether to display \u201CDo Not Store My Personal Information\u201D"
type: boolean
optoutDefault:
default: true
description: Default value for the \"Do not store\" checkbox"
type: boolean
optoutLabel:
default: Do not store
description: "label for \u201CDo Not Store My Personal Information\u201D"
type: string
pageTitle:
description: "\u201CWelcome\u201D"
type: string
passphraseCancel:
description: "\u201CCancel\u201D"
type: string
passphraseError:
description: error message when invalid passphrase is provided
type: string
passphraseLabel:
description: Passphrase
type: string
passphraseMessage:
description: "\u201CLogin using passphrase\u201D"
type: string
passphraseSubmit:
description: "\u201CSign in\u201D"
type: string
passphraseTitle:
description: Title for passphrase details page
type: string
poweredBy:
default: true
description: "whether to show \u201CPowered by Mist\u201D"
type: boolean
requiredFieldLabel:
description: label to denote required field
type: string
signInLabel:
description: label of the button to /signin
type: string
smsCarrierDefault:
description: "\u201CPlease Select\u201D"
type: string
smsCarrierError:
description: "\u201CPlease select a mobile carrier\u201D"
type: string
smsCarrierFieldLabel:
description: label for mobile carrier drop-down list
type: string
smsCodeCancel:
description: Label for cancel confirmation code submission
type: string
smsCodeError:
description: error message when confirmation code is invalid
type: string
smsCodeFieldLabel:
description: "\u201CConfirmation Code\u201D"
type: string
smsCodeMessage:
description: "\u201CEnter the confirmation code\u201D"
type: string
smsCodeSubmit:
description: Label for confirmation code submit button
type: string
smsCodeTitle:
description: "\u201CAccess Code\u201D"
type: string
smsCountryFieldLabel:
description: "\u201CCountry Code\u201D"
type: string
smsCountryFormat:
description: "\u201C+1\u201D"
type: string
smsHaveAccessCode:
description: Label for checkbox to specify that the user has access code
type: string
smsMessageFormat:
description: format of access code sms message. {{code}} and {{duration}}
are place holders and should be retained as is.
type: string
smsNumberCancel:
description: label for canceling mobile details for SMS auth
type: string
smsNumberError:
description: "\u201CInvalid Mobile Number\u201D"
type: string
smsNumberFieldLabel:
description: label for field to provide mobile number
type: string
smsNumberFormat:
description: "\u201C2125551212 (digits only)\u201D"
type: string
smsNumberMessage:
description: "\u201CWe will send an access code to your mobile number which\
\ you can use to connect to the WiFi network. Message and data rates may\
\ apply.\u201D"
type: string
smsNumberSubmit:
description: label for submit button for code generation
type: string
smsNumberTitle:
description: Title for phone number details
type: string
smsUsernameFormat:
description: "\u201Cusername\u201D"
type: string
smsValidityDuration:
description: how long confirmation code should be considered valid (in minutes)
type: integer
sponsorBackLink:
description: "\u201CGo back and edit request form\u201D"
type: string
sponsorCancel:
description: "\u201CCancel\u201D"
type: string
sponsorEmail:
description: label for Sponsor Email
type: string
sponsorEmailError:
description: "\u201CPlease provide valid sponsor email\u201D"
type: string
sponsorEmailTemplate:
description: "html template to replace/override default sponsor email template\n\
\nSponsor Email Template supports following template variables: \n * `approve_url`:\
\ Renders URL to approve the request; optionally &minutes=N query param\
\ can be appended to change the Authorization period of the guest, where\
\ N is a valid integer denoting number of minutes a guest remains authorized\n\
\ * `deny_url`: Renders URL to reject the request\n * `guest_email`: Renders\
\ Email ID of the guest\n * `guest_name`: Renders Name of the guest\n\
\ * `field1`: Renders value of the Custom Field 1\n * `field2`: Renders\
\ value of the Custom Field 2\n * `sponsor_link_validity_duration`: Renders\
\ validity time of the request (i.e. Approve/Deny URL)\n * `auth_expire_minutes`:\
\ Renders Wlan-level configured Guest Authorization Expiration time period\
\ (in minutes), If not configured then default (1 day in minutes)\n"
type: string
sponsorInfoApproved:
description: "\u201CYour request was approved by\u201D"
type: string
sponsorInfoDenied:
description: "\u201CYour request was denied by\u201D"
type: string
sponsorInfoPending:
description: "\u201CYour notification has been sent to\u201D"
type: string
sponsorName:
description: label for Sponsor Name
type: string
sponsorNameError:
description: "\u201CPlease provide sponsor\u2019s name\u201D"
type: string
sponsorNotePending:
description: "\u201CPlease wait for them to acknowledge.\u201D"
type: string
sponsorRequestAccess:
description: "\u2018submit button label request Wifi Access and notify sponsor\
\ about guest request"
type: string
sponsorSelectEmail:
description: "\u201CSelect Sponsor\u201D"
type: string
sponsorStatusApproved:
description: text to display if sponsor approves request
type: string
sponsorStatusDenied:
description: text to display when sponsor denies request
type: string
sponsorStatusPending:
description: text to display if request is still pending
type: string
sponsorSubmit:
description: submit button label to notify sponsor about guest request
type: string
sponsorsError:
description: "\u201CPlease select a sponsor\u201D"
type: string
sponsorsInfoApproved:
description: "\u201CYour request was approved\u201D"
type: string
sponsorsInfoDenied:
description: "\u201CYour request was denied\u201D"
type: string
sponsorsInfoPending:
description: "\u201CYour notification has been sent to the sponsors\u201D"
type: string
tos:
default: true
type: boolean
tosAcceptLabel:
description: prefix of the label of the link to go to /tos
type: string
tosError:
description: error message when tos not accepted
type: string
tosLink:
description: label of the link to go to /tos
type: string
tosText:
description: text of the Terms of Service
type: string
required:
- pageTitle
type: object
wxlan_rule:
description: WXlan
properties:
action:
description: type of action, allow / block
enum:
- allow
- block
example: allow
title: wxlan_rule_action
type: string
apply_tags:
items:
example: c049dfcd-0c73-5014-1c64-062e9903f1e5
type: string
type: array
blocked_apps:
description: blocked apps (always blocking, ignoring action), the key of
Get Application List
example:
- mist
- all-videos
items:
type: string
type: array
created_time:
readOnly: true
type: number
dst_allow_wxtags:
description: tag list to indicate these tags are allowed access
example:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
items:
type: string
type: array
dst_deny_wxtags:
description: tag list to indicate these tags are blocked access
example:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
items:
type: string
type: array
enabled:
default: true
type: boolean
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
modified_time:
readOnly: true
type: number
order:
description: the order how rules would be looked up, > 0 and bigger order
got matched first, -1 means LAST, uniqueness not checked
example: 1
minimum: 1
type: number
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
src_wxtags:
description: tag list to determine if this rule would match
example:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
items:
type: string
type: array
required:
- order
- src_wxtags
type: object
wxlan_tag:
description: "WxLAN Tag\n* type:\n** client: created manually (e.g. on wireless\
\ client table, when they spot a device of interest, they can create a wxlan\
\ tag for it\n** resource: created automatically when we discover a network\
\ resource\n** subnet: create automatically when a subnet is discovered\n\n\
* match:\n** wlan_id, ap_id: values are a list of Wlan / Device ids\n** client_mac:\
\ values are a list of MAC addresses\n\n* radius_group: this is a smart tag\
\ that matches RADIUS-Filter-ID, Airespace-ACL-Name (VendorID=14179, VendorType=6)\
\ / Aruba-User-Role (VendorID=14823, VendorType=1)\n* radius_username: this\
\ matches the ATTR-User-Name(1)\n* radius_class: thie matches the ATTR-Class(25)\n\
* radius_attr: the values are [ \u201C6=1\u201D, \u201C26=10.2.3.4\u201D ],\
\ this support other RADIUS attributes where we know the type\n* radius_vendor:\
\ the values are [ \u201C14179.10=1\u201D, \u201C14178.16=1.2.3.4\u201D ],\
\ this matches vendor attributes and will be dynamically evaluated"
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
last_ips:
items:
type: string
type: array
mac:
nullable: true
type: string
match:
enum:
- ap_id
- app
- asset_mac
- client_mac
- hostname
- ip_range_subnet
- port
- radius_attr
- radius_group
- radius_username
- wlan_id
- psk_name
- psk_role
title: wxlan_tag_match
type: string
modified_time:
readOnly: true
type: number
name:
description: The name
type: string
op:
default: in
enum:
- in
- not_in
title: wxlan_tag_operation
type: string
org_id:
$ref: '#/components/schemas/org_id'
resource_mac:
nullable: true
type: string
services:
items:
type: string
type: array
site_id:
$ref: '#/components/schemas/site_id'
specs:
description: if `type`==`specs`
items:
properties:
port_range:
default: '0'
description: matched dst port, "0" means any
type: string
protocol:
default: any
description: tcp / udp / icmp / gre / any / ":protocol_number", `protocol_number`
is between 1-254
type: string
subnets:
default:
- 0.0.0.0/0
description: matched dst subnet
items:
type: string
type: array
title: wxlan_tag_spec
type: object
type: array
subnet:
type: string
type:
enum:
- match
- client
- resource
- subnet
- spec
- vlan
title: wxlan_tag_type
type: string
values:
description: if `type`!=`vlan_id` and `type`!=`specs`, list of values to
match
items:
type: string
type: array
vlan_id:
description: if `type`==`vlan_id`
example: 1055
type: integer
required:
- type
- name
type: object
wxlan_tunnel:
description: WxLAn Tunnel
properties:
created_time:
readOnly: true
type: number
dmvpn:
description: Dynamic Multipoint VPN configurations
properties:
enabled:
default: false
description: whether DMVPN is enabled
type: boolean
holding_time:
description: "optional; the holding time for NHRP \u2018registration\
\ requests\u2019 and \u2018resolution replies\u2019 sent from the\
\ Mist AP (in seconds); default 600"
type: integer
host_routes:
description: optional; list of IPv4 DMVPN peer host ip-addresses to
which traffic is forwarded
items:
type: string
type: array
type: object
for_mgmt:
default: false
description: determined during creation time and cannot be toggled. A management
tunnel cannot be used by wxlan rule or by wlan
type: boolean
for_site:
readOnly: true
type: boolean
hello_interval:
default: 60
description: in seconds, used as heartbeat to detect if a tunnel is alive.
AP will try another peer after missing N hellos specified by hello_retries.
maximum: 300
minimum: 1
type: integer
hello_retries:
default: 7
maximum: 30
minimum: 2
type: integer
hostname:
description: "optional, overwrite the hostname in SCCRQ control message,\
\ default is \u201C\u201D or null, %H and %M can be used, which will be\
\ replace with corresponding values:\n* %H: name of the ap if provided\
\ (and will be stripped so it can be used for hostname) and fallbacks\
\ to MAC\n* %M: MAC (e.g. 5c5b350e0060)"
type: string
id:
format: uuid
readOnly: true
type: string
ipsec:
description: IPSec-related configurations; requires DMVPN be enabled
properties:
enabled:
default: false
description: whether ipsec is enabled, requires DMVPN be enabled
type: boolean
psk:
description: ipsec pre-shared key
type: string
required:
- psk
type: object
is_static:
default: false
description: "whether it\u2019s static/unmanaged (i.e. no control session).\
\ As the session configurations are not compatible, cannot be toggled."
type: boolean
modified_time:
readOnly: true
type: number
mtu:
default: 0
description: 0 to enable PMTU, 552-1500 to start PMTU with a lower MTU
maximum: 1500
minimum: 0
type: integer
name:
description: The name of the tunnel
type: string
org_id:
$ref: '#/components/schemas/org_id'
peers:
description: "list of remote peers\u2019 IP or hostname"
items:
type: string
type: array
router_id:
description: "optional, overwrite the router-id in SCCRQ control message,\
\ default is \u201C0\u201D or null, can also be an IPv4 address"
type: string
secret:
description: "secret, \u2018\u2019 if no auth is used"
type: string
sessions:
description: sessions to be established with the tunnel. Has to be >= 1
in order for this tunnel to be useful. For management tunnel, it can only
have 1
items:
properties:
ap_as_session_id:
description: if `use_ap_as_session_ids`==`true`, only apmac is supported
right now. This is the name WLAN should use for wxtunnel_remote_id
type: string
comment:
description: optional, user-specified string for display purpose
type: string
enable_cookie:
type: boolean
ethertype:
enum:
- ethernet
- vlan
type: string
local_session_id:
description: 1-4294967295
maximum: 4294967295
minimum: 1
type: integer
pseudo_802.1ad_enabled:
default: false
description: "optional. Enables the pseudo 802.1ad QinQ mode where\
\ the AP device drops the outer vlan tag (QinQ). This mode is useful\
\ when tunneling Mist AP\u2019s to some aggregation routers."
type: boolean
remote_id:
description: remote-id of the session, has to be unique in the same
tunnel
type: string
remote_session_id:
description: 1-4294967295
maximum: 4294967295
minimum: 1
type: integer
use_ap_as_session_ids:
default: false
description: whether to use AP (last 4 bytes of MAC currently) as
session ids
type: boolean
title: wxlan_tunnel_sessio
type: object
minItems: 1
type: array
uniqueItems: true
site_id:
$ref: '#/components/schemas/site_id'
udp_port:
description: udp port if `use_udp`==`true`
type: integer
use_udp:
default: false
description: whether to use UDP instead of IP (proto=115, which is default
of L2TPv3)
type: boolean
required:
- name
type: object
wxrule_stats:
description: Wxrule statistics
properties:
action:
enum:
- allow
- block
example: allow
type: string
client_mac:
example:
- 3bbbf819bb6f
- bd96cbc4910f
items:
type: string
type: array
dst_allow_wxtags:
example:
- fff34466-eec0-3756-6765-381c728a6037
- eee2c7b0-d1d0-5a30-f349-e35fa43dc3b3
items:
format: uuid
type: string
type: array
dst_deny_wxtags:
example:
- aaa34466-eec0-3756-6765-381c728a6037
- bbb2c7b0-d1d0-5a30-f349-e35fa43dc3b3
items:
format: uuid
type: string
type: array
dst_wxtags:
example:
- d4134466-eec0-3756-6765-381c728a6037
- 1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3
items:
format: uuid
type: string
type: array
name:
example: Guest
type: string
order:
example: 1
type: integer
src_wxtags:
example:
- 8bfc2490-d726-3587-038d-cb2e71bd2330
- 3aa8e73f-9f46-d827-8d6a-567bb7e67fc9
items:
format: uuid
type: string
type: array
usage:
additionalProperties:
properties:
num_flows:
type: integer
type: object
example:
1a42c7b0-d1d0-5a30-f349-e35fa43dc3b3:
num_flows: 60
d4134466-eec0-3756-6765-381c728a6037:
num_flows: 60
title: wxrule_stats_usage
type: object
required:
- name
- order
- src_wxtags
- dst_wxtags
- dst_allow_wxtags
- dst_deny_wxtags
- client_mac
- usage
- action
type: object
wxtag_client:
properties:
mac:
example: 5684dae9ac8b
type: string
since:
example: 1428939600
type: number
required:
- mac
- since
type: object
wxtag_clients:
items:
$ref: '#/components/schemas/wxtag_client'
minItems: 1
type: array
uniqueItems: true
zone:
description: Zone
properties:
created_time:
readOnly: true
type: number
for_site:
readOnly: true
type: boolean
id:
format: uuid
readOnly: true
type: string
map_id:
description: map where this zone is defined
format: uuid
type: string
modified_time:
readOnly: true
type: number
name:
description: The name of the zone
type: string
org_id:
$ref: '#/components/schemas/org_id'
site_id:
$ref: '#/components/schemas/site_id'
vertices:
$ref: '#/components/schemas/zone_vertices'
required:
- name
- map_id
- vertices
type: object
zone_stats:
description: Zone statistics
properties:
assets_waits:
description: ble asset wait time right now
properties:
avg:
description: average wait time in seconds
example: 0
type: number
max:
description: longest wait time in seconds
example: 0
type: number
min:
description: shortest wait time in seconds
example: 0
type: number
p95:
description: 95th percentile of all the wait time(s)
example: 0
type: number
type: object
clients_waits:
description: client wait time right now
properties:
avg:
description: average wait time in seconds
example: 1200
type: number
max:
description: longest wait time in seconds
example: 3610
type: number
min:
description: shortest wait time in seconds
example: 600
type: number
p95:
description: 95th percentile of all the wait time(s)
example: 2800
type: number
type: object
created_time:
example: 1616625211
type: integer
id:
description: id of the zone
example: 123470c7-5d9d-424a-8475-8b344c621234
format: uuid
type: string
map_id:
description: map_id of the zone
example: 123449d4-d12f-4feb-b40f-5be0e2ae1234
format: uuid
type: string
modified_time:
example: 1616625211
type: integer
name:
description: name of the zone
example: Zone A
type: string
num_assets:
description: number of assets
example: 0
type: integer
num_clients:
description: number of wifi clients (unconnected + connected)
example: 80
type: integer
num_sdkclients:
description: number of sdk clients
example: 10
type: integer
occupancy_limit:
example: 4
type: integer
org_id:
$ref: '#/components/schemas/org_id'
sdkclients_waits:
description: sdkclient wait time right now
properties:
avg:
description: average wait time in seconds
example: 1200
type: number
max:
description: longest wait time in seconds
example: 3610
type: number
min:
description: shortest wait time in seconds
example: 600
type: number
p95:
description: 95th percentile of all the wait time(s)
example: 2800
type: number
type: object
site_id:
$ref: '#/components/schemas/site_id'
vertices:
$ref: '#/components/schemas/zone_vertices'
vertices_m:
$ref: '#/components/schemas/zone_vertices_m'
required:
- id
- map_id
- name
type: object
zone_stats_details:
description: Zone details statistics
properties:
assets:
description: list of ble assets currently in the zone and when they entered
items:
example: df8dff06ae90
type: string
type: array
client_waits:
description: client wait time right now
properties:
avg:
description: average wait time in seconds
example: 1200
type: integer
max:
description: longest wait time in seconds
example: 3610
type: integer
min:
description: shortest wait time in seconds
example: 600
type: integer
p95:
description: 95th percentile of all the wait time(s)
example: 2800
type: integer
required:
- avg
- max
- min
- p95
type: object
clients:
description: list of clients currently in the zone and when they entered
items:
example: 5684dae9ac8b
type: string
type: array
id:
description: id of the zone
example: 8ac84899-32db-6327-334c-9b6d58544cfe
format: uuid
type: string
map_id:
description: map_id of the zone
example: 63eda950-c6da-11e4-a628-60f81dd250cc
format: uuid
type: string
name:
description: name of the zone
example: Board Room
type: string
num_clients:
example: 80
type: integer
num_sdkclients:
description: sdkclient wait time right now
example: 0
type: integer
sdkclients:
description: list of sdkclients currently in the zone and when they entered
items:
example: 7e2b463d-c91c-ff7d-f3c0-6eccc6949ff8
type: string
type: array
required:
- client_waits
- id
- map_id
- name
- num_clients
- num_sdkclients
type: object
zone_vertices:
description: "vertices used to define an area. It\u2019s assumed that the last\
\ point connects to the first point and forms an closed area"
example:
- x: 732
y: 1821
- x: 732.5
y: 1731
- x: 837.5
y: 1731.5
- x: 839
y: 1821
items:
properties:
x:
description: x in pixel
type: number
y:
description: y in pixel
type: number
required:
- x
- y
title: zone_vertex
type: object
uniqueItems: true
type: array
zone_vertices_m:
example:
- x: 24.1983341951072
y: 60.198314985369144
- x: 24.21486311190714
y: 57.22310996138056
- x: 27.685935639893827
y: 57.23963887818049
- x: 27.73552239029364
y: 60.198314985369144
items:
properties:
x:
description: x in pixel
type: number
y:
description: y in pixel
type: number
required:
- x
- y
title: zone_vertex_m
type: object
uniqueItems: true
type: array
securitySchemes:
apiToken:
description: "Like many other API providers, it\u2019s also possible to generate\
\ API Tokens to be used (in HTTP Header) for authentication. An API token\
\ ties to a Admin with equal or less privileges.\n\n**Format**:\n API Token\
\ value format is `Token {apitoken}`\n\n**Notes**:\n* an API token generated\
\ for a specific admin has the same privilege as the user\n* an API token\
\ will be automatically removed if not used for > 90 days\n* SSO admins cannot\
\ generate these API tokens. Refer Org level API tokens which can have privileges\
\ of a specific Org/Site for more information."
in: header
name: Authorization
type: apiKey
basicAuth:
description: "While our current UI uses Session / Cookie-based authentication,\
\ it\u2019s also possible to do Basic Auth."
scheme: basic
type: http
x-tagGroups:
- name: Login
tags:
- Login
- Login With OAuth2
- name: Self
tags:
- Self Account
- Self OAuth2
- Self MFA
- Self API Token
- Recover Password
- Self Alarms
- Self Audit Logs
- name: Sites
tags:
- Sites
- Sites Alarms
- Sites AP Templates
- Sites Applications
- Sites Anomaly
- Sites Asset Filters
- Sites Assets
- Sites Beacons
- Sites Calls
- Sites Clients - NAC
- Sites Clients - Wan
- Sites Clients - Wired
- Sites Clients - Wireless
- Sites Devices
- Sites Devices - Wireless
- Sites Devices - Wired
- Sites Devices - Wired Virtual Chassis
- Sites Devices - WAN Cluster
- Sites Devices Others
- Sites Devices Stats
- Sites Device Profiles
- Sites Events
- Sites EVPN Topologies
- Sites Gateway Templates
- Sites Guests
- Sites Insights
- Sites JSE
- Sites Licenses
- Sites Location
- Sites Maps
- Sites Maps Auto-orientation
- Sites Maps Auto-placement
- Sites MxEdges
- Sites Network Templates
- Sites Networks
- Sites Psks
- Sites Rfdiags
- Sites Rogues
- Sites RF Templates
- Sites RRM
- Sites RSSI Zones
- Sites Services
- Sites Service Policies
- Sites Setting
- Sites Site Templates
- Sites Skyatp
- Sites SLEs
- Sites Stats
- Synthetic Tests
- Sites UI Settings
- Sites vBeacons
- Sites VPNs
- Sites Webhooks
- Sites Wlans
- Sites WxRules
- Sites WxTags
- Sites WxTunnels
- Sites Zones
- name: Orgs
tags:
- Orgs
- Orgs 128T
- Orgs Admins
- Orgs Alarms
- Orgs Alarm Templates
- Orgs AP Templates
- Orgs API Tokens
- Orgs Assets
- Orgs Asset Filters
- Orgs Cert
- Orgs Clients - NAC
- Orgs Clients - Wan
- Orgs Clients - Wired
- Orgs Clients - Wireless
- Orgs Cradlepoint
- Orgs CRL
- Orgs Devices
- Orgs Devices - WAN Cluster
- Orgs Devices Others
- Orgs Devices Stats
- Utilities Upgrade
- Orgs Devices Zscaler
- Orgs Device Profiles
- Orgs EVPN Topologies
- Orgs Gateway Templates
- Orgs Guests
- Orgs IDP Profiles
- Orgs Inventory
- Orgs JSE
- Orgs JSI
- Orgs Licenses
- Orgs Linked Applications
- Orgs Logs
- Orgs Maps
- Orgs Marvis
- Orgs MxClusters
- Orgs MxEdges
- Orgs MxTunnels
- Orgs NAC CRL
- Orgs NAC Portals
- Orgs NAC Rules
- Orgs NAC Tags
- Orgs Network Templates
- Orgs Networks
- Orgs Premium Analytics
- Orgs Psks
- Orgs Psk Portals
- Orgs RF Templates
- Orgs SDK Clients
- Orgs SDK Invites
- Orgs SDK Templates
- Orgs SecPolicies
- Orgs Services
- Orgs Service Policies
- Orgs Setting
- Orgs Sitegroups
- Orgs Sites
- Orgs Site Templates
- Orgs SLEs
- Orgs SSO Roles
- Orgs SSO
- Orgs Stats
- Orgs Subscriptions
- Orgs WLAN Templates
- Orgs Tickets
- Orgs Tunnels Stats
- Orgs User MACs
- Orgs Vars
- Orgs VPNs
- Orgs Webhooks
- Orgs Wlans
- Orgs WxRules
- Orgs WxTags
- Orgs WxTunnels
- name: MSPs
tags:
- Msps
- Msps Admins
- Msps Inventory
- Msps Logo
- Msps Invites
- Msps Logs
- Msps Licenses
- Msps Marvis
- Msps Org Groups
- Msps Orgs
- Msps SLEs
- Msps SSO Roles
- Msps SSO
- Msps Stats
- Msps Tickets
- name: Utilities
tags:
- Utilities Common
- Utilities LAN
- Utilities Location
- Utilities MxEdge
- Utilities PCAPs
- Utilities Upgrade
- Utilities WAN
- Utilities Wi-Fi
- name: Installer
tags:
- Installer
- name: Webhook Samples
tags:
- Webhook Samples
- name: Constants
tags:
- Constants Definitions
- Constants Events
- Constants Models
- Constants Misc
- name: Others
tags:
- Admins
- Mobile